病毒名称(中文):
武装广告下载器72711
病毒别名:
威胁级别:
★☆☆☆☆
病毒类型:
木马下载器
病毒长度:
72711
影响系统:
Win9xWinMeWinNTWin2000WinXPWin2003
病毒行为:
这是一个感染型的病毒下载器。它会感染除指定文件夹外的所有exe文件。假如中毒机器在局域网内,病毒将试图通过共享传播自身。另外,它还会破坏大多数流行杀软的运行。
1)0042404C>call;Delphi程序初始化函数
2)00424056>call
该函数的功能是:
1。比较进程程序名是否是.EXE(文件名为空,十六进制编码为6个\0xA1),假如是,则运行c:\windows\explorer.exed:(或C:,因为病毒会把自身拷贝到各盘根目录并以.EXE命名,然后写入autorun.inf文件)这样打开D盘(或C盘等)时,inf执行,打开.EXE程序。
2。查找当前目录是否有deskto.ini文件,有则删除之
3。比较进程程序名是否是scvhosL.exe,若不是,说明程序没有以scvhosL.exe被拷贝到系统文件夹下,则拷贝程序到c:\window\system32\drivers\scvhosL.exe,然后,WinExec执行scvhosL.exe,终止进程。
4。若当前程序是被感染的程序,则生成一个BAT文件,内容如下
:try1
del"D:\software\ProcXP\Procexp.exe"
ifexist"D:\software\ProcXP\Procexp.exe"gototry1
ren"D:\software\ProcXP\Procexp.exe.exe""Procexp.exe"
ifexist"D:\software\ProcXP\Procexp.exe.exe"gototry2
"D:\software\ProcXP\Procexp.exe"
:try2
del%0
运行这个BAT文件
然后提取文件尾部中原来EXE文件的内容写到新文件Procexp.exe.exe,然后遍历当前进程,查看有没有
scvhosL.exe,若有,当前进程直接退出,若没有,拷贝一份病毒程序到system32\drivers文件夹下,然后再退出当前进程。
3)0042405Bcall
该功能函数的作用是设置定时器,并创建新线程。
其定时器回调函数和创建的线程所做的工作有:
1遍历A-Z盘寻找可用的的驱动器盘符,写入一个aoturun.inf文件,若根目录下原本有autorun.inf文件,则生成一个批处理文件删除之,再写入新的autorun.inf,然后拷贝自身到.EXE文件(文件名为空,十六进制编码为6个\0xA1).
2遍历所有文件夹,除指定的文件夹外,在每个文件夹下写入一个DeskTop.ini文件,内容为GetLocalTime得到并格式化后的日期。感染除指定文件夹外的所有EXE文件,将病毒复制到EXE文件,原文件的内容写在尾部。
3得到本机IP地址,创建socket测试网络是否连接。寻找局域网内的机器,枚举共享资源,以administrator空密码试探进入,将病毒以Cool_GameSetup.exe为名拷贝到共享,然后得到远程机器时间,NetScheduleJobAdd加入一个任务,在指定时间内执行此程序。病毒创建10个线程来执行这个工作。
代码如下
00423EF4call;.3.1函数:设置1个定时器
00423EF9call;.3.2函数:创建1个新线程
00423EFEmovax,0A
00423F02call;.3.3函数:该函数将循环创建10个线程
00423F07C3retn
其中,.
3.1设置定时器,函数代码如下:
004222C4<pushoffset;00421D6C=offset
004222C9push1770
004222CEpush0
004222D0push0
004222D2call;jmp到USER32.SetTimer
004222D7movdwordptrds:[],eax
004222DCretn
该定时器回调函数的作用是:遍历A-Z盘寻找可用的的驱动器盘符,写入一个aoturun.inf文件,若根目录下原本有autorun.inf文件,则生成一个批处理文件删除之,再写入新的autorun.inf,然后拷贝自身到.EXE文件(文件名为空,十六进制编码为6个\0xA1).
其中批处理文件内容为:
rmdir/s/qD:\autorun.inf
del%0
Autorun.inf文件内容为:
[AutoRun]
OPEN=.exe
shell\open=打开(&O)
shell\open\Command=.exe
shell\open\Default=1
shell\explore=资源治理器(&
3.2函数:创建1个新线程的代码,
00420314<>>pushecx
00420315>pushesp
00420316>push0
00420318>push0
0042031A>pushoffset;线程函数
0042031F>push0
00420321>push0
00420323>call;jmp到kernel32.CreateThread
00420328>popedx
00420329>retn
所创建的线程的作用是:遍历所有文件夹,除指定的文件夹外,在每个文件夹下写入一个DeskTop.ini文件,内容为GetLocalTime得到并格式化后的日期。感染除指定文件夹外的所有EXE文件,将病毒复制到EXE文件,原文件的内容写在尾部。
3.3函数:用循环的方式,创建10个线程,线程函数地址00404568
所创建的线程函数的作用是:得到本机IP地址,创建socket测试网络是否连接。寻找局域网内的机器,枚举共享资源,以administrator空密码试探进入,将病毒以Cool_GameSetup.exe拷贝到共享,然后得到远程机器时间,NetScheduleJobAdd加入一个任务,在指定时间内执行此程序。病毒创建10个线程来执行这个工作。
4)0424060.>call;该函数设置很多定时器,使程序定期执行设置好的定时器回调函数。
这些回调函数以及回调函数创建的线程的作用分别有
1反杀软
2把病毒注册到注册表启动项,
将SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL\CheckedValue
值设置为0,隐藏系统文件(病毒的属性被设置为只读|隐藏|系统文件)
3解密出一个文本文件的网址,该文本文件中是一系列恶意程序网址的列表,读入,下载恶意网址列表文件中列出的网址下载恶意程序并执行
4执行命令行命令cmd.exe/cnetshareadmin$/del/y等命令,作用是删除共享?
5解密出一个网页网址,该网页包含一段网站流量统计代码,用来刷流量
代码如下:
00423E00<>>cmpdwordptrds:[],0
00423E07>jeshort
00423E09>call
00423E0E<>>pushoffset;TimerProc地址
00423E13>push0EA60;我们命名为Timer1:时间间隔6S
00423E18>push0;这个TimerProc会创建一个线程,
;该线程的作用是停止杀软的服务,删除杀软再注册表启动项的值
00423E1A>push0;可见第一个定时器作用是反杀软
00423E1C>call;jmp到USER32.SetTimer
00423E21>pushoffset
00423E26>push3E8我们命名为Timer2时间间隔1S
00423E2B>push0;这个TimerProc的做用是把病毒注册;到启动项,设置注册表键值,将CheckValue改为0,隐藏系统文件
00423E2D>push0
00423E2F>call;jmp到USER32.SetTimer
00423E34>movdwordptrds:[],eax
00423E39>pushoffset
00423E3E>push1B7740;我们命名为Timer3时间间隔1800S
00423E43>push0;这个TimerProc会创建1个线程
00423E45>push0;线程的作用是创建一个线程
(解密出恶意网址,下载恶意程序下来并执行)
00423E47>call;jmp到USER32.SetTimer
00423E4C>movdwordptrds:[],eax
00423E51>pushoffset;ASCII"QTj"
00423E56>push2710;我们命名为Timer4时间间隔10S
00423E5B>push0;该TimerProc的作用是创建2线程
00423E5D>push0;一个是那个解密网址下载恶意程序线程,
;一个是执行cmd.exe/cnet...
00423E5F>call;jmp到USER32.SetTimer
00423E64>movdwordptrds:[],eax
00423E69>pushoffset
00423E6E>push1B7740;我们命名为Timer5时间间隔1800S
00423E73>push0;设置注册表iexpolor-nohome
;还有一段解密字符串。。。
00423E75>push0
00423E77>call;jmp到USER32.SetTimer
00423E7C>retn
Timer1的TimeProc代码:
041B418<>>pushecx
0041B419>pushesp
0041B41A>push0
0041B41C>push0
0041B41E>pushoffset;创建的线程函数地址
0041B423>push0;所创建的线程用来反杀软
0041B425>push0
0041B427>call;jmp到kernel32.CreateThread
0041B42C>popedx
0041B42D>retn
创建的线程用于反杀软,代码如下:
;TimerProc所创建的线程,该线程的作用是关掉杀软的服务,删除杀软的注册表启动项键值
Timer2的TimerProc代码,作用是把病毒注册到注册表启动项,设置注册表
SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL\CheckedValue
为0,隐藏系统文件(病毒的属性被设置为只读|隐藏|系统文件)
Timer3的TimerProc
0423DB8<>>call;下面跟贴该函数的代码
00423DBD>retn
CALL进去后的的代码:
0423744<>>pushecx
00423745>pushesp
00423746>push0
00423748>push0
0042374A>pushoffset;创建的线程函数地址,下面跟贴代码
0042374F>push0
00423751>push0
00423753>call;jmp到kernel32.CreateThread
00423758>popedx
00423759>retn
所创建的线程的代码:函数的作用是,解密出一个文本文件的网址,该文本文件中是一系列恶意程序网址的列表,读入,下载恶意网址列表文件中列出的网址下载恶意程序并执行
Timer4的TimerProc,会创建2个线程,线程1,上面Timer3的TimerPrc已经分析过,其作用是创建一个能下载恶意程序并执行的线程。线程2,作用是执行命令行命令
cmd.exe/cnetshareadmin$/del/y
Timer5的TimerProc:修改注册表HKCR_HTTP\shell\open\command的值为
""C:\ProgramFiles\InternetExplorer\iexplore.exe"-nohome"
然后解密处一段网址http://www.d*****g08.com/1.htm,该网页包含有一段流量计数器代码
ok!
大概是用来刷流量的。
5)程序进入消息循环