我们在享受互联网带来我们信息共享的同时也面临信息泄露的问题。只要你的个人信息曾经在网络上出现过,黑客都是可以找到。及时是普通人也可以通过搜索的方式找到你的个人信息。

今天我们就拿facebook注册的用户来举例说明,我是如何发现facebook注册用户手机号码的?

近期,曾通过链接重定向方法劫持川普Twitter的比利时黑客@securinti,发现了从Facebook查找注册用户手机号码的方法,我们一起来看看。以下是@securinti发表的博客:

上个月,我发现,通过Facebook可以轻而易举地获取到一些比利时名人和政治家的手机号码。

目前,尽管这种方法貌似只对像比利时这样只有1120万人左右的小国家有效,但这种简单而有效的方法,却会让很多人的用户隐私受到影响。

当我把这个情况向Facebook的安全团队报告之后,却得到了一个失望的回复,他们竟然认为这根本不是一个安全问题。

但我觉得用户隐私至上,所以,在此我就公开来谈谈这个问题。

我认为的问题

如果在Facebook设置中,其隐私一栏,其“谁可以通过手机查找到我”(Who can look you up using the phone number you provided?)是everyone状态,那么可能就能通过我的方法查找出你的手机号码。

这里存在两方面的问题:

首先,该选项的everyone状态是默认设置;

其次,即使你在个人资料中将手机号码设置为“个人可见”(Only me),但只要“Who can look you up using the phone number you provided?”是“everyone”状态,一样存在手机号码泄露问题。

“通过手机查找到我”本质上来说,是想查找你的人已经知道你的手机号码,而他可以通过你的手机号码查看到你的Facebook账户,但在这里的选项中,根本没有“only me”。

为了方便登录和找回密码,Facebook会不断地提醒用户绑定手机号码,但如果你的Facebook账号绑定了手机号码,那么你的手机号码可能就存在泄露隐患。

测试实现

在这里我需要用到的是Faceook在2013年推出的搜索引擎Graph Search,当你在搜索框中输入一个手机号码之后,可能就会得到一个相关用户:

这样的方式,如果手工测试的话,费时又麻烦,而且在执行了1000次左右的搜索之后,Facebook就会作出查询限制;当然,即使是用botnet方式,估计Facebook也会有相应限制措施。

为了验证,我以查找比利时内政部长Jan Jambon的手机号码为例进行测试。

STEP 1:使用密码重置功能排除手机号码最后两位(1分钟)

基于此,我必须找到一种批量测试电话号码的方法,测试的位数越少,获取的手机号码可能就越多,查找到目标的可能性也就越大。

所以,可以使用Facebook的密码重置功能排除掉手机号码最后两位:

STEP2:了解不同运营商手机号码格式(5-35分钟)

如04PPXXXX50,这就是一个典型的比利时手机号码,其中X为0-10的任意数字,PP为运营商代号号码。

而且,不同的电话运营商都有的固定的号段,如0468、047、048和049:

由于Proximus是比利时政府通讯业务的主要服务商,所以大部份政府部门雇员都使用047号段,所以我就专门写了个程序来枚举这个号段的目标号码,如有10000种号码组合的0479号段,以下是自动生成的号码表:

之后,向Facebook“好友查找”功能中导入以上生成的号码表进行查找,此时,找到了以”Jan”开头的大量用户,但他们都不是Jan Jambon。

(在出现的Facebook反馈结果中,会提示说:You have 500 file_upload contacts on…,可以不用管)

之后,以这种方法,在继续尝试了0479号段之后,终于发现了目标账户使用的运营商代号和号段:0477,现在的号码为:0477XXXX50,目标范围逐渐缩小,目标号码就在这剩下的10000种组合中。

STEP3: 缩小范围(10-15分钟)

最后,需要解决的就是一些简单的数学问题了,我们先测试10000种可能中的一半号码,即0477 0000 50 — 0477 5000 50,可以看出目标账户出现在这个范围中:

这意味着目标账户手机号码的第5位只可能是0,1,2,3,4中的一位,所以再继续使用半分测试法进行,先对0477 0000 50 – 0477 2500 50进行测试,可以看到目标账户未出现在这个区间:

那么,最后就剩下0477 2500 50 – 0477 5000 50区间了,使用之前的方法,继续在1250、750、325、162和81区间进行半分测试,一直可以测试到40个号码,20个号码,10个号码到最终的5个号码,之后,发现目标。

STEP4:发现目标账户和与其匹配的手机号码(1分钟)

其实如果最后剩下40个可能的号码,我们都可以手动进行验证

后记

我尝试着将这个问题告知了比利时内政部长Jan Jambon,而他表示并不知道Facebook泄露了他的手机号码,只要不存在滥用情况,他自己也不介意。

另外,我们还与一家当地电台合作,在直播中拨打了一位比利时知名人士的手机,并告知他我们可以通过Facebook找出他的手机号码,我们就此聊得非常愉快,之后他便从Facebook上删除了绑定的手机号码。

有人指出,利用PayPal可以发现用户的后四位手机号码,所以如果目标用户把PayPal和手机绑定的话,利用以上我的方法,可以发现很多国家受影响的用户个人手机号码。

有兴趣的话,可以自行尝试。

FAQ

这主要是什么问题?

由于Facebook隐私安全项“who can look me up by phone(通过手机号查找到我)”的默认设置为“everyone”,所以你的手机号码都会存在泄露风险。

对于一些小国家来说,由于移动运营商提供的手机号码段空间范围较小,所以通过Facebook来查找目标用户电话号码相对来说比较容易。

Facebook在个人资料中提供的将手机号码设置为“only me”(对自己可见)”其实并没有什么用。

哪些人会受到影响?

一些小国家绑定了手机号码的Facebook用户,如果没有修改默认的隐私设置,可能会受此问题影响。如果目标手机号码低于十位数,而通信运营商号段范围空间较小,以上测试方法就容易实现。

如何知道自己是否受到影响?

点击这里,检查“who can look me up by phone(通过手机号码查找到我)”查看设置,如果设置成了“Everyone”则受此影响。

如果受到影响应该如何设置?

这是一个很矛盾的问题,因为双因素身份验证功能需要用到手机号码,而目前这也算是一种比较安全的账户防护措施,所以可行的方法还是将“who can look me up by phone(通过手机号码查找到我)”设置为“only friends“(仅对好友可见)。

*参考来源:hackernoon,FB小编clouds编译,转载请注明来自FreeBuf.COM.

拿到FaceBook注册用户的手机号有多简单?看这篇文章就够了。相关推荐

  1. 关于用户画像那些事,看这一文章就够了

    用户画像的含义 用户画像(persona)的概念最早由交互设计之父Alan Cooper提出:"Personas are a concrete representation of targe ...

  2. 十八.用户注册 ---- 用户名/用户密码/手机号验证 2021-04-07

    十八.用户注册 ---- 用户名/用户密码/手机号验证 引言 注:该篇文章接上一篇 十七.用户注册 ---- 图形验证码 在上一篇文章我们实现了用户注册中的图形验证码过程,接下来我们要实现用户名验证, ...

  3. 帮Facebook把用户做到7亿的那个人,告诉你如何实现用户增长

     帮Facebook把用户做到7亿的那个人,告诉你如何实现用户增长 你真的知道自己在设计的是什么样的产品吗? 彭萦 2015-08-03 07:02 Facebook 产品 投稿 头条 214 1 ...

  4. 模拟注册用户,按照以下要求实现相关功能:

    package Day08;import java.util.Scanner;/*** 模拟注册用户,按照以下要求实现相关功能:* a. 提示用户在控制台输入手机号码,并接收.* b. 判断用户输入的 ...

  5. 【历史上的今天】12 月 30 日:C++ 之父诞生;Hotmail 创始人出生;Facebook 注册破百万

    整理 | 王启隆 透过「历史上的今天」,从过去看未来,从现在亦可以改变未来. 今天是 2021 年 12 月 30 日,在 1930 年的这一天,"青蒿素之母"屠呦呦出生.2015 ...

  6. 谷歌如何注册账号?手机号无法验证处理方法!2023年最新教程!

    最近学会了如何爬网站,然后在观看油管过程中,想要注册一个油管账号,也就是谷歌账号.但是在注册过程中,您发现无法使用手机号进行验证.您已经查阅了一些解决方法,不过没有解决,最后钞能力在某宝(老顽童科技) ...

  7. 注册时输入手机号规则

    注册时输入手机号规则 注册时输入手机号规则 注册时,web端用户输入的手机号(案例手机号为中国手机号): 1.必填: 2.第一位必为1,第二位不能为0/1/2且总共11位数字: html部分 // h ...

  8. 【编程开发】之短信注册用户流程

    注册用户账号需要使用手机验证码进行操作,而手机验证码发送使用的是阿里云短信服务,发送短信操作可以参考:阿里云短信服务官方文档 .其原理也比较简单,下面是使用步骤: 首先我们需要引入相关依赖: < ...

  9. 黑马旅游网-注册用户(二)

    目录 一.注册用户-业务流程分析 1.页面效果 2.业务流程分析 二.注册用户-前端功能实现 修改register.html 1.校验用户名 2.校验密码 3.检验邮箱 4.使用ajax提交数据 5. ...

最新文章

  1. 合唱队形(递增再递减的最长子序列)
  2. 输出两个整数中最大的书c语言,c语言程序设计实验指中导书-2.doc
  3. 结构体字节对齐(转)
  4. Oracle 表及表空间(一)
  5. jmeter察看结果树-响应数据乱码
  6. 开始学习一个指令 directive 并了解指令的意义
  7. KindEditor编辑器, 利用ajax动态切换编辑器内容
  8. 雅虎的Mash-up 之路
  9. Javascript实现导出word - jquery jquery.wordexport.js 实现导出word
  10. 【其他】编程技巧之常用缩写
  11. 没事学学docker:在阿里云中部署MYSQL的容器+测试
  12. Linux 常用命令——不看白不看
  13. ProjectWise 工程内容管理及协同工作解决方案系列网络讲座
  14. Java自学网站推荐(整理好发给大家)
  15. 《Java程序设计精编教程(第3版)》之课后习题 - 个人作
  16. Windows下TexLive2015 TeXstudio 和SumatraPDF安装配置
  17. 概率论基础知识(书本摘录总结)
  18. NumberFormat类
  19. 动态路由 华三nat 静态路由_H3C MSR系列路由器典型配置举例(V5)-6W100
  20. 机房交换机网络测试软件,国内IDC机房带宽测试工具和方案

热门文章

  1. MAP对象(js从入门到疯癫)
  2. linux文件内容乱码怎么解决,window到linux文件名乱码和文件内容乱码解决总结
  3. 韶关python培训班_新华字典:韶_“韶”的意思,五笔,笔画,拼音,五行_HttpCN
  4. 为什么每次在机器学习中获得不同的结果?
  5. 网络监控系统的建立及部署
  6. 将文件夹的分组方式应用到电脑的所有文件夹
  7. vue2.x tui-image-editor图片编辑器的使用
  8. 强制关闭计算机窗口,windows系统怎么取消关机时强制关闭程序提示窗口?
  9. 安装Jdeveloper 12C
  10. B站秋招编程题:扭蛋机