黑客李偉:我所見證的移動安全歷史

大家好~我是@史中,我的日常生活是開撩五湖四海的科技大牛,我會嘗試各種姿勢,把他們的無邊腦洞和溫情故事講給你聽。如果你特別想聽到誰的故事,不妨加微信(微信號:shizhongst)告訴我,反正我也不一定撩得到。

不想走丟的話,你也可以關注我的自媒體公眾號“淺黑科技”。


? ? ? ? ? ? ? ? ? ? ? ? ? ? -------正文分割線-------


黑客李偉:我所見證的移動安全歷史

文 | 史中

得以見證一個行業(yè)破土而出,從孱弱到璀璨,是職業(yè)生涯的某種幸運。這也許會成為值得珍藏的回憶標本。

李偉就是這樣一名移動安全的老兵。在移動安全這個概念誕生之前的1998年,他正坐在摩托羅拉的辦公室里,為尋呼機的系統(tǒng)開發(fā)核心組件?,F(xiàn)在回想起來,中國的移動科技爆發(fā),似天水蕩平川,正是始于哪些人們腰間的“小黑盒”。就這樣,他和中國最早的移動設備,以及現(xiàn)在已經(jīng)到了知天命之年的第一批移動通信用戶聯(lián)系在了一起。

【李偉】


在李偉眼中,這段將近20年的歷史,和自己最為蓬勃的歲月緊密相連,有一種別樣的溫情。

摩托羅拉、塞班,移動安全的洪荒時代

大學畢業(yè)后做了三年 Windows 應用開發(fā)的李偉覺得,Windows 的系統(tǒng)變得越來越龐大,甚至有些公式化。就在這個時候,嵌入式系統(tǒng)獨特的技術(shù)美感吸引了他。偶然的機會,他看到了如日中天的摩托羅拉尋呼機業(yè)務正在招賢納士,從此開始了移動設備的職業(yè)生涯。

當時好一點的尋呼機要2000多塊錢,很貴。但我們辦公室每個人的抽屜一拉開,滿滿全是各種尋呼機。

李偉饒有興趣地回憶。

【摩托羅拉尋呼機】


一部尋呼機的系統(tǒng)固然簡單,但是卻有著著豐富的技術(shù)細節(jié)。李偉舉例,尋呼臺的基站是以廣播的形式對外發(fā)送信號。所有的尋呼機都可以收到,但是必須只有一部尋呼機能解釋出這個信號,這其中涉及到的號碼識別和尋呼協(xié)議技術(shù)正是他參與研發(fā)的。

然而,隨著世紀之交臨近,短暫霸占人們生活的尋呼機迅速被手機拉下神壇。李偉也順理成章地成為中國第一批手機的開發(fā)專家??v然從界面和易用性來講,彼時的手機可以用簡陋來形容。但即使如此,安全技術(shù)也是必不可少的。

當時的環(huán)境下,并沒有漏洞和利用漏洞提權(quán)的安全概念。因為手機系統(tǒng)是特殊的資源,需要對手機設計完全不同于 PC 的一整套權(quán)限訪問模式,來限制惡意資源訪問。比如“drm”,就是一種限制資源訪問次數(shù)和轉(zhuǎn)發(fā)的系統(tǒng)。而且,在當時我們也設計了硬件層、驅(qū)動層、應用層的防護系統(tǒng),以防止任何一個層次可能出現(xiàn)的漏洞。

李偉告訴史中,這是他最早涉及到的安全項目。

然而,他隱隱感到一種不安,因為在他的想象中,一部手機應該搭載復雜一些的操作系統(tǒng)。這個想法最終促使他在2005年加入了后來名聲大噪的塞班(Sybian)。

彼時塞班還沒有被諾基亞收購,他作為這個智能系統(tǒng)在中國的第一個工程師,負責塞班對整個中國市場開發(fā)者的技術(shù)輔導和對接。

因為我有很多移動設備嵌入式開發(fā)經(jīng)驗,所以對于手機系統(tǒng)的底層邏輯非常熟悉。越是到系統(tǒng)底層,各個系統(tǒng)的邏輯相似度越高,在內(nèi)核層,塞班、Android、iOS 的邏輯都是非常類似的。而和系統(tǒng)底層相關的應用,只有安全這一個類別。

李偉如此解釋自己走上移動安全道路的原因。也正是在這個時候,移動系統(tǒng)的安全問題真正開始浮現(xiàn)。

在當時,手機病毒雖然是稀有物種,但是對于手機系統(tǒng)商和軟件開發(fā)商來說,已經(jīng)成為不容忽視的問題。開發(fā)反病毒軟件的團隊們,也成為了李偉辦公室的???。例如后來名噪一時的網(wǎng)秦,例如一個名為“信安易”的手機殺毒軟件,后來成為了360手機衛(wèi)士。

中國第一批 Root 安卓的人

2010年,3Q大戰(zhàn)爆發(fā)。現(xiàn)在看來,這場商業(yè)史上的經(jīng)典戰(zhàn)爭成為了中國移動安全技術(shù)軍備競賽的元年。那一年,帶著摩托羅拉和塞班系統(tǒng)這兩個移動通信史上最大的光環(huán),李偉已經(jīng)成為了中國當時為數(shù)不多炙手可熱的手機安全專家。

準備火力全開的騰訊向他伸出了橄欖枝,李偉就此組建移動安全實驗室。

“安卓底層的對抗,簡單說就是注入和反注入的能力對抗。當時騰訊在這方面的能力比較弱,我可以說是臨危受命?!崩顐セ貞浀馈嶋H上,回看當時的手機江湖,Android 只有一歲,用李偉的話說,不僅是騰訊,所有人對于 Android 的安全構(gòu)架,“都處在一個朦朧的狀態(tài)”。

【世界上第一臺 Android 手機 HTC G1】


為了對抗病毒和惡意軟件,李偉必須找到一種技術(shù),從應用層一直打通內(nèi)核層拿到系統(tǒng)的底層權(quán)限。這其中的核心技術(shù),就是我們現(xiàn)在熟知的 Root。只是在當時,這個詞還未被發(fā)明。

2011年初,李偉憑借經(jīng)驗斷定,這種能“突破系統(tǒng)結(jié)構(gòu)的技術(shù)”是存在的。而且,另一件事佐證了他的判斷。

LBE 的張勇是我的朋友,他是國內(nèi)第一個做出 Android Root 的人, 他既然做出來了,我就相信這件事肯定可以做。

當年6月,李偉帶著兩個兄弟,開始了“底層權(quán)限控制技術(shù)”的研究。這項技術(shù)的難度在于,不僅要求研究者掌握 Android 的底層邏輯,還要對上層的服務層和框架層有深刻的理解。對于李偉來說,他仍然需要從零開始補足 Android 系統(tǒng)的上層邏輯。那段時間,每天工作到夜里兩三點,是他的常態(tài)。

雖然現(xiàn)在對于 Android 系統(tǒng)的 Root 技術(shù),可以在網(wǎng)絡上找到現(xiàn)成的開源技術(shù)和架構(gòu)。但是當年在沒有任何參考的情況下,能把 Root 搞出來,還是很有難度的。

李偉說。

兩個月之后,實驗室成功地向騰訊交付了這個“底層權(quán)限控制技術(shù)”。他不無驕傲地回憶,這個技術(shù)“領先了對手半年時間”。

這位中國第一批 Root Android 系統(tǒng)的大牛,并沒有對我過多回憶其中的困難。但從零開始構(gòu)建 Root 的世界觀,可以想見他使出了怎樣的“洪荒之力”。

病毒戰(zhàn)爭

在完成了 Root 技術(shù)開發(fā)之后,移動安全實驗室接到了新的任務,那就是提高手機管家對于手機病毒的查殺能力。

“Android 是一個新平臺,當時惡意軟件爆發(fā),所有業(yè)界的殺軟查殺率都不好。業(yè)界急需一個有病毒捕捉能力的體系?!彼f。

病毒往往隱藏在 App 中進行傳播。而業(yè)界普遍認為,一個對于 App 的自動分析處理系統(tǒng)是最好的解決方案。但是,李偉對當時騰訊采用的分析系統(tǒng)構(gòu)架并不滿意,他決定操刀做一些改進,從而提高病毒識別的準確率。

想要分辨出病毒的難點在于,你必須知道一個 App 到底有哪些惡意行為。

例如讀取電話本、上傳資料。這兩個動作本身沒問題,但是如果一個程序先讀了你的電話本,然后把它上傳到服務器,這個動作就很可疑。

然而難點也正在這里,單獨判斷程序讀電話本和上傳資料都很簡單,但是把這兩個動作的邏輯關系識別出來,就有很大的難度,需要分析程序的執(zhí)行流程,或者說需要虛擬執(zhí)行。

李偉設計的系統(tǒng),簡單來說就是用盡可能準確的諸多行為模型對大量的 App 進行篩查。在2011年的時候,這個系統(tǒng)一天會篩查幾萬個文件。而為了保證準確性和改進系統(tǒng),還會有大量的人工復檢?!按蟾琶總€人每天要審計好幾百個 App 的代碼”,李偉回憶。

讓李偉欣慰的是,這些辛苦沒有白付,優(yōu)化了一年之后,在2012年騰訊的手機病毒檢測能力終于到了國內(nèi)領先的水平,而且在一次國際測評中拿到了滿分的成績。

除此之外,李偉對于初期殺毒引擎的設計一直不滿意。用他的話說,設計的“有點糙”。

例如一個游戲的安裝包可能達到80M,在手機上的殺毒引擎就會把這80M的文件全部放到內(nèi)存中,再進行檢測。這種處理方法會占用很多內(nèi)存,而且檢測的時間很長。

我們設計了一種方法,向系統(tǒng)申請很小片的內(nèi)存用于病毒掃描。一個80M 的 APK 安裝包里,很可能真正的代碼只有 4M,其他的都是資源和圖片。這種情況下,只需要把可能包含惡意程序的代碼部分放到內(nèi)存里檢測就可以完全實現(xiàn)病毒查殺。

這個原理聽上去很簡單,對于實驗室的技術(shù)水平來說,實現(xiàn)起來也并不復雜。事實證明,他們用這種技術(shù),實現(xiàn)了殺毒速度十倍的提升。團隊發(fā)現(xiàn),他們發(fā)明的這項技術(shù)已經(jīng)走在了病毒查殺的前列,所以還專門申請了專利?!斑@導致競爭對手必須采用其他的技術(shù)路線。”李偉說。

深夜追兇

雖然整個中國的手機殺毒軟件技術(shù)在飛速進步,但是在利益的驅(qū)使下,惡意軟件的蓬勃之勢絲毫沒有減弱。李偉講述了在2012年,他遇到的最為奇葩,最為忍無可忍的惡意軟件。

【2012年,Android 系統(tǒng)惡意軟件的分類情況】


病毒檢測系統(tǒng)捕捉到了一個惡意程序,我們照例對它進行人工篩查。我們發(fā)現(xiàn)這個病毒會在微信等流行的程序上面覆蓋一層窗口,惡意推廣它的廣告,誘導用戶下載其他 App。可惡的是,它還會有一些交互的按鈕,給用戶的感覺就像是微信在推送這些廣告一樣。更可惡的是,它還會根據(jù)入侵的 App 不同,改變按鈕的風格,讓用戶覺得渾然一體。

做了很多年反病毒工作的李偉覺得忍無可忍,黑客居然躺到了自家微信的門口“為非作歹”。更可怕的是,通過利用 Android 的系統(tǒng)權(quán)限,這個病毒可以獲取很多用戶的隱私信息。

李偉和團隊經(jīng)過分析惡意軟件的代碼,發(fā)現(xiàn)了它用于控制和回連的服務器地址。而經(jīng)過公開資料的查詢,居然很容易就定位到了病毒作者的真實姓名和地址。和上層溝通之后,騰訊決定報警。

從發(fā)現(xiàn)病毒,到分析研究,定位犯罪分子,到報案出警,所有的事情都發(fā)生在一天之內(nèi)。我記得當天深夜,公安需要團隊出人連夜去江蘇配合辦案,我們團隊的人有很多都沒有把身份證帶在身上。好在有帶了身份證的同事,都沒有來得及回家,就直接買票去了江蘇。當天就把犯罪分子緝拿歸案了。

現(xiàn)在想起這個“深夜追兇”的故事,李偉仍然難掩內(nèi)心的波瀾。對于大部分的病毒,殺毒軟件只能做到攔截和查殺,但是像這次一樣斬草除根的行動并不多。對于他來說,做手機安全十多年,眼前的場景讓他堅信了自己工作的價值。

保衛(wèi) App

2013年,李偉注意到了一個特別的趨勢,那就是很多病毒不再把注意力集中在 Android 系統(tǒng)之上,而是直接“搞 App ”。有了這個想法之后,李偉開始研發(fā)一套監(jiān)測 App 漏洞的系統(tǒng),并且本能地對自家的微信等 App 進行測試。這一查不要緊,他確實發(fā)現(xiàn)了自家產(chǎn)品存在很多問題,這讓團隊驚出一身冷汗,緊急對微信等核心產(chǎn)品做了修補。

于是李偉注意到,“應用安全”很可能是未來一個非常重要的安全方向。于是他把移動安全實驗室的工作重心放到了“應用漏洞”的研究上。

相比攻擊 Android 系統(tǒng),攻擊 App 的成本很低。而且 App 和用戶最近,里面有很多個人的信息。這些都是黑產(chǎn)最為關心的。通過入侵 App 拿到個人通訊錄或者關系鏈,比入侵系統(tǒng)之后再拿這些數(shù)據(jù)要簡單得多。

李偉說。

對于一個 App 來說,最常見的漏洞有以下幾種情況:

1、很多 App 中會使用 Webview 內(nèi)嵌瀏覽器,如果安全機制做得不夠,這里就有可能成為攻擊入口。用戶通過 Webview 打開一個惡意url,就會執(zhí)行遠程攻擊代碼。

2、一些 App 也可能通過自身的協(xié)議聯(lián)網(wǎng)。在這種情況下,黑客可以通過“中間人攻擊”或者“偽造服務器”的方法,向客戶端發(fā)送惡意代碼。

3、在 Android 系統(tǒng)中存在一個 App 之間的相互調(diào)用機制。如果調(diào)用接口安全性不高的話,App 1 就可以利用 App2 執(zhí)行一些惡意代碼,從而竊取 App 內(nèi)的隱私信息。

通俗來說,如果一個聊天 App 被攻擊,那么很可能受害者掃一下二維碼,就被盜取了他的通訊錄和關系鏈,而如果漏洞厲害的話(這樣的漏洞也屢次被發(fā)現(xiàn)),是可能跨 App 攻擊的。

他說,從某種程度上來說,找到 App 的漏洞比找到操作系統(tǒng)漏洞更難,因為攻擊需要入口,而 App 對外開放的接口,遠沒有操作系統(tǒng)對外開放的接口那么多。他說:

App漏洞利用和系統(tǒng)漏洞利用不同。

系統(tǒng)的使用者是 App, App 可能調(diào)用所有的系統(tǒng)接口。

而 App 的使用者是人,人一般只會使用有限的幾個接口,例如:網(wǎng)絡訪問、語音、掃碼、信息鍵入。

所以我們只能通過這些接口做文章。

李偉的 App 漏洞挖掘思路,在某種程度上和騰訊的另一位大牛,研究系統(tǒng)漏洞的吳石有些相似。

這種輸入特定數(shù)據(jù)的方法,本質(zhì)上是虛擬執(zhí)行。我們必須從這些接口輸入特定的數(shù)據(jù),造成 App 的運行錯誤,從而發(fā)現(xiàn)和利用漏洞。

數(shù)據(jù)輸入動作很大程度上是自動化的。我們根據(jù)經(jīng)驗發(fā)現(xiàn) App 的薄弱環(huán)節(jié),然后利用自動化的工具生成一些極端的數(shù)據(jù),以此來觀察 App 的不同反應。

隱形的對手

App 漏洞研究是一件苦差事,因為 App 在大多數(shù)情況下并不是標準化的。對于研究者而言,雖然經(jīng)驗可以復用,但對于不同的 App 都要分別開展研究。而且,由于 App 安全受國家和用戶群的限制,并沒有系統(tǒng)漏洞受關注。但是李偉覺得移動安全實驗室的工作意義非凡。

我們對市面上 Top 200 和用戶量較大的 App 都會進行研究。從13年到今天,總共發(fā)現(xiàn)了100多個高危漏洞,這些漏洞覆蓋了10億用戶。

理論上來說,對于 App 的漏洞利用非常隱蔽。如果已經(jīng)有黑產(chǎn)竊取了某些 App 的用戶資料,也只會在竊取的當時產(chǎn)生流量,不會留下數(shù)據(jù)包等證據(jù)。李偉告訴雷鋒網(wǎng),在行業(yè)中對于某 App 的用戶信息究竟有沒有遭到竊取,很難產(chǎn)生官方的統(tǒng)計。所以李偉和團隊的對手其實是“隱形”的。他們的所有努力,都是以想象中的敵人為對手,在對手發(fā)現(xiàn)并且利用漏洞之前先行封堵。如果以每個高危漏洞攻擊一個用戶算來,他們已經(jīng)阻止了潛在的1000億次進攻。

雖然對手從不露面,但是李偉不敢有絲毫懈怠。某種意義上來說,他更像名將蒙恬,卻匈奴七百里,筑長城而守藩籬。

正是因為這片戰(zhàn)場上駐守著諸多如李偉一樣的百戰(zhàn)名將,才使方寸之間的虛擬世界運行如常。

再自我介紹一下吧。我是 ?史中,是一個傾心故事的科技記者。我的日常是和各路大神聊天。如果想和我做朋友,可以關注微博:史中方槍槍,或者加我微信:shizhongst。

不想走丟的話,你也可以關注我的自媒體公眾號“淺黑科技”。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容