你以為這就是全部了?我們來告訴你完整的XCodeGhost事件

?【前言

這幾天安全圈幾乎被XCodeGhost事件刷屏,大家都非常關注,各安全團隊都很給力,紛紛從不同角度分析了病毒行為、傳播方式、影響面積甚至還人肉到了作者信息。拜讀了所有網上公開或者半公開的分析報告后,我們認為,這還不是全部,所以我們來補充下完整的XCodeGhost事件。

由于行文倉促,難免有諸多錯漏之處,還望同行批評指正。

事件溯源

不久前,我們在跟進一個bug時發現有APP在啟動、退出時會通過網絡向某個域名發送異常的加密流量,行為非常可疑,于是終端安全團隊立即跟進,經過加班加點的分析和追查,我們基本還原了感染方式、病毒行為、影響面。

隨后,產品團隊發布了新版本。同時考慮到事件影響面比較廣,我們立即上報了CNCERT,CNCERT也馬上采取了相關措施。所以從這個時間點開始,后續的大部分安全風險都得到了控制——可以看看這個時間點前后非法域名在全國的解析情況。

接到我們上報信息后,CNCERT發布了這個事件的預警公告。我們也更新了移動APP安全檢測系統“金剛”。

圖1 CNCERT發布的預警公告

9月16日,我們發現AppStore上的TOP5000應用有76款被感染,于是我們向蘋果官方及大部分受影響的廠商同步了這一情況。

9月17日,嗅覺敏銳的國外安全公司paloalto發現了這個問題,并發布第一版分析報告

接下來的事情大家都知道了,XCodeGhost事件迅速升溫,成為行業熱點,更多的安全團隊和專家進行了深入分析,爆出了更多信息。

被遺漏的樣本行為分析

1)在受感染的APP啟動、后臺、恢復、結束時上報信息至黑客控制的服務器

上報的信息包括:APP版本、APP名稱、本地語言、iOS版本、設備類型、國家碼等設備信息,能精準的區分每一臺iOS設備。

上報的域名是icloud-analysis.com,同時我們還發現了攻擊者的其他三個尚未使用的域名。

圖2 上傳機器數據的惡意代碼片段

2)黑客可以下發偽協議命令在受感染的iPhone中執行

黑客能夠通過上報的信息區分每一臺iOS設備,然后如同已經上線的肉雞一般,隨時、隨地、給任何人下發偽協議指令,通過iOS openURL這個API來執行。

相信了解iOS開發的同學都知道openURL這個API的強大,黑客通過這個能力,不僅能夠在受感染的iPhone中完成打開網頁、發短信、打電話等常規手機行為,甚至還可以操作具備偽協議能力的大量第三方APP。

圖3 控制執行偽協議指令的惡意代碼片段

3)黑客可以在受感染的iPhone中彈出內容由服務器控制的對話框窗口

和遠程執行指令類似,黑客也可以遠程控制彈出任何對話框窗口。至于用途,將機器硬件數據上報、遠程執行偽協議命令、遠程彈窗這幾個關鍵詞連起來,反正我們是能夠通過這幾個功能,用一點點社工和誘導的方式,在受感染的iPhone中安裝企業證書APP。裝APP干什么?還記得幾個月之前曝光的Hacking Team的iPhone非越獄遠控(RCS)嗎?

圖4 控制遠程彈窗的惡意代碼片段

4)遠程控制模塊協議存在漏洞,可被中間人攻擊

在進行樣本分析的同時,我們還發現這個惡意模塊的網絡協議加密存問題,可以被輕易暴力破解。我們嘗試了中間人攻擊,驗證確實可以代替服務器下發偽協議指令到手機,成為這些肉雞的新主人。

圖5 存在安全漏洞的協議解密代碼片段

值得一提的是,通過追查我們發現植入的遠程控制模塊并不只一個版本。而現已公開的分析中,都未指出模塊具備遠程控制能力和自定義彈窗能力,而遠程控制模塊本身還存在漏洞可被中間人攻擊,組合利用的威力可想而知。這個事件的危害其實被大大的低估了。

感染途徑

分析過程中我們發現,異常流量APP都是大公司的知名產品,也是都是從AppStore下載并具有官方的數字簽名,因此并不存在APP被惡意篡改的可能。隨后我們把精力集中到開發人員和相關編譯環境中。果然,接下來很快從開發人員的xcode中找到了答案。

我們發現開發人員使用的xcode路徑Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/Library/Frameworks/CoreServices.framework/下,存在一個名為CoreServices.framework的“系統組件”,而從蘋果官方下載的xcode安裝包,卻不存在這些目錄和“系統組件”。

圖6 被感染惡意代碼的xcode包路徑

原來開發人員的xcode安裝包中,被別有用心的人植入了遠程控制模塊,通過修改xcode編譯參數,將這個惡意模塊自動的部署到任何通過xcode編譯的蘋果APP(iOS/Mac)中。

水落石出了,罪魁禍首是開發人員從非蘋果官方渠道下載xcode開發環境。

通過百度搜索“xcode”出來的頁面,除了指向蘋果AppStore的那幾個鏈接,其余的都是通過各種id(除了coderfun,還有使用了很多id,如lmznet、jrl568等)在各種開發社區、人氣社區、下載站發帖,最終全鏈到了不同id的百度云盤上。為了驗證,團隊小伙伴們下載了近20個各版本的xcode安裝包,發現居然無一例外的都被植入了惡意的CoreServices.framework,可見投放這些帖子的黑客對SEO也有相當的了解。

圖7 XCodeGhost作者在知名論壇上發布xcode的下載帖

進一步來看,攻擊者做到的效果是只要是通過搜索引擎下載xcode,都會下載到他們的XCodeGHost,還真的做到了幽靈一樣的存在。

影響面

在清楚危害和傳播途徑后,我們意識到在如此高級的攻擊手法下,被感染的可能不只一個兩個APP,于是我們馬上對AppStore上的APP進行檢測。

最后我們發現AppStore下載量最高的5000個APP中有76款APP被XCodeGhost感染,其中不乏大公司的知名應用,也有不少金融類應用,還有諸多民生類應用。根據保守估計,受這次事件影響的用戶數超過一億。

后記

經過這一事件后,開發小伙伴們紛紛表示以后只敢下官方安裝包,還要MD5和SHA1雙校驗。而這個事件本身所帶來的思考,遠不止改變不安全的下載習慣這么簡單。

經過這兩年若干次攻擊手法的洗禮后,我們更加清醒的意識到,黑產從業者早已不是單兵作戰的腳本小子,而是能力全面的黑客團隊。

總結來看,移動互聯網安全之路任重道遠。當然,這里的危機也是安全行業的機遇。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,321評論 6 543
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,559評論 3 429
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 178,442評論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,835評論 1 317
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,581評論 6 412
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,922評論 1 328
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,931評論 3 447
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 43,096評論 0 290
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,639評論 1 336
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,374評論 3 358
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,591評論 1 374
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,104評論 5 364
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,789評論 3 349
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,196評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,524評論 1 295
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,322評論 3 400
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,554評論 2 379

推薦閱讀更多精彩內容

  • 雖然XcodeGhost事件的風波已經過去,但是整個事件本事還是值得每個開發者進行研究和思考的,轉一篇騰訊安全應急...
    LannisZheng閱讀 15,593評論 0 5
  • day19《看見》 第二次看這本書了 每次看都會被文字帶入情況中 “人們還能笑的時候,是不容易被打敗的” “當一...
    Molly_zhang閱讀 190評論 0 0
  • 在口干舌燥的門口等你,發現這個地方總讓人猶豫,我在猶豫面子和錢的問題,發現你對我已經沒有了興趣。
    6蟲閱讀 241評論 1 1
  • 橫波媚眼泄春光, 帶露紅唇醉酒妝。 素手難能描艷骨, 丹青何解畫皮囊。 從來美貌三分態, 自古風流兩段香。 可笑閨...
    莫愁Jessie閱讀 181評論 0 3
  • 殺死一個西瓜 分食它的血肉 為這夏天帶來森森陰涼 反正他是個西瓜 他不會痛也不會悲傷 拆開一個禮盒 取出它的內臟 ...
    卿常笑閱讀 428評論 0 1