磁碟機”病毒分析報告

這是一個MFC寫的感染型病毒。
  病毒運行後首先會在C盤根目錄下釋放病毒驅動NetApi000.sys,該驅動用來恢複SSDT,把殺毒軟件挂的鈎子全部卸掉。然後在 System32路徑下的com文件夾中釋放病毒文件smss.exe、netcfg.dll、netcfg.000、lsass.exe。
然後該程序退出,運行剛剛釋放的lsass.exe。
  lsass.exe運行後,會在com文件夾下重新釋放剛才所釋放的文件,同時會在system32文件夾下釋放一個新的動態庫文件dnsq.dll,然後生成兩個隨機名的log文件該文件是lsass.exe和dnsq.dll的副本,然後進行以下操作:

  1. 從以下網址下載腳本http://www.****.****/*.htm、.....。
  2. 生成名爲”MCI Program Com Application”的窗口。
  3. 程序會刪除注冊表SOFTWARE\Microsoft\Windows\CurrentVersion\Run項下的所有鍵值。
  4. 查找帶以下關鍵字的窗口,查找帶以下關鍵字的窗口,如果找到則向其發消息將其退出:RsRavMon、McShield、PAVSRV…  5. 啓動regsvr32.exe進程,把動態庫netcfg.dll注到該進程中。
  6. 遍曆磁盤,在所有磁盤中添加autorun.inf和pagefile.pif,使得用戶打開磁盤的同時運行病毒。
  7. 通過calcs命令啓動病毒進程得到完全控制權限,使得其他進程無法訪問該進程。
  8. 感染可執行文件,當找個可執行文件時,把正常文件放在自己最後一個節中,通過病毒自身所帶的種子值對正常文件進行加密。
  smss.exe用來實現進程保護,程序運行後會進行以下操作:
  1.創建一個名爲xgahrez的互斥體,防止進程中有多個實例運行。
  2.然後創建一個名爲MSICTFIME SMSS的窗口,該窗口會對三種消息做出反應:
  1.WM_QUERYENDSESSION:當收到該消息時,程序會刪除注冊表SOFTWARE\Microsoft\Windows\CurrentVersion\Run項下的所有鍵值。
  2.WM_TIMER:該程序會設置一個時鍾,每隔0.2秒查找“MCI Program Com Application”窗口,如果找不到則運行病毒程序。   3.WM_CAP_START:當收到該消息時,向其發送退出消息。
  3.把lsass.exe拷貝到C盤根目錄下命名爲037589.log,同時把該文件拷到啓動目錄下實現自啓動。
  dnsq.dll通過挂接全局消息鈎子,把自己注到所有進程中,該動態庫主要用來HOOK API和重寫注冊表。
動態庫被加載後會進行以下操作:
  1. 判斷自己所在進程是否是lsass.exe、smss.exe、alg.exe,如果是則退出。
  2. HOOK psapi.dll中EnumProcessModules、kernel32.dll中 OpenProcess和CloseHandle這幾個API使得殺毒軟件無法查殺病毒進程。
  3. 遍曆進程如果進程名爲lsass.exe、smss.exe、alg.exe則直接退出,如果是其他進程則創建一個線程,該線程每隔2秒進行以下操作:
  1.修改以下鍵值使得用戶無法看到隱藏的受保護的係統文件 
HKEY_CURRENT_USERSoftware\Microsoft\Windows\CurrentVersion\Explorer\Advanced
ShowSuperHidden = 0
  2.刪除以下注冊表鍵值使得用戶無法進入安全模式
HKEY_LOCAL_MACHINE SYSTEM\ControlSet001\Control\SafeBoot\Minimal\
{4D36E967-E325-11CE-BFC1-08002BE10318}
HKEY_LOCAL_MACHINE SYSTEM\CurrentControlSet\Control\SafeBoot\Minimal\
{4D36E967-E325-11CE-BFC1-08002BE10318}
HKEY_LOCAL_MACHINE SYSTEM\ControlSet001\Control\SafeBoot\Network\
{4D36E967-E325-11CE-BFC1-08002BE10318}
HKEY_LOCAL_MACHINE SYSTEM\CurrentControlSet\Control\SafeBoot\Network\
{4D36E967-E325-11CE-BFC1-08002BE10318}
3.刪除以下注冊表項,使得鏡像劫持失效
HKEY_LOCAL_MACHINE SOFTWARE\Microsoft\Windows NT\CurrentVersion\
Image File Execution Options
  4.讀取以下注冊表鍵值,判斷當前係統是否允許移動設備自動運行,如果不允許則修改爲允許
HKEY_LOCAL_MACHINE Software\Microsoft\Windows\CurrentVersion\Policies\Explorer
NoDriveTypeAutoRun
  5.修改以下注冊表項使得手動修改以下鍵值無效
HKEY_LOCAL_MACHINE SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\
Advanced\Folder\SuperHidden
Type = radio
  6.添加以下注冊表項使得開機時,係統會把該動態庫注到大部分進程中
HKEY_LOCAL_MACHINE SOFTWARE\Microsoft\Windows NT\CurrentVersion\
Windows
AppInit_DLLs = %SYSTEM%\dnsq.dll
  7.通過calcs命令啓動病毒進程得到完全控制權限,使得其他進程無法訪問該進程。
  8.查找帶以下關鍵字的窗口,如果找到則向其發消息將其退出:
SREng 介紹、360safe、木、antivir、…
  netcfg.dll主要用來下載文件,動態庫被加載後會從以下網址下載病毒程序
,查找窗口”MCI Program Com Application”如果該窗口不存在則運行下載的程序。

By tony

自由軟體愛好者~喜歡不斷的思考各種問題,有新的事物都會想去學習嘗試 做實驗並熱衷研究 沒有所謂頂天的技術 只有謙虛及不斷的學習 精進專業,本站主要以分享系統及網路相關知識、資源而建立。 Github http://stnet253.github.io

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料