IOS 設備的安全一直為業(yè)界所重視,日前企業(yè)安全領域領導者 Palo Alto Networks 撰文分析了最近幾個月所發(fā)現(xiàn)的新木馬“TinyV”。在今年的 10 月份,Palo Alto 發(fā)現(xiàn)了一個惡意的負載文件瞄準了 IOS 的越獄設備,經過調查后發(fā)現(xiàn),Palo Alto 認為該文件屬于一個名為“TinyV”的新型 IOS 木馬家族。在 12 月,有中國用戶指出他們的設備受到了這個惡意軟件的影響。
經過進一步的深入研究后,Palo Alto 發(fā)現(xiàn)該惡意文件已經被重新打包并植入到一些 IOS 應用中,而這些 IOS 應用往往可以通過多個渠道進行下載(非 App Store 渠道)。在接下來的篇幅里,我們將會討論“TinyV”是如何工作以及如何傳播的。
重新打包和傳播
“TinyV”被重新打包進一些為越獄設備而“準備”的應用中,受影響的 IOS 應用不少。經過重新打包后,這些應用被上傳到網(wǎng)絡并提供用戶下載。
用戶有可能通過 xx 助手下載到這些受感染的應用,在一些應用的官網(wǎng)上供下載的應用,也不見得是十分安全。我們往往在 IOS 設備上訪問這些網(wǎng)站的下載鏈接的時候會被跳轉到描述文件頁面并讓用戶安裝,這些被標榜為企業(yè)級應用的應用往往需要用戶手動開啟驗證,才可以在設備上使用該應用。
需要指出的是,“TinyV”重新打包的方式和之前的 IOS 或者 OSX 惡意應用不太一樣(和之前著名的 WireLurker 也不一樣)。例如在某個受感染的播放器應用的 IOS 安裝文件“com.某某.ipa”中,往往存在著兩個執(zhí)行文件。一個是主要的執(zhí)行文件 Mach-O ,而另一個則是名為“xg.png”的 Mach-O 動態(tài)庫文件。在主要執(zhí)行文件的導入表中,最后的導入入口是“@executable_path/xg.png”。這意味著在應用被執(zhí)行后,“xg.png”的文件將會被加載。
而在其它受感染的應用中,除了主要的 Mach-O 執(zhí)行文件外,也會出現(xiàn)一些額外的 Mach-O 動態(tài)庫文件:“dj.png”, “macro_off@2x.png和zippo_on@2x.png” 。“TinyV”的作者修改了原來的應用文件,并增加這些動態(tài)庫文件到導入表中。
被加載的“xg.png”文件將會通過調用方法來連接到 C2 服務器并取得配置信息。被 C2 提供的配置將會指向一個 ZIP 文件的 URL,并被指定為一個帶有“zipinstall”值的 “shName”。
在這個被感染的應用中, “macro_off@2x.png” 將會訪問同一個 C2 服務器的另一個頁面來獲取其配置。這次“debUrl”值使用 XOR 算法加密。盡管代碼混淆,但使用關鍵的 “0xaf”加密,卻依然可以顯示相同的 URL。
惡意行為
從 C2 服務器獲得配置后,“TinyV”將會從授予的“debUrl” 值中下載 ZIP 文件。這里調查的 ZI P文件被托管在另一個 C2 服務器apt[.]appstt.com 上,目前該 URL 地址出現(xiàn) 404 錯誤。不過據(jù)說在 10 月底開始調查的時候,這個 URL 是可以訪問的,并且“deb.zip”文件也可以下載。
在這個“deb.zip”文件中,包含了 4 個文件:
safemode.deb(saurik 官方提供的 MobileSafety 插件)
freeDeamo/usr/bin/locka(實施惡意行為的 Mach-O 執(zhí)行文件)
freeDeamo/Library/LaunchDaemons/com.locka.plist(一個 PLIST 文件,用于在 IOS 作為一個守護進程配置“l(fā)ocka”)
freeDeamo/zipinstall(命令進程文件)
下載和解壓這個ZIP文件后,xg.png 將會執(zhí)行 zipinstall 腳本來安裝 locka 和 com.locka.plist。
locka 文件主要執(zhí)行的“TinyV”惡意行為包括:
連接 C2 服務器來獲得遠程指令
在后臺安裝指定的 IPA 文件或 DEB 文件
在后臺卸載指定的 IPA 應用或 DEB 包
改變 /etc/hosts 文件
值得一提的是,研究人員還發(fā)現(xiàn)了一個名為“ClassStaticFunctionHook”的函數(shù),目前該函數(shù)只被用于鉤住廣告的 SDK 代碼。然而它有可能在被感染的應用中產生更危險的后果。
影響
在 12 月 12 日,“TinyV”開始通過一個名為“XZ Helper”的插件來進行傳播,許多用戶都發(fā)現(xiàn)了 XY Helper 插件出現(xiàn)在他們的 IOS 設備中。由于“TinyV”的代碼執(zhí)行和大量的 C2 服務器指令,即使刪除了該插件還是會被重新安裝。不少用戶指出了這個問題,目前受該惡意程序影響的設備似乎只出現(xiàn)在中國。
最后,Palo Alto 建議用戶如果沒有必要的話切勿輕易越獄,又或者是不要安裝任何來自未知來源的企業(yè)級應用。