Win32.Agent.gi,Win32.Agent.gy,Win32.Agent.gz感染型病毒的分析

该病毒具有破坏系统,破坏安全软件,感染文件,局域网传播,下载木马,U盘传播等多种功能
主程序分析:
病毒加载sfc_os.dll并查找其5号导出函数,使得系统的文件保护对于其要修改的qmgr.dll失效,然后病毒从资源中读取数据写到qmgr.dll,并启动对应的服务。
然后把自身复制为C:\WINDOWS\system32\dllcache\lsasvc.dll并在临时目录释放TempDel.bat删除自身

qmgr.dll分析:
初始化:
病毒查看自身所在模块是否是360tray.exe如果是则打开名为360SpShadow0的设备,并向该设备发送IRP。
创建一个事件,事件名4F9E860C-9BE9-474b-8FD1-F0EEDB20C77B
遍历进程查找360tray.exe,如果找到则把自身复制为1l1.dll(同目录),以Create_SUSPENDED方式启动一个360tray.exe进程 然后写入一段代码,包括1l1.dll和Loadlibray函数地址,然后恢复线程
push    6C6C64
push    2E316C31
push    esp
mov    eax, kernel32.LoadLibraryA
call    eax
之后删除1l1.dll。

创建多个线程执行不同操作:
线程1:将qmgr.dll对应的BITS服务启动类型设置为自动。
删除如下HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SafeBoot\Minimal
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SafeBoot\Network破坏安全模式
创建一个名为SvcMain的设备
然后在临时文件夹内创建一个名为SvcMain.sy的驱动,创建名为SvcMain服务,并启动服务。
打开设备 调用ZwQuerySystemInformation查询系统信息
加载系统内核文件
每隔1.5s查找如下进程,并向驱动发送IRP结束下列进程。
KVMonXP.kxp
KVSrvXP.exe
avp.exe
avp.exe
avp.exe
RavMonD.exe
RavTask.exe
RsAgent.exe
rsnetsvr.exe
RsTray.exe
ScanFrm.exe
CCenter.exe
kavstart.exe
kissvc.exe
kpfw32.exe
kpfwsvc.exe
kswebshield.exe
kwatch.exe
kmailmon.exe
egui.exe
ekrn.exe
ccSvcHst.exe
ccSvcHst.exe
ccSvcHst.exe
Mcagent.exe
mcmscsvc.exe
McNASvc.exe
Mcods.exe
McProxy.exe
Mcshield.exe
mcsysmon.exe
mcvsshld.exe
MpfSrv.exe
McSACore.exe
msksrver.exe
sched.exe
avguard.exe
avmailc.exe
avwebgrd.exe
avgnt.exe
sched.exe
avguard.exe
avcenter.exe
UfSeAgnt.exe
TMBMSRV.exe
SfCtlCom.exe
TmProxy.exe
360SoftMgrSvc.exe
360tray.exe
qutmserv.exe
bdagent.exe
livesrv.exe
seccenter.exe
vsserv.exe
MPSVC.exe
MPSVC1.exe
MPSVC2.exe
MPMon.exe
ast.exe
360speedld.exe
360SoftMgrSvc.exe
360tray.exe
修复工具.exe
360hotfix.exe
360rpt.exe
360safe.exe
360safebox.exe
并直接向驱动发送IRP建立上述进程的SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options项。

线程2链接www.**2004.com
然后调用IE访问http://www.**2004.com/msn/mm.htm
做感染统计

线程3:下载 http://www.**2004.com/msn/mm.txt
到templocal.txt这是一个下载列表,里面包含木马下载地址和一个挂马网址,读取下载列表下载木马和病毒并运行。
清空hosts文件
线程3:感染文件
遇到如下盘符则跳过
A:\\
B:\\
并跳过感染如下文件夹
WINDOWS
WinNT
Documents and Settings
System Volume Information
RECYCLER
Common Files
ComPlus Applications
InstallShield Installation Information
Internet Explorer
.Messenger
microsoft frontpage
Movie Maker
MSN Gaming Zone
NetMeeting
Outlook Express
Windows Media Player
Windows NT
WindowsUpdate
WinRAR
感染除上述盘符以及文件夹下的exe,rar,htm,html,asp,aspx文件
对于扩展名为.rar的文件
病毒会调用Program下的
并加%s X -ibck \"%s\" \"%s\\\的参数把压缩包中的文件释放到临时目录。然后感染解压出来的的exe,rar,htm,html,asp,aspx等文件,感染完毕会调用rar.exe加参数%s M -ibck -r -o+ -ep1 \"%s\" \"%s\\*\把压缩包放回。
对于扩展名为.exe的文件,病毒会在其尾部增加一个名为".."的节,并把入口点改在最后一个节。被感染的文件会在临时目录下释放一个病毒文件tem81.exe,运行,然后jmp回入口点。被感染病毒瑞星命名为Win32.Agent.gi,Win32.Agent.gy,Win32.Agent.gz(不同变种)

对于htm,html,asp,aspx的文件
病毒会在其尾部加上iframe挂马脚本,挂马网址来自于之前下载的templocal.txt。

线程4:
局域网传播过程
通过IPC弱口令链接局域网中的机器
病毒本身带有一个弱口令的字典
用户名:Administrator,Guest,admin,Root
密码字典:1234
password
6969
harley
123456
golf
pussy
mustang
1111
shadow
1313
fish
5150
7777
qwerty
baseball
2112
letmein
12345678
12345
ccc
admin
5201314
qq520
1
12
123
1234567
123456789
654321
54321
111
000000
abc
pw
11111111
88888888
pass
passwd
database
abcd
abc123
pass
sybase
123qwe
server
computer
520
super
123asd
0
ihavenopass
godblessyou
enable
xp
2002
2003
2600
alpha
110
111111
121212
123123
1234qwer
123abc
007
a
aaa
patrick
pat
administrator
root
sex
god
xxxyou
xxx
abc
test
test123
temp
temp123
win
pc
asdf
pwd
qwer
yxcv
zxcv
home
xxx
owner
login
Login
pw123
love
mypc
mypc123
admin123
mypass
mypass123
901100
如果连接成功,则将C:\WINDOWS\system32\dllcache\lsasvc.dll拷贝到对方机器的C:\bootfont.exe
获取当前系统时间,并把分钟数加2,调用at %s %d:%d C:\bootfont.exe 指令使得病毒在2分钟后发作。

线程5:感染U盘操作
病毒查找可移动存储设备在其根目录下释放autorun.inf
建立一个名为recycle.{645FF040-5081-101B-9F08-00AA002F954E}的文件夹,把lsasvc.dll复制到该目录下的ghost.exe。

清除建议:
删除C:\WINDOWS\system32\dllcache\lsasvc.dll
删除SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options下面所有子键
找一台干净的机器拷贝一个qmgr.dll到C:\WINDOWS\system32\目录下
安装杀毒软件升级到最新,修复被感染的文件,清除已经下载的病毒和木马。
设置一个强壮的用户名密码。
对于中毒期间连接到本机的可移动存储使用杀毒软件全盘杀毒。局域网中的其他机器也做以上的检查和清理工作


引用:
该病毒更新的变种已不是单独替换qmgr.dll,而是理论上对多个svchost.exe -k netsvcs的服务的ServiceDll都可能进行替换。
再加上其感染exe文件,使问题变得棘手,一次将被改的两三个系统dll重新替换回来之后,重启电脑后,往往因为又运行了被感染的exe文件,会发现这时被修改的系统dll又变了。

至于我为什么知道,那是因为我又有一个同学中了,当时由于被改的系统服务是改变的,我一时没想到是这个的变种,因此没有考虑它是感染型的问题,只当它是可变地修改svchost.exe netsvcs服务的ServiceDll的文件型病毒,结果就是替换了一个dll文件,重启又变成了另外一个dll文件。

等到我把样本拿回来分析,才发现原来是这个,白白在那里浪费了好长时间,看来下次杀毒,要把IDA和OD和其他工具都带上,遇到摸不清楚的病毒现场逆向调试之才行了。

为免回复发在后面大家看不到,特修改主楼以记之。

by 轩辕小聪 2009.10.28

用户系统信息:Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)
最后编辑轩辕小聪 最后编辑于 2009-10-28 05:10:29