病毒分析:“磁碟机”病毒分析报告

互联网 | 编辑: 杨剑锋 2008-03-21 13:48:00转载-投稿

这是一个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.  程序会删除注册表SOFTWAREMicrosoftWindowsCurrentVersionRun项下的所有键值。
  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:当收到该消息时,程序会删除注册表SOFTWAREMicrosoftWindowsCurrentVersionRun项下的所有键值。
  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_USERSoftwareMicrosoftWindowsCurrentVersionExplorerAdvanced
ShowSuperHidden = 0
  2.删除以下注册表键值使得用户无法进入安全模式
HKEY_LOCAL_MACHINE SYSTEMControlSet001ControlSafeBootMinimal
{4D36E967-E325-11CE-BFC1-08002BE10318}
       HKEY_LOCAL_MACHINE SYSTEMCurrentControlSetControlSafeBootMinimal
{4D36E967-E325-11CE-BFC1-08002BE10318}
       HKEY_LOCAL_MACHINE SYSTEMControlSet001ControlSafeBootNetwork
{4D36E967-E325-11CE-BFC1-08002BE10318}
HKEY_LOCAL_MACHINE SYSTEMCurrentControlSetControlSafeBootNetwork
{4D36E967-E325-11CE-BFC1-08002BE10318}
       3.删除以下注册表项,使得镜像劫持失效
       HKEY_LOCAL_MACHINE SOFTWAREMicrosoftWindows NTCurrentVersion
Image File Execution Options
  4.读取以下注册表键值,判断当前系统是否允许移动设备自动运行,如果不允许则修改为允许
HKEY_LOCAL_MACHINE SoftwareMicrosoftWindowsCurrentVersionPoliciesExplorer
       NoDriveTypeAutoRun
  5.修改以下注册表项使得手动修改以下键值无效
HKEY_LOCAL_MACHINE SOFTWAREMicrosoftWindowsCurrentVersionExplorer
AdvancedFolderSuperHidden
       Type = radio
  6.添加以下注册表项使得开机时,系统会把该动态库注到大部分进程中
HKEY_LOCAL_MACHINE SOFTWAREMicrosoftWindows NTCurrentVersion
Windows
       AppInit_DLLs = %SYSTEM%dnsq.dll.
  7.通过calcs命令启动病毒进程得到完全控制权限,使得其他进程无法访问该进程。
  8.查找带以下关键字的窗口,如果找到则向其发消息将其退出:
SREng 介绍、360safe、木、antivir、…
 
  netcfg.dll主要用来下载文件,动态库被加载后会从以下网址下载病毒程序
http://js.k0102.com/data.gif,查找窗口”MCI Program Com Application”如果该窗口不存在则运行下载的程序。

相关阅读

每日精选

点击查看更多

首页 手机 数码相机 笔记本 游戏 DIY硬件 硬件外设 办公中心 数字家电 平板电脑