1.受感染App打開后會不斷向特定服務器發送收集到的系統信息,包括:時間,應用名稱及版本,本地語言,操作系統版本,設備類型,國家碼等等。
2.受感染App在受感染iPhone中彈出內容由服務器控制的對話框窗口?! codeGhost作者通過第一個功能獲得的信息來精確區分不同iPhone用戶,然后再通過第二個功能實現進一步地攻擊:可能是偽裝成內購頁面來套取你的iCloud密碼;也可能是偽裝成支付失敗,請到某某支付寶付款的字樣,來獲得金錢等等。
當然,這種攻擊也是非常好識破的。比如XcodeGhost在偽裝內購彈窗時,你會發現它需要你輸入Apple ID。但用過蘋果的朋友都知道,Apple ID在iOS系統內部屬于優先級很高的信息,內購彈窗一般都會默認填好Apple ID賬號(除了AppStore之外),只需要你輸入密碼。所以一旦你發現需要手動輸入Apple ID賬號的應用彈窗,基本可以確定就是XcodeGhost的釣魚行為了。
Apple公司這次有多大責任?
可能絕大多數人都會責怪蘋果:不管你的護城河建得多么堅固,不管你的應用審核多么嚴格,不管你的硬件多么“自足”,最終你還是被攻破了呀。
對,這次XcodeGhost事件可以算是蘋果有史以來最大的安全事件。但蘋果這回確實比較“倒霉”,因為遇上了源碼病毒。
蘋果不可能逆向分析每一個應用 首先對于蘋果的AppStore而言,這種病毒是無法檢測出來的。為什么?蘋果的應用商店審核只能確定App調用了哪些系統API,而這些被允許調用的API都是經過了重重檢驗,基本不可能跳出系統沙盒去獲取非法信息。
但除此之外,蘋果根本無法通過有限的人力物力去靜態分析一個App到底能夠怎么彈窗,就算你給了它們源代碼也做不到。(如果可以的話,那就表示蘋果每上架一款程序,都會將其代碼整個逆向分析一遍,這個根本不可能做到)
那么有人會問了,這種攻擊難道就無法避免了?確實,這種程度上的安全我們只能寄托于開發者的素質,但顯然系統自身的沙盒隔離也是非常關鍵的一點。
譬如iOS開發者就將Apple ID設計成了很高優先級的東西,病毒制造者無法獲取到該信息,那么他的釣魚彈窗就和真實的內購彈窗區別開來了,這就是系統沙盒的作用所在。
誠然,蘋果這回就算沒有問題也是有問題。但追究其XcodeGhost傳播的根源,國內封閉的網絡環境確實是主要因素。(當然,開發人員“不干凈不校驗”的習慣也存在問題)
現在我們該如何做?
說到這里,其實大家也發現這次的“大危機”其實并沒有我們想象中那么嚴重。
首先,XcodeGhost大面積獲取的信息都是常規信息,并不包含你個人的隱私資料。其次,包括各種彈窗在內的釣魚攻擊,其實也比較好分辨,你只要看哪個需要你輸入Apple ID就行了。
最后,筆者也忠告,假如你最近曾經遇到過在第三方應用輸入Apple ID的事情,請馬上修改。假如你現在不記得了,也請馬上修改,這樣比較保險。
原文轉自:http://tech.sina.com.cn/mobile/n/n/2015-09-22/doc-ifxhytwp5513912.shtml