7
本文作者: fenggou | 2015-09-19 00:13 | 專題:頂級(jí)黑客:那些改變iOS安全帝國(guó)的漏洞 |
【編者按】本文來自烏云漏洞平臺(tái)@蒸米、@迅迪。
我們蘋果設(shè)備上的APP都是由蘋果Xcode開發(fā)工具所編寫,但Xcode體積過于龐大,如果在蘋果官方商店安裝會(huì)非常緩慢,于是很多開發(fā)者會(huì)在網(wǎng)盤或迅雷下載。但這些非官方渠道的Xcode竟然暗藏殺機(jī),利用開發(fā)者感染了企業(yè)上架的APP……
所以這次事件的邏輯是:
黑客將包含惡意功能的Xcode重新打包,發(fā)到各大蘋果開發(fā)社區(qū)供人下載;
來自于各企業(yè)內(nèi)的開發(fā)者下載安裝了包含惡意代碼的Xcode編寫APP;
惡意Xcode開始工作,向這些APP注入信息竊取功能;
被注入惡意功能的APP通過審核上架蘋果官方商店;
用戶在蘋果商店安裝了這些被感染的APP;
那么,現(xiàn)在已經(jīng)發(fā)現(xiàn)被感染的APP有哪些呢?
0x00 目前發(fā)現(xiàn)的部分被感染APP
微博用戶@圖拉鼎 在本機(jī)上測(cè)試發(fā)現(xiàn),已有10余個(gè)知名App中招:
網(wǎng)易云音樂(已回應(yīng)確認(rèn))
滴滴出行
12306
中國(guó)聯(lián)通手機(jī)營(yíng)業(yè)廳
高德地圖
簡(jiǎn)書
豌豆莢的開眼(已回應(yīng)確認(rèn))
網(wǎng)易公開課
下廚房
51卡保險(xiǎn)箱
同花順
中信銀行動(dòng)卡空間
仍然不短增長(zhǎng)中……
微博用戶@not_so_bad 發(fā)現(xiàn),微信 v6.2.5版受影響,@騰訊用戶服務(wù) 其微博下評(píng)論確認(rèn)存在,并表示目前最新版微信已修復(fù)。
目前微博、推特上仍有網(wǎng)友發(fā)現(xiàn)有新應(yīng)用存在問題。
烏云建議,使用非官方渠道下載Xcode的iOS開發(fā)者請(qǐng)立刻展開自查,并對(duì)受影響版本進(jìn)行處理。雖然目前還沒發(fā)現(xiàn)問題應(yīng)用會(huì)盜取用戶敏感信息,但建議用戶能開啟iCloud二次驗(yàn)證,并保持良好的使用習(xí)慣。
0x01 序
事情的起因是@唐巧_boy在微博上發(fā)了一條微博說到:一個(gè)朋友告訴我他們通過在非官方渠道下載的 Xcode 編譯出來的 app 被注入了第三方的代碼,會(huì)向一個(gè)網(wǎng)站上傳數(shù)據(jù),目前已知兩個(gè)知名的 App 被注入。
隨后很多留言的小伙伴們紛紛表示中招,@誰敢亂說話表示:”還是不能相信迅雷,我是把官網(wǎng)上的下載URL復(fù)制到迅雷里下載的,還是中招了。我說一下:有問題的Xcode6.4.dmg的sha1是:a836d8fa0fce198e061b7b38b826178b44c053a8,官方正確的是:672e3dcb7727fc6db071e5a8528b70aa03900bb0,大家一定要校驗(yàn)?!绷硗膺€有一位小伙伴表示他是在百度網(wǎng)盤上下載的,也中招了。
0x01 樣本分析
在@瘋狗 @longye的幫助下,@JoeyBlue_ 為我們提供了病毒樣本:CoreService庫文件,因?yàn)橛脦н@個(gè)庫的Xcode編譯出的app都會(huì)中毒,所以我們給這個(gè)樣本起名為:XCodeGhost。CoreService是在”/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/Library/Frameworks/CoreServices.framework/”目錄下發(fā)現(xiàn)的。
用ida打開,發(fā)現(xiàn)樣本非常簡(jiǎn)單,只有少量函數(shù)。主要的功能就是先收集一些iPhone和app的基本信息,包括:時(shí)間,bundle id(包名),應(yīng)用名稱,系統(tǒng)版本,語言,國(guó)家等。如圖所示:
隨后會(huì)把這些信息上傳到 init.icloud-analysis.com。如圖所示:
http://init.icloud-analysis.com并不是apple 的官方網(wǎng)站,而是病毒作者所申請(qǐng)的仿冒網(wǎng)站,用來收集數(shù)據(jù)信息的。
目前該網(wǎng)站的服務(wù)器已經(jīng)關(guān)閉,用whois查詢服務(wù)器信息也沒有太多可以挖掘的地方。這說明病毒作者是個(gè)老手,并且非常小心,在代碼和服務(wù)器上都沒有留下什么痕跡,所以不排除以后還會(huì)繼續(xù)做作案的可能。
0x03 思考&總結(jié)
雖然XCodeGhost并沒有非常嚴(yán)重的惡意行為,但是這種病毒傳播方式在iOS上還是首次。也許這只是病毒作者試試水而已,可能隨后還會(huì)有更大的動(dòng)作,請(qǐng)開發(fā)者務(wù)必要小心。
這個(gè)病毒讓我想到了UNIX 之父 Ken Thompson 的圖靈獎(jiǎng)演講 “Reflections of Trusting Trust”。他曾經(jīng)假設(shè)可以實(shí)現(xiàn)了一個(gè)修改的 tcc,用它編譯 su login 能產(chǎn)生后門,用修改的tcc編譯“正版”的 tcc 代碼也能夠產(chǎn)生有著同樣后門的 tcc。也就是不論 bootstrap (用 tcc 編譯 tcc) 多少次,不論如何查看源碼都無法發(fā)現(xiàn)后門,真是細(xì)思恐極啊。
0x04 后續(xù)
我們將持續(xù)跟進(jìn)這次事件。不過在網(wǎng)上,其實(shí)還有很多令人思考的地方,在文末也順帶給大家摘抄一部分:
微博用戶@Saic
拿文件看了一下,這個(gè)木馬劫持了所有系統(tǒng)的彈窗(例如 IAP 支付),然后向目標(biāo)服務(wù)器發(fā)送了加密數(shù)據(jù),目前還不知怎么解密發(fā)出去的請(qǐng)求
Drops讀者yoyokko
基本確定病毒先將信息post到服務(wù)器,收到服務(wù)器返回后,connectiondidfinishloading里調(diào)用response的block代碼,里面彈出alertview,如果這個(gè)alertview不是用來偽裝icloud密碼輸入框豈不是被人發(fā)現(xiàn)了?不確定服務(wù)器是否有開關(guān)來選擇性的彈出alertview。另外病毒有部分字符串被加密,病毒里還自帶encrypt和decrypt函數(shù),居心叵測(cè)!!千萬別以為只上傳了部分非隱私的信息就放松警惕!
Drops讀者小奧
除了@圖拉鼎 曝光的幾個(gè)受到 XcodeGhost.Blackdoor 病毒的 App 外,我在 App Store 前50名里還找到了 @喜馬拉雅FM 這個(gè) App。另外,根據(jù)自測(cè),我本人購(gòu)買的 @名片全能王 和 @掃描全能王 同時(shí)中招。 今天自查的 app 出現(xiàn)此后門的有 滴滴出行 高德地圖 喜馬拉雅FM 名片全能王、掃描全能王、下廚房、51卡保險(xiǎn)箱、同花順、中信銀行動(dòng)卡空間、中國(guó)聯(lián)通手機(jī)營(yíng)業(yè)廳、簡(jiǎn)書、豌豆莢-開眼、網(wǎng)易公開課、網(wǎng)易云音樂、滴滴出行、12306。
Drops讀者flz
有可能哦,曾經(jīng)出現(xiàn)過在桌面沒有什么操作也好幾次莫名的彈出要求輸入icloud密碼的框框的現(xiàn)象,不知道和這個(gè)有沒有關(guān)系。另外,我看了路由器上privoxy的日志,那個(gè)域名最早是9.1出現(xiàn)的。
Drops讀者jijiji
想不通為啥這幫寫代碼的放著正版的,一鍵下載安裝的,自動(dòng)升級(jí)的xcode不用,非要跑去網(wǎng)盤上下xcode。而且網(wǎng)易這么大的公司對(duì)開發(fā)工具和環(huán)境沒有管理么,沒有流程么?感覺好山寨啊
為照顧用戶體驗(yàn),部分技術(shù)分析已做精簡(jiǎn)。欲了解更多細(xì)節(jié)以及開發(fā)者防范方案,可進(jìn)入烏云平臺(tái)原文查看。
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。