恢復出廠設置都沒用,安卓木馬病毒xHelper究竟該如何清除?

恢復出廠設置都沒用,安卓木馬病毒xHelper究竟該如何清除?

xHelper,一種於2019年3月被發現的木馬病毒,主要被用作其他惡意軟件(包括但不限於銀行木馬、勒索軟件等)的傳播工具,據說曾在不到5個月的時間裡就成功感染了3.2萬部智能手機和平板電腦。

卡巴斯基實驗室於近日發文稱,即使時間已經過去了一年,但xHelper如今的活躍度完全沒有減弱。另外,一旦這種木馬病毒進入你的安卓設備,由它下載並安裝的惡意軟件就很難被清除,即使是恢復出廠設置。

xHelper的工作原理

根據卡巴斯基實驗室的說法,xHelper通常被偽裝成清理和加速APP,但實際上完全不具備其描述中的功能。

一旦安裝完成,你將無法在主屏幕或程序菜單中看到它的圖標。當然,如果你確實想和它見上一面,那麼你可以移步到系統設置中的已安裝應用程序列表。

恢復出廠設置都沒用,安卓木馬病毒xHelper究竟該如何清除?

圖1.已安裝應用程序列表

xHelper的有效載荷經過加密處理,位於“/assets/firehelper.jar”,其主要任務是將一些有關受感染設備的信息(android_id、製造商、型號、固件版本等)上傳到hxxps://lp.cooktracking[.]com/v1/ls/get並下載一個惡意模塊——Trojan-Dropper.AndroidOS.Agent.of。

恢復出廠設置都沒用,安卓木馬病毒xHelper究竟該如何清除?

圖2.解密URL以發送設備信息

解密和啟動有效載荷涉及到使用附帶的本地庫,這種方法使得惡意軟件分析變得尤為困難。

釋放程序Trojan-Dropper.AndroidOS.Helper.b 將首先被解密並啟動,然後運行的將會是Downloader.AndroidOS.Leech.p,以進一步感染設備。

分析顯示,Leech.p的任務是下載Trojan.AndroidOS.Triada.dd 以及一系列將用於獲取root權限的漏洞利用代碼。

恢復出廠設置都沒用,安卓木馬病毒xHelper究竟該如何清除?

圖3.解碼Leech.p的C&C地址

恢復出廠設置都沒用,安卓木馬病毒xHelper究竟該如何清除?

圖4.下載Triada木馬

在獲取到root權限後,xHelper可以直接在系統分區中安裝惡意文件。

其中一些文件會安裝到“/system/bin”文件夾下:

  • patches_mu8v_oemlogo — Trojan.AndroidOS.Triada.dd
  • debuggerd_hulu —AndroidOS.Triada.dy
  • kcol_ysy — HEUR:Trojan.AndroidOS.Triada.dx
  • /.luser/bkdiag_vm8u_date — HEUR:Trojan.AndroidOS.Agent.rt

也有一些文件會被安裝到“system/xbin”文件夾下:

  • diag_vm8u_date
  • patches_mu8v_oemlogo

由於用於從xbin 文件夾中調用的文件的調用被添加在install-recovery.sh文件中,這允許惡意軟件在系統重新啟動時自動運行。此外,由於目標文件夾中的所有文件都被分配了不可修改的屬性,這使得刪除惡意軟件非常困難,因為安卓系統甚至不允許超級用戶刪除具有該屬性的文件。

不僅如此,xHelper的開發人員還使用了另外一種惡意軟件保護技術——修改系統庫/system/lib/libc.so。這個庫幾乎包含安卓設備上所有可執行文件使用的通用代碼,而通過替換libc中mount函數(用於裝在文件系統)的代碼,便可以防止受害者以寫模式掛載到/system 分區進而刪除惡意文件。

我們該如何應對?

從上面的分析我們不難看出,僅僅是清除xHelper 並不能徹底淨化被感染的系統。因為,安裝在系統分區中的安裝程序(com.diag.patches.vm8u)會在第一時間重新安裝xHelper和其他惡意軟件。

恢復出廠設置都沒用,安卓木馬病毒xHelper究竟該如何清除?

圖5.無需用戶交互的安裝程序

幸運的是,如果你在設備上設置了恢復模式,那麼則可以嘗試使用從原始固件中提取的libc.so文件替換受感染的文件,然後再從系統分區中刪除所有惡意軟件。

當然,直接重新刷機會更為簡單可靠。但我們提醒,在刷機時一定要使用從可靠途徑獲得的固件,因為一些固件也存在預裝惡意軟件的情況。


分享到:


相關文章: