這幾天,相信iOS開發(fā)者都頻繁的被 XcodeGhost 刷屏了!互聯(lián)網(wǎng)上相關(guān)的各種分析及猜測(cè)都層出不窮,事件愈演愈烈,涉事 App 名單也在不斷增加,不乏知名App。
也許感受到了壓力,今日凌晨,自稱XcodeGhost的作者發(fā)布了致歉聲明,聲稱XcodeGhost源于自己的試驗(yàn),沒(méi)有任何威脅性行為,并公開其源碼。
然而,這真的只是一次試驗(yàn)么?試驗(yàn)性的東西至于始作俑者煞費(fèi)苦心的到處上傳,傳播注入過(guò)的 Xcode 么?
作為一名程序猿,我們還是要保持良好的習(xí)慣,安全意識(shí)絕對(duì)不能少。開發(fā)工具一定要從官方渠道獲?。?/strong>當(dāng)然大家會(huì)說(shuō),不是我不想,是網(wǎng)絡(luò)環(huán)境太差啊!
在這里給大家插播一個(gè)福利:
騰訊 Bugly團(tuán)隊(duì)提供了一個(gè)鏡像服務(wù),提供各類開發(fā)工具和資源的下載(都是從官方渠道獲得的),其中,也包括Xcode。大家可以通過(guò)閱讀原文訪問(wèn)。
大家如果因?yàn)榫W(wǎng)絡(luò)環(huán)境無(wú)法從官方渠道下載Xcode,可以試試用這個(gè)鏡像服務(wù)。
通過(guò)各種逆向分析及作者公布的源碼中,我們看看這種“木馬”到底具有什么樣的能力:
通過(guò)向域名為icloud-analysis.com的服務(wù)器上報(bào)包括APP版本、APP名稱、本地語(yǔ)言、iOS版本、設(shè)備類型、國(guó)家碼等信息。
如果只是上報(bào)信息的話,我等天朝人民早就習(xí)以為常了吧?基本可以忽略此類信息泄露。
通過(guò)應(yīng)答包可以下發(fā)指令,利用openUrl這個(gè)系統(tǒng)接口跳轉(zhuǎn),可以干的事包括跳轉(zhuǎn)至其它App,打開指定網(wǎng)頁(yè),發(fā)短信,打電話等。
需要說(shuō)明的是,除了利用Safari打開特定網(wǎng)頁(yè),其它行為的都會(huì)有用戶確認(rèn)環(huán)節(jié),不會(huì)在用戶無(wú)感知情況下就可以完成操作。
所以彈框內(nèi)容一定要看??!一定要看?。∫欢ㄒ窗。。ㄖ匾氖虑檎f(shuō)三遍)
那么下發(fā)指令操作會(huì)帶來(lái)哪些威脅呢?
譬如誘導(dǎo)用戶安裝企業(yè)證書簽名的App,然后可以通過(guò)該App調(diào)用系統(tǒng)私有接口做更多的事情,例如前段時(shí)間曝光的 Hacking Team 的非越獄遠(yuǎn)程控制(RCS),基本可以接管你的iPhone了。
當(dāng)然,在最新的iOS 9系統(tǒng)中,所有的企業(yè)證書簽名應(yīng)用都需要額外的證書信任操作環(huán)節(jié),所以不會(huì)受到太大的威脅。
然而在低版本iOS系統(tǒng)中,如果突然彈框要求用戶確認(rèn)安裝某應(yīng)用,估計(jì)會(huì)有部分用戶不假思索的點(diǎn)了確定,埋下了巨大的安全隱患。
目前注入App的惡意代碼上報(bào)的服務(wù)器已經(jīng)處于關(guān)閉狀態(tài),上述威脅都暫時(shí)不存在。然而一旦某天該服務(wù)器又打開了,那么受影響的App開發(fā)商完全掌控不了局面?。?!
這也是該次事件最無(wú)奈的地方——開發(fā)商只能采取發(fā)公告撫慰用戶情緒,發(fā)布新版本等措施修復(fù)漏洞,其它的無(wú)能為力啊。
那么看完熱鬧后,各位開發(fā)者有沒(méi)有檢查過(guò)自己安裝的Xcode是否受到感染?
檢測(cè)Xcode是否受到感染的方法:
· 比較官網(wǎng)版本安裝包和本地已安裝版本安裝包的SHA值
· 檢查Xcode安裝目錄是否存在惡意代碼的庫(kù)文件
官網(wǎng)版本的Xcode目錄結(jié)構(gòu)的SDKs目錄下沒(méi)有Library目錄,而XcodeGhost版本則有此目錄并包含CoreService,其目錄結(jié)構(gòu)如下:/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/Library/Frameworks/CoreServices.framework/CoreService
如果發(fā)現(xiàn)存在受感染版本的Xcode,開發(fā)者需要立即采取如下措施:
· 刪掉受感染的 Xcode
· 官方渠道(App Store,developer.apple.com)下載 Xcode ,需要注意的是,不要用迅雷等加速服務(wù)。
如果確認(rèn)Xcode受到了感染,還是趕緊解決并編譯新版本App進(jìn)行更新吧。
最后的最后,好東西必須安利:
Bugly團(tuán)隊(duì)一直秉承專業(yè)嚴(yán)謹(jǐn)?shù)难邪l(fā)流程,一直都堅(jiān)持從官方渠道獲取開發(fā)工具,且通過(guò)我們內(nèi)部的持續(xù)集成服務(wù)(RDM)進(jìn)行構(gòu)建,所以完全沒(méi)有受到此次事件的影響,大家可以安心的使用。
One More Thing!
現(xiàn)在緊急更新版本還是適配下iOS 9的新特性吧?
Bugly最新的iOS SDK已經(jīng)支持iOS 9新特性: Bitcode和App Transport Security(ATS),趕緊用起來(lái)吧!