今年315晚会曝光了几个获客软件,号称可以拦截任何人的网络浏览记录,并根据对方在直播软件的留言、打过的电话、浏览过的网址,获取对方的手机号和微信号。还有在地图上随便画一个圈,就能找到圈里面130万人的联系方式。
作为一个软件工程师,我来说说我对他们背后原理的猜测。
晚会里面笼统地说到他们使用了爬虫技术。其实这种说法并不准确。根据我的经验,爬虫不可能做到这种程度。爬虫只能爬取到人眼能看到的各种公开数据。例如有人在直播软件下面回复了评论,爬虫能爬到评论人的用户昵称、评论的内容。但是因为评论人的真名、手机号码和微信号并没有显示在直播软件上,所以爬虫是不能爬到的。它后续还需要使用撞库、社工库、社会工程学等等一系列操作,才能定位到用户的手机号。
以它直播软件获客这个例子,我觉得它背后的原理是这样的:
再说说它在地图上随便画一个圈,就能找到联系方式这个能力。我怀疑它是使用了WIFI探针加上商场的WIFI。
如果我今天刚刚买了一个新的手机卡,把它插在手机上,我不太相信他们能够随便画一个圈,就把我的新手机号获取到了。肯定有一个地方会泄露手机号。那么泄露途径可能有如下几个:
再说一说根据网站访问记录获取手机号。这个我只能说是运营商信息泄露了。2017年,我在北京某公司工作的时候,就拿到过这种运营商数据。不过当时这种数据是脱敏过的。用户信息是md5值,只能根据不同的md5值判断这些请求是不同人的设备发送的,但无法知道具体是谁。这种情况是合法的,本来就有这种公开运营商数据买卖。市面上很多做尽职调查的公司都会采购。提供这种运营商数据的公司,他们会在运营商的机房里面安装记录设备,记录详细信息,然后经过脱敏以后卖给下游公司。
但说不定他们自己也会把没有脱敏的数据经过特殊渠道卖出去,于是就有了今年晚会上的这种功能。
有同学可能会担心这种运营商数据,是不是会把自己访问的每一个URL都记录下来?其实大可不必担心,我们要相信HTTPS。对于使用了HTTPS的网站,运营商那边拿到的数据只能定位到你访问的域名,但无法知道具体的网址。例如你访问了https://xxx.com/aa/bb/cc,运营商记录只能拿到https://xxx.com。无法拿到后面的具体地址。除非他们在你的手机上安装了根证书。所以不要安装来历不明的证书,是保证数据安全的重要前提。
实际上不仅是运营商数据会被出售,银行卡、信用卡数据也会被出售。有一些做尽职调查的公司,如果要调查某教育机构的学生报名情况,他们会从刷卡数据中筛选出支付给这个教育机构的费用,这样就能算出机构的课程报名情况了。
从上面的分析可以看出,其实要获取一个人的个人信息,爬虫在里面发挥的作用其实是最无足轻重的。随便一个数据的泄露,产生的影响远远超过爬虫。
以上技术方法都是我个人的猜测。都是基于著名的直播软件不可能主动卖用户手机号这个前提来做的猜测。