迅维网

查看: 1444|回复: 10
打印 上一主题 下一主题

WiFi 万能钥匙是怎么收集数据的?

[复制链接]
跳转到指定楼层
1#
发表于 2017-12-21 10:49:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式 来自: LAN 来自 LAN

马上注册,获取阅读精华内容及下载权限

您需要 登录 才可以下载或查看,没有帐号?注册

x
看大家都说是来自分享,可是最初总要有一些基础数据啊,难道都是线下员工一个一个找出来的??那不得累屎了。。

2#
发表于 2017-12-21 10:49:57 | 只看该作者 来自: LAN 来自 LAN
WiF万 能钥匙的基础功能并不是采用某些答案所述“密码库穷举(逐个尝试)暴力破 解”的方式获得正确密码,而是通过用户上传分享的热点(主动或“被动”)到后台服务器的方式收集、积累数据。后台服务器维护者一份热点数据库,其中包含着热点名称(或者用来唯一标识的MAC地址)以及与其对应的密码字符串。查询密码时,用户将周围扫描到的陌生热点信息上传,服务器后台查询到相对应的密码(如果分享过的话)后返回给APP供用户选择使用。不过WiFi共享钥匙有一个“深度解锁”的功能与“暴力破 解”沾点边,但它也仅仅是使用几个常见的较为简单的密码来尝试连接热点,不能称得上算“密码库穷举”。
现在WiFi万 能钥匙充实密码库的方式主要是用户主动分享,毕竟用户基数变大了,但在以前可不是这样。早期的WiFi万 能钥匙得到热点密码数据的手段并不高明,甚至可以说是不光彩的。
我们知道Android系统中有个文件是用来存储WiFi密码的,那就是/data/misc/wifi/wpa_supplicant.conf
它的内容应该是这个样子:

此文件只有当获得root权限后才能访问。
图上显示有两个WiFi热点“network”,ssid是热点名称,psk是密码。上面那个是我的私人热点,另一个“Bjume”则是某商家提供的免费热点。请注意,其中的密码是明文显示的“bjume2013”。
得到了这个文件,或者能看到这个文件的内容,就意味着能得到这台手机登录过的所有WiFi热点,以及它们的明文密码!
早期版本的WiFi万 能钥匙会向用户申请root权限:


虽然我不是专职的Android开发者,但我毕竟也开发过一些自用的小工具,对系统提供的接口和权限还是略知一二的。WiFiwan能yao匙的所有业务功能,包括扫描周边的WiFi信号、通过网络查询对应WiFi信号的密码、输入密码登录WiFi、通过网络将用户在应用中输入的密码上传到服务器,这些都可以使用基本的系统API实现,不知道它为甚麽要申请root权限。难道是为了访问wpa_supplicant.conf文件?单从这一点上作恶意揣测似乎不太妥当,毕竟在android上很多别的行为也需要root(虽然我实在不知道WiFi万 能钥匙哪个功能有这个需求),那么接下来的证据就无法回避了。
我对com.snda.wifilocating.apk文件进行了反编译,在得到的很多smali脚本中,有这么一个很有意思:
/home/feng/documents/com.snda.wifilocating.apk/smali/com/snda/wifilocating/a/i.smali: 1049      invoke-direct {v2, v3}, Ljava/io/DataOutputStream;-><init>(Ljava/io/OutputStream;)V 1050   1051:     const-string v3, "cat /data/misc/wifi/wpa_supplicant.conf>/data/data/com.snda.wifilocating/wifi.conf\n" 1052   1053      invoke-virtual {v2, v3}, Ljava/io/DataOutputStream;->writeBytes(Ljava/lang/String;)V
1051行,WiFiwan能yao匙不仅访问了wpa_supplicant.conf这个文件,还把其中的内容复制了出来,放到了自己的缓存文件夹里。
我实在想不通WiFi万 能钥匙的哪个功能需要使用用户登录过的所有热点密码(注意1.0这个版本还没有热点备份功能),因此唯一合理的推测便产生了!当然这种推测仍然没有十足的依据,但事实不是已经很清楚了么?

回复 支持 反对

使用道具 举报

3#
发表于 2017-12-21 10:49:57 | 只看该作者 来自: LAN 来自 LAN
1、用户主动输入的(非root机器)
2、把用户存下来的密码主动上传(root机器)
3、利用常用的密码表,暴力破解
4、人肉扫街

回复 支持 反对

使用道具 举报

4#
发表于 2017-12-21 10:49:57 | 只看该作者 来自: LAN 来自 LAN
咳咳……这个问题的答案其实我觉得在
相比 iOS,Android 最不能忍受的缺点有哪些? 里好像刚好提到过了
adb shell su cat /data/misc/wifi/wpa_supplicant.conf
还是那句话,Android用户不要随便root机器。

至于IOS的话我确实不知道了。
另外,对于无法拿到的情况,也不会真的穷举去暴力破解,而是用各种常用密码去碰撞。比如CSDN之类的被拖库后拿到的用户密码,这样碰撞去试成功率是非常非常高的。

回复 支持 反对

使用道具 举报

5#
发表于 2017-12-21 10:49:57 | 只看该作者 来自: LAN 来自 LAN
强烈不建议各位创业者模仿这个Wi-Fi分享做法做一个“银行卡万能钥匙”之类的玩意,服务器主动记忆别人的卡号、密码;立即实现有钱同用共产猪义社会!

回复 支持 反对

使用道具 举报

6#
发表于 2017-12-21 10:49:57 | 只看该作者 来自: LAN 来自 LAN
楼上说的是很大一部分,我这里补充一下另一部分。
WiFi万能钥匙1.0时代
只是手法类型分类,并非与其版本挂钩
主“破解”功能,就是常用的多位密码穷举
每个WiFi连一遍,总能找到12345678这样的弱密码。
于是,破解+分享就成了团队的主要手段。

*(1.5)时代
记忆中WiFi万能钥匙有过那么一个用新密码换已有密码使用权这样的事情

2.0时代

单纯的弱密码破解并没太大作用,而愿意分享的用户并不多,于是默认/主动“分享”,就被执行。

3.0时代

随着万能钥匙做大,单纯的破解已然是踩红线的行为了,这时团队弱化了破解功能,码库全了吗,当然主打分享密码,当然,默认自家WiFi主动分享选项是必不可少的。

4.0时代
为写这一部分主动去下了个最新版逛了一圈

作为工具类应用,为了避免用完即删的窘状,钥匙把咨询与安全部分放进了软件里,密码数量已经不重要,面对投诉团队出了撤销分享功能,为了维持码库一些门坎少不了。有防同类竞争的因素,团队又出了安全检测部分,对各类防护手段都有所涉及,看到那么多防护手段,联系到前几年爆库事件频发,对之前团队发展不免有了些猜想.....



鉴于本文极不负责任
匿,侵删。

回复 支持 反对

使用道具 举报

7#
发表于 2017-12-21 10:49:57 | 只看该作者 来自: LAN 来自 LAN
仅以用户角度来说来说,下载安装wifi万能钥匙打开就会有自动分享wifi密码的选项,该选项需要用户手动进行取消勾选。
看见周围很多朋友看这些软件宣传动画都是快速滑动,然后点确定进入,个人认为这可能是许多密码共享的来源。

回复 支持 反对

使用道具 举报

8#
发表于 2017-12-21 10:49:57 | 只看该作者 来自: LAN 来自 LAN
发一个简单易懂的图。

回复 支持 反对

使用道具 举报

9#
发表于 2017-12-21 10:49:57 | 只看该作者 来自: LAN 来自 LAN
如果是WPA的加密模式,靠空口的暴力破解基本上是很难做到的,做到了也没用,马上还会重新协商密钥。
我觉得如果前期是这样做的,确实比较恶心,虽然三星靠双卡双待在中国貌似曾领先苹果,但是我觉得还是有必要双枪,安卓一个苹果一个。
仔细想想确实没有什么更好的办法,MAC+密码是一种方法,另外的方法就是定期更换密码了。
还有个方法是访客网络,我家的apple extreme这个功能,啊,我上次忘记开我家的访客网络,而是给别人了我家网络的SSID了。

回复 支持 反对

使用道具 举报

10#
发表于 2017-12-21 10:49:57 | 只看该作者 来自: LAN 来自 LAN
知乎有很多人不过是一些利益至上的人。我家50的宽带,我知道别人再用我家网,我不反对因为,把自己用不了剩余价值给别用。请问你们在介绍别人的好处时,你们可想过这一点。

回复 支持 反对

使用道具 举报

11#
发表于 2017-12-21 10:49:57 | 只看该作者 来自: LAN 来自 LAN
应该是技术针对分享的热点做技术处理,如果没有分享热点,市场上很多同类软件都不能破译的。wifi万能通也是需要用户成功了解热点才能显示密码,分享密码。这一技术主要弥补目前很多手机了解网络后不显示密码的缺点。

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表
附近
店铺
微信扫码查看附近店铺
维修
报价
扫码查看手机版报价
信号元
件查询
点位图 AI维修
助手



芯片搜索

快速回复