iOS遭遇最大危機(jī)?Xcode事件波及數(shù)十主流App數(shù)億用戶
9月18日,微信朋友圈開始流傳一篇報(bào)道,一些第三方渠道下載的iOS開發(fā)工具Xcode被插入惡意代碼,開發(fā)者用此工具編譯的X軟件都自動(dòng)被裝入了木馬,網(wǎng)易云音樂被證明中招。隨后的幾個(gè)小時(shí),就像多米諾骨牌,數(shù)十個(gè)iOS App被證明受此影響,其中不乏用戶量巨大打開率極高的APP, 12306手機(jī)客戶端、滴滴打車(已更名為滴滴出行)、中信銀行行動(dòng)卡空間、高德地圖、網(wǎng)易公開課(又是網(wǎng)易)、中國聯(lián)通手機(jī)營業(yè)廳、簡書、豌豆莢開眼、51卡保險(xiǎn)箱、同花順等數(shù)十個(gè)APP的某些版本都曾被此開發(fā)工具感染。而在記者準(zhǔn)備截稿時(shí),知道創(chuàng)宇團(tuán)隊(duì)曝光微信之前的某個(gè)版本也中招……
(圖:目前已知有后門的iOS App)
Xcode到底是何方神圣?
Xcode 是蘋果公司提供的開發(fā)OS X和 iOS上的集成開發(fā)工具(IDE)。換句話說,如果想開發(fā)在Mac系統(tǒng)和iPhone手機(jī)上的應(yīng)用,Xcode基本上就是不二之選。
但考慮到直接訪問蘋果官方站點(diǎn)下載Xcode太慢等原因,許多程序員為了方便,會(huì)不選擇從蘋果網(wǎng)站直接下載官方提供的Xcode,而是選擇從各大論壇、網(wǎng)盤上找第三方資源提供的Xcode程序。正是這個(gè)“圖方便”給惡意代碼形成了可乘之機(jī)。
為何此事影響如此巨大?
根據(jù)i春秋學(xué)院信息安全專家李肖介紹,本次事件的始作俑者網(wǎng)名為“coderfun”(目前真實(shí)身份尚未查到),他在Xcode中加入了一段代碼,可將一些用戶的數(shù)據(jù)信息傳送到了一個(gè)假冒的蘋果官網(wǎng)(目前該網(wǎng)站已經(jīng)關(guān)閉)。
李肖介紹,攜帶惡意代碼的Xcode壓縮包文件先是被發(fā)布到了Douban, SwiftMi, CocoaChina, OSChina等幾個(gè)論壇網(wǎng)站,然后又在百度云出現(xiàn)了大量下載文件。此外,它還成功感染了迅雷的離線服務(wù)器,也就是說,如果程序員常用下載軟件是迅雷的話,就算輸入蘋果官網(wǎng)的地址下載下來的 dmg 仍然有可能是被修改過的!
應(yīng)該承認(rèn),這種直接把惡意代碼嵌入了開發(fā)工具源頭的另類傳播方式讓其在傳播廣度上獲得了非常好的效果——初步估計(jì),目前受影響的用戶已經(jīng)達(dá)到數(shù)億級(jí)別。
永信至誠創(chuàng)始人、被稱為國內(nèi)白帽黑客之父的蔡晶晶在接受采訪時(shí)稱,這次事件足以載入移動(dòng)安全的史冊(cè),其對(duì)蘋果開發(fā)工具感染的技巧堪與著名的伊朗鈾濃縮設(shè)備被蠕蟲損壞的震網(wǎng)事件相提并論。震網(wǎng)事件由于西門子工業(yè)開發(fā)集成工具WinCC中被入侵者感染了惡意代碼,使與WinCC連接的工業(yè)控制系統(tǒng)被間接感染,最后導(dǎo)致了大量伊朗核工業(yè)設(shè)備物理損壞。
用戶如何規(guī)避?
應(yīng)該說,本次事件在爆發(fā)后,由于上傳網(wǎng)站服務(wù)器已經(jīng)關(guān)閉,目前已經(jīng)暫時(shí)不會(huì)再產(chǎn)生威脅。但此前已經(jīng)上傳的數(shù)據(jù),已經(jīng)無法挽回。目前查明上傳的數(shù)據(jù)內(nèi)容并不算勁爆,但Apple ID是肯定有的,因此用戶需要盡快修改iCloud的密碼。而且襲擊者的目的并不明確,為防止未來的損失,尤其是用戶如果有其他信息與之綁定,也要盡快處理,如果iCloud上傳了勁爆隱私照片,保佑入侵者快被繩之于法吧。
事件的反思
此次事件讓蘋果系統(tǒng)的安全性再次遭到質(zhì)疑。事實(shí)上,i春秋研究部人員早在2015年3月就已經(jīng)注意到斯諾登曾經(jīng)披露了一篇關(guān)于MAC OS和IOS開發(fā)套件的資料,截圖如下:
上述的資料顯示:NSA曾經(jīng)討論過Xcode(4.1)SDK的控制思路:利用安插在該SDK中的后門程序,加載特定的動(dòng)態(tài)庫文件,修改IOS系統(tǒng)的安全策略,實(shí)現(xiàn)將IOS系統(tǒng)下的所有APP(應(yīng)用程序)的數(shù)據(jù)將傳送到指定的監(jiān)聽端口。這些至少表明,蘋果App Store的審查機(jī)制一直都有疏漏的。
但需要看到,這件事情更需要引起的反思是國內(nèi)的企業(yè)程序員和開發(fā)團(tuán)隊(duì)。雖然問題的直接原因是程序員未能嚴(yán)謹(jǐn)?shù)厥褂媒?jīng)過校檢的Xcode 開發(fā)工具,但企業(yè)開發(fā)團(tuán)隊(duì)流程的疏漏、開發(fā)人員安全觀念的淡薄,尤其是企業(yè)內(nèi)部安全管控審核不嚴(yán)才是更深層次的因素。所有的開發(fā)公司和開發(fā)者都需要引以為戒,安全隱患一直潛伏待發(fā)。