<span id="7ztzv"></span>
<sub id="7ztzv"></sub>

<span id="7ztzv"></span><form id="7ztzv"></form>

<span id="7ztzv"></span>

        <address id="7ztzv"></address>

            原文地址:http://drops.wooyun.org/papers/9136

            0x01 問題描述和速查方法


            此次XcodeGhost病毒并不僅僅只篡改Xcode的dmg安裝文件,百度安全實驗室發現Unity3D也同樣被插入了惡意代碼。Unity是由Unity Technologies開發的用于創建諸如三維視頻游戲、實時三維動畫等類型互動內容的多平臺的綜合型游戲開發工具,Unity可發布游戲至Windows、OS X、Wii、iPhone、Windows phone 8和Android平臺。但目前安全實驗室搜集到的樣本只有感染iOS app,還未發現感染安卓或是Windows平臺代碼

            目前我們觀察到Unity OS X平臺和Windows平臺的安裝包版本4.x至5.1.x(范圍可能更大), 64/32位版本均有被修改的現象,被修改后文件均沒有數字簽名,在文件安裝前可以很容易的區分開,對于OS X下dmg文件中包含的pkg文件,可以使用 pkgutil –check-signature Unity.pkg來進行檢查。這里附上Windows和OS X下正確版本數字簽名校驗的截圖:

            病毒作者修改了libiPhone-lib-il2cpp.a文件, 在其中增加了libiPhone-lib-il2cpp.a-arch-masterx.x.o,其中arch為具體的架構名,并修改了project.pbxproj的配置信息。libiPhone-lib-il2cpp.a在 mac平臺下位于./Unity/Unity.app/Contents/PlaybackEngines/iossupport/Trampoline/Libraries/ libiPhone-lib-il2cpp.a,windows平臺上的路徑為:Unity/Editor/Data/PlaybackEngines/iossupport/Trampoline/Libraries/libiPhone-lib-il2cpp.a

            快速自查方法:由于.a是復合的archive文件,解壓比較麻煩,可以直接檢查./iossupport/Trampoline/Unity-iPhone.xcodeproj/project.pbxproj中,是否含有”-ObjC”字符串,如果有則屬于被感染版本。下圖左側為受感染文件,右側為正常文件。

            0x02 代碼邏輯


            整體來說,Unity上受感染的惡意代碼行為和XcodeGhost行為基本一致,更詳細的信息可參看之前關于XcodeGhost分析。通過這些分析,可以見到,惡意代碼作者有著很強的躲避檢測的動機。下圖是OS X平臺上的一個受感染文件libiPhone-lib-il2cpp.a-armv7-master.o

            0x03制作時間


            通過對于惡意DMG和官方DMG中的文件信息,我們能夠非常清楚的看到惡意代碼作者進行打包修改文件的時間,以unity-4.6.6.dmg為例:

            可以看出,UnityGhost作者在今年6月29日下午進行的修改操作。

            下面是我們搜集到的官方發布版本和樣本篡改時間的時間軸:

            <span id="7ztzv"></span>
            <sub id="7ztzv"></sub>

            <span id="7ztzv"></span><form id="7ztzv"></form>

            <span id="7ztzv"></span>

                  <address id="7ztzv"></address>

                      亚洲欧美在线