(原標(biāo)題:隔屏有耳,記者耗時(shí)3個(gè)月測(cè)試,美團(tuán)餓了么是否在“偷聽(tīng)”?)
作者:李丹琦 郝俊慧
“我的命,我自己操盤(pán)”,這是《竊聽(tīng)風(fēng)云2》中的經(jīng)典臺(tái)詞,但現(xiàn)實(shí)生活中,我們可能連自己手機(jī)的麥克風(fēng)都操盤(pán)不了。
你遇到過(guò)這樣的情況嗎?剛說(shuō)了想吃什么,手機(jī)里就蹦出了它的推薦;剛說(shuō)了要買什么,就出現(xiàn)了廣告。
可是,手機(jī)怎么知道你剛剛說(shuō)了什么呢?一位讀者2018年11月的投訴引起了記者的注意,他懷疑外賣App在“偷聽(tīng)”自己說(shuō)話。
隨后,《IT時(shí)報(bào)》記者耗時(shí)3個(gè)多月的時(shí)間,通過(guò)模擬用戶使用場(chǎng)景,對(duì)安卓手機(jī)、蘋(píng)果手機(jī)、蘋(píng)果平板電腦上的餓了么和美團(tuán)外賣進(jìn)行多輪測(cè)試。
從測(cè)試情況來(lái)看,在隨后數(shù)分鐘到數(shù)小時(shí)的時(shí)間里,出現(xiàn)相關(guān)推薦的概率高達(dá)60%-70%。這個(gè)結(jié)果,有些驚人。
對(duì)此,餓了么和美團(tuán)回應(yīng):不存在“偷聽(tīng)”!
3月14日晚,記者更新了最新iOS版美團(tuán)外賣、餓了么,它們都不再索取麥克風(fēng)權(quán)限,不過(guò)安卓版里的錄音權(quán)限依然存在。
網(wǎng)友遭遇:餓了么在“偷聽(tīng)”我嗎?
2018年11月中旬,上海的孫女士在和同事閑聊時(shí)提到想喝CoCo奶茶,在打開(kāi)餓了么App時(shí),在推薦商家首位看見(jiàn)了CoCo奶茶。讓孫女士疑惑的是,自己之前從未在餓了么買過(guò)CoCo奶茶,在她手機(jī)后臺(tái),同時(shí)打開(kāi)了淘寶、微信、知乎、微博等多個(gè)App,“此前也沒(méi)有使用任何手機(jī)App搜索過(guò)CoCo奶茶的相關(guān)信息?!?/p>
無(wú)獨(dú)有偶,北京一位網(wǎng)友燃玉(化名)在2018年11月14日晚上8點(diǎn)左右,跟朋友說(shuō)想吃鰻魚(yú)飯,1分鐘后打開(kāi)支付寶上的餓了么應(yīng)用,推薦位頂部恰巧顯示著一家鰻魚(yú)飯的外賣店,此時(shí)距離他上次下單鰻魚(yú)飯相隔23天。
為了再次驗(yàn)證這一現(xiàn)象是否純屬巧合,次日中午,燃玉自行對(duì)著手機(jī)進(jìn)行了一輪測(cè)試。在沒(méi)有打開(kāi)應(yīng)用的情況下,他大聲說(shuō)想吃披薩,隨后才打開(kāi)了支付寶里的餓了么應(yīng)用,在推薦位首頁(yè)中出現(xiàn)了一家披薩店,“這家店的披薩我曾經(jīng)點(diǎn)過(guò),但也應(yīng)該是半個(gè)月前?!?/p>
燃玉使用的手機(jī)型號(hào)是小米MIX2,系統(tǒng)版本為MIUI9.6,在他的手機(jī)上,包括支付寶在內(nèi)的大多數(shù)應(yīng)用都有錄音權(quán)限,且這一權(quán)限在安裝時(shí)就已經(jīng)默認(rèn)啟用?!斑B續(xù)兩次都遇到了同樣的情況,難道是支付寶或者餓了么在偷聽(tīng)我說(shuō)話?”燃玉猜測(cè)。
12月15日,燃玉將自己遇到的情況第一時(shí)間發(fā)布在了微博中。根據(jù)微博后的154條評(píng)論來(lái)看,與燃玉有類似經(jīng)歷懷疑App“偷聽(tīng)”的人數(shù)占六分之一。
記者實(shí)測(cè)
孫女士和燃玉到底是杞人憂天還是確有其事?從2018年11月到2019年3月,《IT時(shí)報(bào)》記者用了3個(gè)多月的時(shí)間,通過(guò)模擬用戶使用場(chǎng)景,對(duì)安卓手機(jī)、蘋(píng)果手機(jī)、蘋(píng)果平板電腦上的餓了么和美團(tuán)外賣進(jìn)行了多輪測(cè)試。
第一次測(cè)試:餓了么準(zhǔn)確度80%
2018年11月19日,《IT時(shí)報(bào)》記者以兩款蘋(píng)果手機(jī)為測(cè)試工具進(jìn)行了測(cè)試。首先,打開(kāi)餓了么App和美團(tuán)外賣App,確認(rèn)前三屏推薦商家,然后關(guān)掉屏幕(兩款A(yù)pp應(yīng)仍在后臺(tái)運(yùn)行),隨后兩名記者以聊天的形式提到,中午要吃日式料理(為了保證測(cè)試公平,記者選了一類從未點(diǎn)過(guò)或搜索過(guò)的飯食)。
兩分鐘之后,再次進(jìn)入餓了么,首屏第二推薦位出現(xiàn)一家“**屋日式料理”。蹊蹺的是,兩分鐘后,當(dāng)記者再次打開(kāi)頁(yè)面,這家店又神奇地消失了,而原先第一位和第三位的商家卻都沒(méi)有變。
這是巧合嗎?關(guān)掉屏幕后,兩位記者繼續(xù)聊著日本料理,6分鐘后再次打開(kāi)餓了么,這家神奇的“日式料理店”又出現(xiàn)了,只是這次位置下降到了第七位。再次關(guān)掉,兩分鐘后再次打開(kāi),同樣的事情發(fā)生了,這家店又消失了,而其他推薦商家基本保持沒(méi)變。
緊接著,記者又以港式料理、茶餐廳為主題開(kāi)始聊天。同樣的現(xiàn)象再次出現(xiàn),10分鐘后,一家“××廣東腸粉”和一家知名港式連鎖店出現(xiàn)在首屏推薦位,兩分鐘后,這兩家店又“神秘消失”了。
在大概1個(gè)多小時(shí)的時(shí)間里,記者進(jìn)行了多次測(cè)試,餓了么出現(xiàn)同類現(xiàn)象的概率大概在80%左右,準(zhǔn)確度非常高,其中一家被精準(zhǔn)提到的門店,雖然在第一天沒(méi)有出現(xiàn),卻在第二天出現(xiàn)在“品質(zhì)優(yōu)選”頻道。美團(tuán)外賣則基本沒(méi)出現(xiàn)類似情況。
測(cè)試中記者也發(fā)現(xiàn),餓了么和美團(tuán)外賣并沒(méi)有被蘋(píng)果手機(jī)授權(quán)打開(kāi)麥克風(fēng),但同一體系內(nèi)的天貓、微信的麥克風(fēng)都在開(kāi)啟狀態(tài)。
第二天,記者將天貓、微信的麥克風(fēng)權(quán)限都取消,再次進(jìn)行測(cè)試,相關(guān)情況沒(méi)有出現(xiàn)。
多輪測(cè)試后,餓了么下降 美團(tuán)上升
為了獲得更準(zhǔn)確的測(cè)試結(jié)果,在接下來(lái)的3個(gè)月中,記者在不同場(chǎng)景、不同時(shí)間段進(jìn)行了數(shù)十次測(cè)試,并將測(cè)試設(shè)備擴(kuò)展到iPhone、安卓手機(jī)和iPad。
以3月9日11:57開(kāi)啟的一輪測(cè)試為例,在以“我想點(diǎn)一個(gè)涼皮”為關(guān)鍵詞重復(fù)多次之后,一家名為“涼皮先生”的店鋪出現(xiàn)在了蘋(píng)果手機(jī)美團(tuán)外賣App首頁(yè)推薦商家的第20位,但同樣在刷新之后,這家“涼皮先生”外賣店消失不見(jiàn)了。記者當(dāng)即撥打這家涼皮先生店鋪的電話,對(duì)方表示,當(dāng)天的確在美團(tuán)外賣上開(kāi)啟了店鋪推廣,但并沒(méi)有刻意刷新曝光率。
此前,記者曾以“今夜燒烤小龍蝦”“黃燜雞米飯”“塔哈爾新疆菜”和“元寶餃子”作為關(guān)鍵詞,分別在2018年12月20日、12月29日、12月30日以及2019年1月3日對(duì)蘋(píng)果和安卓版的美團(tuán)外賣App進(jìn)行了相同測(cè)試,以上四次測(cè)試中均出現(xiàn)了與關(guān)鍵詞一致的結(jié)果。
綜合所有測(cè)試結(jié)果,精準(zhǔn)推薦和同類推薦出現(xiàn)的概率超過(guò)70%。但不同的是,第一次測(cè)試同類情況比較多見(jiàn)的餓了么,在今年1月1日以后,此類現(xiàn)象基本消失。但原本情況并不明顯的美團(tuán)外賣,態(tài)勢(shì)卻有上升之勢(shì)。
餓了么、美團(tuán)回應(yīng):不存在“偷聽(tīng)”
到底這種推薦店鋪的出現(xiàn),是什么原因呢?
餓了么相關(guān)人士表示,所謂“監(jiān)聽(tīng)用戶日常對(duì)話并做信息分析”,是一種無(wú)端猜測(cè),餓了么既沒(méi)有做類似的產(chǎn)品設(shè)置,也不具備相關(guān)技術(shù)條件,餓了么嚴(yán)格保護(hù)用戶隱私,任何必要的信息采集都會(huì)在取得用戶事先同意的前提下進(jìn)行,在合法合規(guī)的范圍內(nèi)使用。
美團(tuán)人士則回應(yīng)稱,有關(guān)“根據(jù)麥克風(fēng)收錄的語(yǔ)音關(guān)鍵詞為點(diǎn)外賣的用戶做推薦”的行為并不存在,美團(tuán)外賣只會(huì)在獲得用戶語(yǔ)音使用授權(quán),且用戶主動(dòng)發(fā)起美團(tuán)外賣App內(nèi)的語(yǔ)音輸入行為時(shí),才會(huì)使用麥克風(fēng)。此外,美團(tuán)外賣僅會(huì)在用戶表達(dá)了明確需求信息、進(jìn)行主動(dòng)查詢后,才會(huì)進(jìn)行相關(guān)推薦輸出。
專家測(cè)試
沒(méi)使用時(shí)有數(shù)據(jù)上傳,無(wú)法確定是什么信息
那么,到底是巧合,還是確實(shí)這些外賣App在使用麥克風(fēng)“偷聽(tīng)”用戶?
3月13日,《IT時(shí)報(bào)》記者來(lái)到上海軟件測(cè)評(píng)中心對(duì)兩款A(yù)pp進(jìn)行數(shù)據(jù)包的抓取測(cè)試。
在數(shù)據(jù)抓取過(guò)程中,由于餓了么App使用了開(kāi)發(fā)者設(shè)定的證書(shū)綁定技術(shù),導(dǎo)致非開(kāi)發(fā)人員無(wú)法使用Charles等抓包工具抓取餓了么App的數(shù)據(jù)包。但從美團(tuán)外賣App的抓包結(jié)果來(lái)看,在測(cè)試的一段時(shí)間內(nèi),抓包工具中抓取到了近400個(gè)與美團(tuán)外賣相關(guān)且大小不一的數(shù)據(jù)包。這其中也包含在安靜的環(huán)境中美團(tuán)外賣App產(chǎn)生的少量數(shù)據(jù)包。
“我們抓的這些包,就是打開(kāi)App操作時(shí),手機(jī)和服務(wù)器之間通信的各種數(shù)據(jù),”上海軟件測(cè)評(píng)中心技術(shù)人員表示,如果App偷聽(tīng)的情況真實(shí)存在,那么就隱藏在這些數(shù)據(jù)包中。但難點(diǎn)在于如何在大量數(shù)據(jù)中分辨出哪些是客戶端與App之間正常的請(qǐng)求數(shù)據(jù)、哪些是App用于收集用戶語(yǔ)音信息的數(shù)據(jù)。
該技術(shù)人員還表示,即便是分辨出了數(shù)據(jù)包的信息,也不排除軟件開(kāi)發(fā)者在數(shù)據(jù)包內(nèi)用內(nèi)部的加密方式對(duì)語(yǔ)音數(shù)據(jù)進(jìn)行二次加密的可能。
由于分辨數(shù)據(jù)包需要花費(fèi)大量的時(shí)間,所以短期內(nèi)無(wú)法獲得對(duì)數(shù)據(jù)包進(jìn)行分析后的結(jié)果。
美團(tuán)對(duì)此表示,美團(tuán)外賣App在退出切換過(guò)程中,有可能在后臺(tái)同步App性能數(shù)據(jù)(如系統(tǒng)穩(wěn)定性數(shù)據(jù)、圖片加載成功率等),以便完善提升用戶體驗(yàn),同步內(nèi)容不涉及任何用戶個(gè)人信息。
是否“偷聽(tīng)” 業(yè)內(nèi)觀點(diǎn)不一
此外,在獲得了麥克風(fēng)權(quán)限的前提下,一款A(yù)pp可以通過(guò)另一款A(yù)pp獲得信息嗎?國(guó)內(nèi)知名白帽子公司KEEN GeekPwn實(shí)驗(yàn)室宋宇昊認(rèn)為,目前這一技術(shù)已經(jīng)完全成熟,且有一條共享資源的傳輸鏈路。
“如果某App具有麥克風(fēng)的訪問(wèn)權(quán)限,理論上,此款聊天App可以監(jiān)聽(tīng)周圍環(huán)境的聲音。在此過(guò)程中,聊天App可以將語(yǔ)音輸入的代碼嵌在其App內(nèi)部,用于將人類的語(yǔ)言轉(zhuǎn)換成文字,并上傳到服務(wù)端。服務(wù)端將這些文本進(jìn)行處理后,與對(duì)應(yīng)的用戶進(jìn)行綁定。如果說(shuō)兩個(gè)App之間有業(yè)務(wù)的合作,那么他們將可以共享這項(xiàng)資源,”宋宇昊表示,“按現(xiàn)在的網(wǎng)速和機(jī)器性能,這波操作可以認(rèn)為是實(shí)時(shí)完成的?!?/p>
然而,盡管這一情形在技術(shù)上可以實(shí)現(xiàn),但宋宇昊認(rèn)為,這并不代表相關(guān)App已經(jīng)進(jìn)行了這樣的操作。
騰訊手機(jī)管家安全專家楊啟波對(duì)此表示也認(rèn)同,“有麥克風(fēng)權(quán)限,不一定就會(huì)偷聽(tīng)用戶說(shuō)話?!睏顔⒉ū硎?,盡管麥克風(fēng)“偷聽(tīng)”還很難確定,但出現(xiàn)如此巧合,極有可能是App在利用其他渠道獲取的大數(shù)據(jù)進(jìn)行測(cè)算,“比如根據(jù)你當(dāng)前所處的位置、經(jīng)常光顧的餐廳、之前的搜索習(xí)慣等等數(shù)據(jù)來(lái)預(yù)測(cè)你的潛在需求。
現(xiàn)在的大數(shù)據(jù)智能推薦平臺(tái)已經(jīng)可以通過(guò)多方面來(lái)運(yùn)算,比如某些短視頻App,可能會(huì)根據(jù)你1~2個(gè)小時(shí)候刷新短視頻的習(xí)慣、 停留時(shí)長(zhǎng)……來(lái)推斷你的興趣范圍等?!?/p>
另一家數(shù)據(jù)公司負(fù)責(zé)人則表示,外賣App推送相關(guān)的店鋪有兩方面可能,一是推薦系統(tǒng)的冷啟動(dòng)機(jī)制,即雖然用戶沒(méi)有在App上搜索或者點(diǎn)擊過(guò),但推薦系統(tǒng)會(huì)根據(jù)用戶所在的區(qū)域、年齡層次、時(shí)間段等大范圍數(shù)據(jù)來(lái)做推薦,但也不排除確實(shí)有些App會(huì)利用麥克風(fēng)權(quán)限對(duì)訂餐、店鋪等語(yǔ)音信息進(jìn)行獲取。
指掌易科技相關(guān)技術(shù)負(fù)責(zé)人覺(jué)得出現(xiàn)類似情況純屬巧合,“在國(guó)內(nèi)監(jiān)管日趨嚴(yán)格、對(duì)個(gè)人信息安全保護(hù)重視程度日益加強(qiáng)的背景下,無(wú)論從業(yè)務(wù)本身還是法律范疇來(lái)看,監(jiān)聽(tīng)用戶對(duì)話并不是一個(gè)明智的選擇,這么做只會(huì)給企業(yè)經(jīng)營(yíng)帶來(lái)非常大的風(fēng)險(xiǎn),得不償失。所以基本可以排除某個(gè)App自動(dòng)監(jiān)聽(tīng)的可能?!?/p>
記者手記:沒(méi)有答案的“巧合”
經(jīng)過(guò)3個(gè)多月的測(cè)試,對(duì)于外賣App是否在“偷聽(tīng)”用戶說(shuō)話,答案依然是未知的。
如果說(shuō)是“巧合”,那么巧合的次數(shù)未免太多了些。為了避免出現(xiàn)因搜索、輸入等非語(yǔ)音方式造成數(shù)據(jù)被讀取,后期測(cè)試的App都是重新安裝過(guò)的,甚至對(duì)某些設(shè)備做了刷機(jī)處理,而選擇測(cè)試的,也都是此前從來(lái)沒(méi)有點(diǎn)過(guò),也沒(méi)有在手機(jī)中留下痕跡的菜系。因此,很難解釋為什么會(huì)在測(cè)試中突然出現(xiàn)相關(guān)店鋪,而更難解釋的是,再度刷新后,其他店鋪依然沒(méi)變,只有這家店鋪消失了。
但如果不是“巧合”,從現(xiàn)有的技術(shù)測(cè)試和業(yè)內(nèi)人士的回應(yīng)來(lái)看,似乎通過(guò)麥克風(fēng)“偷聽(tīng)”是一件吃力不討好的事,企業(yè)不太可能做。
可是,有“被偷聽(tīng)”疑問(wèn)的并非只有孫女士和燃玉,涉及的App也不只是外賣。
在社交網(wǎng)站上搜索“App偷聽(tīng)”的關(guān)鍵字,類似案例不勝枚舉。比如,知乎網(wǎng)友“米可”和朋友聊到單位的富貴竹花瓶,當(dāng)天晚些時(shí)候便在淘寶上看到了富貴竹相關(guān)的店鋪推廣;知乎網(wǎng)友“不想起床”在睡覺(jué)之前給寶寶講古埃及文明,隔天便在淘寶上收到了金字塔擺件和木乃伊擺件的推送;還有人表示跟家人對(duì)話說(shuō)要去超市買牙線,晚上打開(kāi)京東,在推薦里就看到了牙線的推薦等等……
然而,無(wú)論覺(jué)得如何不對(duì)勁,這些巧合都沒(méi)有答案。
但另一個(gè)巧合是,今年1月開(kāi)始,陸陸續(xù)續(xù)有大量App更改了自己的隱私政策,隨著國(guó)內(nèi)《網(wǎng)絡(luò)安全法》收緊,歐盟《通用數(shù)據(jù)保護(hù)條例》(簡(jiǎn)稱GDPR)給谷歌等互聯(lián)網(wǎng)巨頭開(kāi)出罰單,對(duì)于用戶的個(gè)人信息獲取、App權(quán)限的索取,中國(guó)的互聯(lián)網(wǎng)公司們明顯變得謹(jǐn)慎許多。也正是今年1月之后,餓了么上再?zèng)]有同類現(xiàn)象在測(cè)試中被發(fā)現(xiàn)。