最近,国外的开源情报(OSINT)爱好者分享了一篇帖子,查找朋友不可见的facebook用户的朋友圈,这篇帖子也在我们的知识星球(开源 *** 空间情报)中之一时间分享。作者利用十分巧妙的技巧绕过了facebook官方的这种限制,不但能找到部分不可见的朋友,还能对朋友之间的社区进行探索。笔者对这个 *** 也完整地实验了一把,亲测有效。下面就把该 *** 的思路和工具介绍给大家。
Facebook查看的朋友权限,是可以设置的,如下图所示。
这里有4种权限设置选项:公开可见,只有朋友可见,只有本人可见,或自定义可见。当我们选择只有本人可见的时候,理论上只有本人可见,这时候我们要怎么样才能够知道这个人的朋友圈呢?这个时候想要去探索不可见朋友的Facebook用户,原理上其实不复杂,只是过程有点绕。
我们直接看不到对方(用A表示)好友的情况下,其实可以去看其他用户(B)的朋友列表,如果在B的朋友列表中出现了A,则代表他们是朋友关系。那怎么找到用户B呢,这很好办,只要多去翻一翻对用户A的状态进行点赞或评论的人是谁就行了。然后,由于用户B的朋友列表可见,再去翻他的朋友中有没有和A是朋友关系的,这样不断的迭代,就能勾勒出用户A的朋友圈了。
详细一点,这个 *** 可分为两步:
之一步,搜索在目标的朋友圈内评论的用户。再通过这些用户作为跳板,也可以说支点,围绕这些用户,通过检索这些用户的朋友列表,分别找到这些用户的朋友。如果这些用户的朋友中有目标用户,再进行第二步。
第二步,检索这些用户的朋友的朋友列表最后形成一个闭合的环路或者直到他的朋友的好友列表是关闭的,将这些信息通过线的方式串联起来最后构成一个属于目标用户的关系网。
我们首先通过手工验证一下这个 *** 的可行性。
这里我们以MarkZuckerberg为例。
我们从图中无法看到扎克伯格的好友列表,这说明他隐藏了自己的好友列表,那么我们只能从评论他的人去发现与他是好友的人的关系,我们从他的评论中选出一个人Julie Zhou,从她的好友中我们能够找到Mark Zuckberg。
接着,我们可以从她的好友中继续寻找她的好友的好友列表里存在Mark Zuckberg的人,譬如Ami Vora,如下图所示,
我们进入到Ami Vora的好友列表,可以看到她的好友列表里面有Mark Zuckberg,这样我们就通过Mark Zuckberg的评论,找到了他的两个好友,虽然他自己没有公开好友信息,但是我们仍然可以从侧面找到他的好友。
以上我们主要是采用手动的方式来查找目标的朋友,实际上,这一过程完成可以做到自动化,这篇帖子的作者也将它的自动化工具给出来了。下面我们就来看自动化工具是怎么实现的。
一、查找目标的facebookID
这里是之一步,搜索我们想要了解的那个人的朋友圈,首先我们要进入他的主页面,这里我们用Facebook的创始人马克扎克伯格作为例子。
1、搜索目标用户
2、查找想要了解的目标用户名,进入他的主页
3、使用ctrl+U检查网页源代码
4、采用ctrl+F查找fb://profile
可以看到有两个匹配项,这里这个4指的是用户ID,在我们的例子中,由于MarkZuckerberg是该平台的之一批用户之一,所以这个数字非常小;对于普通用户来说,这个数字会大得多。
5、这里采用原帖作者提供的工具,地址如下所示:
https://github.com/sowdust/ffff
将这个地址下载下来,根据readme进行配置安装,这里就不详细介绍了。
安装好以后命令
python fint.py -fu fbuser@mediaservice.net -fp fbpassword -d geckodriver.exe -t 4 -ls 10 -lp 10 -lc 5 -lr 5
fbuser@mediaservice.net 这个地方用自己的facebook账号,fbpassword这个地方用自己的密码代替。至于上面的参数的意思是抓取最多100个评论的人(-lc),最多1000个朋友(-lr),深度最多10层(-ls)和每个人的10张照片(-lp)
6、采用python命令
python ffff.py -fu fbuser@mediaservice.net -fp fbpassword -d geckodriver.exe -t 4 -p 558259929 -q
这里的558259929是枢纽账号的ID,所谓枢纽账户是指我们通过这个账户找到的关于目标账户的朋友的账号ID。这个枢纽账户,主要来自于目标账户下方的评论人员。注意,该工具的频繁使用,可能导致facebook号被封;最后,完成后可以发现以下三个文件。
4-friends.csv
4-friends.gexf
session-4-20190508130137
其中第三个文件是在该程序进行到一半卡进程的时候,可以停止程序运行,然后再重新启动的必要文件,启动的方式为
python ffff.py -fu fbuser@mediaservice.net -fp fbpassword --resume session-4-2019050812320
红色部分跟的就是上面第三个文件。
CSV文件包含表单中的朋友列表、ID、名称,.gexf文件包含一个图形的表示形式,该图形可以在Gephi中打开(稍后会有更多信息)。程序最终自动终止后打印所有的朋友的信息如下图所示:
7、采用Gephi打开上述中的第二个文件4-friends.gexf,可以看到这是杂乱无序的一团线团。如下图所示:
8、所以我们需要通过布局来调整图像,布局的按钮如下所示:
这里布局有12种算法,前六种是主要的布局 *** ,后六种是辅助布局
具体的关于布局的效果,如https://www.cnblogs.com/tonglin0325/p/8318628.html有详细的描述。
这里我们先使用了OpenOrd,布局然后再采用了ForceAtlas2布局,其效果如下图所示,也不是很好,看起来也是黑乎乎的一团。
紧接着我们采用模块化的方式,让它看起来更加的清晰一点
1)首先是在统计处,选择模块化对应的运行,如下图所示。
紧接着就会出现如图所示的设置框,这个设置框中最主要的需要设置的东西,就是这里画红色圆圈的部分,这里是设置的解析度,当解析度越大,其划分的社区就会越小。这里我们设置它的解析度为0.6
点击确定后,会得到一个HTML report,此时,这个图案仍然没有什么变化。之后的查看工作区-外观,如下图所示。
点击partition,选择modularity class,如下图所示:
最后再点击应用,就会得到如下图所示:
可以看到,不同颜色,代表不同的朋友圈社区。打个比喻,紫色是大学校友圈子,蓝色可能是工作同事圈,黑色可能是亲戚圈子等等。通过该工具,不但找出了朋友不可见用户的朋友,还划分出了他的朋友圈社区。这实在是很有用的收获。
这种 *** 还是存在一定局限,即很难将目标用户的好友列表覆盖完整,只能挖掘出部分的好友。想要更全面地挖掘目标用户的好友,需要不断更换枢纽账户,而且尽量要是不属于同一个圈子的枢纽账户,才有能将目标好友尽可能覆盖的全。最后,开源情报收集正逐渐成为一个专业领域,笔者也会不断推出开源情报收集技巧方面的帖子,一些好的工具,我们也会在自己的知识星球(开源 *** 空间情报)上推出,欢迎大家关注。
注意啦注意啦,特大喜讯,针对近期很多人都在咨询我关于单词优化怎么做的相关问题,你说要是回答吧,每天咨询的人太多了,我一个嘴巴也说不了十个嘴巴的话,真心的累啊,所以,今天我给大家提供一份详细的单词优...
四大家族 (香港四大家族) “香港四大家族”是指在香港具有很大影响力的四大豪门,包括主要以房地产发家的李嘉诚、郭得胜、李兆基、郑裕彤四家。也有媒体把常住香港的马来西亚籍华裔商人郭鹤年家族作为另一香港...
《黑客帝国4》票房和口碑呈现两极分化的局面,这是为何? 1、梅里爱使得科幻电影烙上了无法抹去的奇观胎记,纵观好莱坞影坛,从1968年的《太空漫游2001》到1993年的《侏罗纪公园》,从1976年的《...
对于投资人和创业者而言,大数据是个热门的融资标签。而早在这个概念热起来之前,Sensors Data(神策)的创始人桑文峰已经在大数据领域有了长达7年的探索。在2015Mars大赛中,Sensors...
任何一个网站都希望用户能多停留一点时间,多浏览几个页面,也就是说,站长都希望自己的网站跳出率低一点。因为,用户在页面上停留的时间越长,意味着这个页面的价值越高,搜索引擎的好感度越高,排名越好,站长得到...
鸡排行业是近两年成长较量迅速的小吃行业之一,凭借着奇特的口胃在鼓起之后获得了迅猛的成长,同时也受到了很多消费者的接待。不只如此,很多的加盟投资者也看到了鸡排行业中的商机,纷纷插手了加盟鸡排的队列中,同...