0
| 本文作者: 又田 | 2019-03-22 11:26 |
文章作者為網(wǎng)絡(luò)尖刀團(tuán)隊(duì)創(chuàng)始人曲子龍,授權(quán)雷鋒網(wǎng)編輯及轉(zhuǎn)載
最近這幾天關(guān)于通過(guò)手機(jī)監(jiān)聽(tīng)用戶敏感信息,通過(guò)NLP處理傳到云端做大數(shù)據(jù)分析的事兒吵的沸沸揚(yáng)揚(yáng)的。搞技術(shù)的人忙著撕逼能不能監(jiān)聽(tīng)、搞PR的人忙著各種自證、媒體記者忙著找專(zhuān)家追熱、互聯(lián)網(wǎng)網(wǎng)民對(duì)于隱私,除了慌張顯然也干不了什么。
我們不一樣,本著較真且不作惡的態(tài)度,我們的安卓小伙子寫(xiě)了一個(gè)不痛不癢的demo。
觀看視頻前我想做如下重要聲明:
本視頻僅用于技術(shù)研究的測(cè)試用途,不會(huì)考慮使用在其它路徑,惡意有心人不要打擾,別來(lái)試探我們的底線;
本視頻所演示內(nèi)容,是基于安卓環(huán)境下的測(cè)試演示,與安卓系統(tǒng)有關(guān),但與手機(jī)品牌無(wú)關(guān);
本視頻所演示內(nèi)容,只是強(qiáng)調(diào)從技術(shù)角度是可以實(shí)現(xiàn)后臺(tái)監(jiān)聽(tīng),然后再用于大數(shù)據(jù)分析的,但并不是說(shuō)某些廠商干了這些事;
技術(shù)能不能實(shí)現(xiàn)是一回事兒,別人做沒(méi)做是另外一件事兒,有心人不要惡意混攪。
視頻觀看地址:https://mp.weixin.qq.com/s/lXqmU97nVBcKxklqYCpbhQ
視頻看完了,筆者對(duì)其中可能引起的爭(zhēng)議做了一個(gè)簡(jiǎn)單解答。
由于時(shí)間關(guān)系,我只做了后臺(tái)無(wú)感知監(jiān)聽(tīng),語(yǔ)音轉(zhuǎn)文字傳到服務(wù)器,做了一些基礎(chǔ)的nlp處理,懂技術(shù)的人都了解,無(wú)感知拿數(shù)據(jù)是最麻煩的環(huán)節(jié),而后面基于nlp分詞,提取特征關(guān)鍵詞,再做大數(shù)據(jù)推薦,其實(shí)就沒(méi)啥難度了,都是時(shí)間問(wèn)題。
對(duì)于是否偷聽(tīng)這個(gè)事情我不評(píng)價(jià),這個(gè)需要相關(guān)部門(mén)做取證,做技術(shù)分析才能得出結(jié)論。錄制視頻的目的是想回應(yīng)某些自稱(chēng)目前的技術(shù)無(wú)法實(shí)現(xiàn)用戶手機(jī)鎖屏情況下,進(jìn)行監(jiān)聽(tīng)、上傳、分析、大數(shù)據(jù)營(yíng)銷(xiāo)這樣的能力的觀點(diǎn)。
不好意思,我覺(jué)得這個(gè)觀點(diǎn)不服。
網(wǎng)絡(luò)尖刀人工智能實(shí)驗(yàn)室不是研發(fā)出身,我們是安全出身,所以一定是按照黑客的習(xí)慣,用惡意軟件、惡意木馬的思路來(lái)實(shí)現(xiàn)這個(gè)需求,如視頻所示,我們只在用戶界面獲取了一個(gè)麥克風(fēng)錄音權(quán)限,所以說(shuō)在安卓上的門(mén)檻并不是很高,這個(gè)思路就是典型的。
如果是我來(lái)寫(xiě)代碼,我會(huì)把需要觸發(fā)的詞做個(gè)庫(kù)留在App上,用戶講話內(nèi)容觸發(fā)特定的詞,則開(kāi)始喚醒這個(gè)應(yīng)用開(kāi)始監(jiān)聽(tīng)及分析,這樣就可以降低能耗到無(wú)感知。
首先大部分用戶都是按home鍵去返回菜單和切換App,進(jìn)程一直都是掛在后臺(tái)進(jìn)程上的,這樣不是殺掉進(jìn)程,即便是你把我的App退了,那我在給你們說(shuō)一個(gè)組合攻擊的方法。
用戶在手機(jī)后臺(tái)關(guān)掉了A應(yīng)用,但B應(yīng)用仍在后臺(tái)運(yùn)行,A應(yīng)用注冊(cè)了一個(gè)服務(wù)對(duì)外暴露出去,B應(yīng)用根據(jù)它的服務(wù)名仍然可以把A喚醒,這樣就不怕服務(wù)因人工殺掉(編注:從手機(jī)后臺(tái)徹底關(guān)閉)導(dǎo)致無(wú)法監(jiān)聽(tīng)了。
另外,很多手機(jī)廠商會(huì)對(duì)一些大型互聯(lián)網(wǎng)廠商提供白名單,白名單廠商的app不需要授權(quán),就可以獲取一定的權(quán)限,這個(gè)是殺不掉的。
某些研發(fā)同學(xué)提出這個(gè)質(zhì)疑的時(shí)候,我表示是懵逼的,哥們代碼可能寫(xiě)的不行啊,首先我希望你明白一個(gè)這樣的思路,監(jiān)聽(tīng)的本質(zhì)并不一定非得去對(duì)某業(yè)務(wù)進(jìn)行持續(xù)占有和使用,監(jiān)聽(tīng)的本質(zhì)是竊取啊。
當(dāng)用戶打電話的時(shí)候,本質(zhì)上雖然在使用麥克風(fēng),我再調(diào)取一個(gè)麥克風(fēng)就會(huì)有可能被占用,但是電話錄音是如何做的呢?
copy流啊,我只是在copy你麥克風(fēng)的流,這樣就可以監(jiān)聽(tīng)了啊,錄音功能的App使用麥克風(fēng)不允許占用,要打斷前一個(gè)音頻,本意是擔(dān)心串流,所以寫(xiě)代碼的時(shí)候判斷有沒(méi)有人占用,如果有,就提示另外一個(gè)要斷開(kāi),但不代表這樣就沒(méi)辦法實(shí)現(xiàn)了。
安卓門(mén)檻很低,但是iOS確實(shí)還是要有技術(shù)水平的,避免有些人以此作惡,我不講那么細(xì)致,我只提一個(gè)思路,做一些特殊的處理想辦法沙箱逃逸,開(kāi)發(fā)兩個(gè)App植入在目標(biāo)手機(jī)里,用A去調(diào)用B的錄音權(quán)限,然后在后臺(tái)監(jiān)聽(tīng),這樣B就可以欺騙系統(tǒng),實(shí)際是在前臺(tái)監(jiān)聽(tīng),所以就沒(méi)有顯示被“錄音”。
至于怎么欺騙過(guò)審核?蘋(píng)果對(duì)此有無(wú)白名單?我不知道,我不說(shuō),我不會(huì),我只是個(gè)單純的技術(shù)研究愛(ài)好者,全團(tuán)隊(duì)都是。
某些人說(shuō)iOS下,你后臺(tái)怎么運(yùn)行?避免有人可疑作惡,我只能說(shuō)多去想一下組合拳思路,至于iOS的不死進(jìn)程,可以查看一下“keepAliveTimeout handler”的相關(guān)內(nèi)容。
相比安卓,iOS無(wú)感知門(mén)檻真的很高,這個(gè)我認(rèn)可的,但是不是不知道,要看你付出的成本到底是怎樣的。
hey Siri是蘋(píng)果自己的底層應(yīng)用,寫(xiě)在系統(tǒng)里的,給足了權(quán)限,但是iOS系統(tǒng)上面的應(yīng)用,需要使用權(quán)限的時(shí)候,蘋(píng)果控制的還是很?chē)?yán)格的。
再次強(qiáng)調(diào),技術(shù)的本身從來(lái)沒(méi)有問(wèn)題,有問(wèn)題的是人和社會(huì),希望大家抱著學(xué)習(xí)的態(tài)度去研究技術(shù),而不是將技術(shù)用于惡意的用途,那些別有用心沒(méi)有道德底線的人,遲早付出代價(jià)的。
文章來(lái)源:網(wǎng)絡(luò)尖刀 雷鋒網(wǎng)宅客頻道編輯
雷鋒網(wǎng)
雷峰網(wǎng)版權(quán)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見(jiàn)轉(zhuǎn)載須知。