WiFi萬(wàn)能鑰匙是怎么知道你家(別人家)WiFi密碼的?
WiFi萬(wàn)能鑰匙的基礎(chǔ)功能并不是采用某些答案所述“密碼庫(kù)窮舉(逐個(gè)嘗試)暴力破解”的方式獲得正確密碼,而是通過(guò)用戶(hù)上傳分享的熱點(diǎn)(主動(dòng)或“被動(dòng)”)到后臺(tái)服務(wù)器的方式收集、積累數(shù)據(jù)。后臺(tái)服務(wù)器維護(hù)者一份熱點(diǎn)數(shù)據(jù)庫(kù),其中包含著熱點(diǎn)名稱(chēng)(或者用來(lái)唯一標(biāo)識(shí)的MAC地址)以及與其對(duì)應(yīng)的密碼字符串。查詢(xún)密碼時(shí),用戶(hù)將周?chē)鷴呙璧降哪吧鸁狳c(diǎn)信息上傳,服務(wù)器后臺(tái)查詢(xún)到相對(duì)應(yīng)的密碼(如果分享過(guò)的話(huà))后返回給APP供用戶(hù)選擇使用。不過(guò)WiFi共享鑰匙有一個(gè)“深度解鎖”的功能與“暴力破解”沾點(diǎn)邊,但它也僅僅是使用幾個(gè)常見(jiàn)的較為簡(jiǎn)單的密碼來(lái)嘗試連接熱點(diǎn),不能稱(chēng)得上算“密碼庫(kù)窮舉”。
現(xiàn)在WiFi萬(wàn)能鑰匙充實(shí)密碼庫(kù)的方式主要是用戶(hù)主動(dòng)分享,畢竟用戶(hù)基數(shù)變大了,但在以前可不是這樣。早期的WiFi萬(wàn)能鑰匙得到熱點(diǎn)密碼數(shù)據(jù)的手段并不高明,甚至可以說(shuō)是不光彩的。
我們知道Android系統(tǒng)中有個(gè)文件是用來(lái)存儲(chǔ)WiFi密碼的,那就是/data/misc/wifi/wpa_supplicant.conf
此文件只有當(dāng)獲得root權(quán)限后才能訪(fǎng)問(wèn)。
圖上顯示有兩個(gè)WiFi熱點(diǎn)“network”,ssid是熱點(diǎn)名稱(chēng),psk是密碼。上面那個(gè)是我的私人熱點(diǎn),另一個(gè)“Bjume”則是某商家提供的免費(fèi)熱點(diǎn)。請(qǐng)注意,其中的密碼是明文顯示的“bjume2013”。
得到了這個(gè)文件,或者能看到這個(gè)文件的內(nèi)容,就意味著能得到這臺(tái)手機(jī)登錄過(guò)的所有WiFi熱點(diǎn),以及它們的明文密碼!
早期版本的WiFi萬(wàn)能鑰匙會(huì)向用戶(hù)申請(qǐng)root權(quán)限:
雖然我不是專(zhuān)職的Android開(kāi)發(fā)者,但我畢竟也開(kāi)發(fā)過(guò)一些自用的小工具,對(duì)系統(tǒng)提供的接口和權(quán)限還是略知一二的。WiFi萬(wàn)能鑰匙的所有業(yè)務(wù)功能,包括掃描周邊的WiFi信號(hào)、通過(guò)網(wǎng)絡(luò)查詢(xún)對(duì)應(yīng)WiFi信號(hào)的密碼、輸入密碼登錄WiFi、通過(guò)網(wǎng)絡(luò)將用戶(hù)在應(yīng)用中輸入的密碼上傳到服務(wù)器,這些都可以使用基本的系統(tǒng)API實(shí)現(xiàn),不知道它為甚麼要申請(qǐng)root權(quán)限。難道是為了訪(fǎng)問(wèn)wpa_supplicant.conf文件?單從這一點(diǎn)上作惡意揣測(cè)似乎不太妥當(dāng),畢竟在Android上很多別的行為也需要root(雖然我實(shí)在不知道WiFi萬(wàn)能鑰匙哪個(gè)功能有這個(gè)需求),那么接下來(lái)的證據(jù)就無(wú)法回避了。
通過(guò)對(duì)com.snda.wifilocating.apk文件(WiFi萬(wàn)能鑰匙)進(jìn)行反編譯之后,得到的很多smali腳本,有這么一個(gè)很有意思:
1051行,WiFi萬(wàn)能鑰匙不僅訪(fǎng)問(wèn)了wpa_supplicant.conf這個(gè)文件,還把其中的內(nèi)容復(fù)制了出來(lái),放到了自己的緩存文件夾里。
上面的數(shù)據(jù)表示W(wǎng)iFi萬(wàn)能鑰匙有一項(xiàng)功能會(huì)默認(rèn)上傳所有用戶(hù)登錄過(guò)的所有熱點(diǎn)密碼(注意1.0這個(gè)版本還沒(méi)有熱點(diǎn)備份功能),因此唯一合理的推測(cè)便產(chǎn)生了!當(dāng)然這種推測(cè)仍然沒(méi)有十足的依據(jù)~
以上內(nèi)容便是關(guān)于WiFi萬(wàn)能鑰匙是怎么知道你家(別人家)WiFi密碼的一些分析,只是一個(gè)論證,并沒(méi)有十足的依據(jù),但筆者依然想告訴各位,在享受免費(fèi)午餐的時(shí)候,請(qǐng)多多在意自身的信息安全,避免使用WiFi熱點(diǎn)支付。
留言與評(píng)論(共有 條評(píng)論) |