偷天換日——新型瀏覽器劫持木馬“暗影鼠”分析

wyzsk發表於2020-08-19
作者: 騰訊電腦管家 · 2016/05/31 12:06

0x00 背景


近日哈勃分析系統截獲了一批新型瀏覽器劫持木馬 “暗影鼠”,該木馬通常被打包在壓縮包內偽裝影片播放器透過網頁進行傳播。該木馬的主要功能是對瀏覽器訪問導航頁的流量進行劫持,重定向到自己的推廣頁,非法獲取推廣利潤。該木馬最早出現是在今年的4月末,5月初開始小範圍傳播,但是從5月23開始突然爆發,高峰期全網中此木馬使用者數超過30W每日,保守估計近期木馬作者以此獲利總額有近百萬元人民幣。

傳播趨勢

0x02 木馬介紹


“暗影鼠”啟動後首先釋放大批子檔案,如下圖所示

釋放檔案列表圖

主要子檔案功能:

  • cBLK.dll 木馬核心功能模組,注入瀏覽器程式,流量劫持
  • newts.exe 64位系統下kill瀏覽器程式
  • undoing.exe 獲取木馬作者後臺的推廣列表
  • run.bat 清空瀏覽器快取和臨時檔案
  • clk.ini 木馬使用的配置檔案

“暗影鼠”核心作惡流程

該木馬在釋放了一批子檔案之後,列舉當前系統中的程式,與設定好的國內主流瀏覽器程式名進行對比,如果發現這些瀏覽器程式的存活,則殺掉相應程式,並且生成一個相應被感染的瀏覽器主程式的可執行檔案。然後拉起這個被感染的假瀏覽器程式,假瀏覽器程式會載入之前釋放的核心功能dll,然後再dll中hook關鍵系統函式,進行流量劫持。

0x02 主要功能模組技術分析


1.遍歷程式殺瀏覽器程式

程式名比較程式碼段

列舉程式,尋找國內主流瀏覽器程式名。在此本文以chrome瀏覽器為例,對木馬母體的TerminateProcess函式下斷點,檢視第一個引數。

結束chrome程式

檢視控制程式碼的含義

procxp中檢視控制程式碼含義

控制程式碼對應的就是chrome程式

工作管理員中檢視chrome的程式ID

可見木馬母體中去殺的程式就是chrome.exe。

2.“狸貓換太子”假瀏覽器出場

殺掉真的chrome之後,木馬母體在chrome.exe的同級目錄下建立了下邊兩個檔案。

釋放被感染的chrome

上圖中的exe就是一個被感染的chrome,會在啟動時載入cBLK.dll,然後執行其內部包含的真正的chrome.exe。

假的chrome啟動後,我們用spy++檢視當前的瀏覽器視窗歸屬

spy++檢視視窗的程式歸屬

假chrome程式樹

0:000> ?9d4
Evaluate expression: 2516 = 000009d4

0x9d4轉成10進位制就是2516

可以看到現在使用的chrome就是被感染的chrome。

3.cBLK目的何在

偵錯程式附加假chrome

由上圖可知假chrome載入了cBLK.dll,這個dll的主要功能就是hook系統關鍵函式。

主要Hook點

hook LoadLibraryExw

阻止載入列表

這個hook點的主要目的就是防止安全軟體的瀏覽器安全模組載入。

hook WSASend發現對導航頁的訪問時

監控的導航頁列表

構造302頁面

發現對上述導航頁的訪問,則構造相應的302跳轉頁面。

hook WSARecv將對應的302頁面返回,達到劫持目的

返回302頁面

上圖中的程式碼是在cBLK的WSARecv的hook函式中找到的,後邊會呼叫真正的WSARecv,使得瀏覽器誤以為接收到了302跳轉頁面,達到劫持目的。

4.其他技術點

啟動被感染的瀏覽器程式,該樣本還使用了監控瀏覽器桌面快捷方式點選的方法,非主要技術點在此不展開介紹。該樣本也hook其他模組載入和網路傳送接收函式,道理和上邊說的一致,也不重複了。

哈勃分析系統目前對此樣本的已經查殺。

本文章來源於烏雲知識庫,此映象為了方便大家學習研究,文章版權歸烏雲知識庫!

相關文章