Mydoom病毒分析报告
本篇文章由ChaMd5安全团队逆向病毒分析小组投稿
文件检测
信息 | 值 |
---|---|
文件名 | 1.virus |
文件类型 | WIN 32 EXE |
文件大小 | 41664 bytes |
MD5 | 3d466b0f8ba9f3fe03e137a34d79f682 |
SHA-256 | 7c4d73c8c9e394a72cc0eeda7e3ce78340a23f40cb3f682c06715e948c09feca |
加壳 | upx 2.90 |
导入函数
通过导入表函数可以看出病毒有以下行为:
文件创建 线程注入 注册表修改 网络行为
动态行为分析
regshot创建注册表快照,同时监控程序进程,使用wireshark实时监控网络行为
注册表
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\RNG]
"Seed"=hex:f4,9d,30,f1,c6,bc,ea,49,17,69,71,10,29,fe,0c,34,1a,7c,76,bd,cf,ab,\
d9,02,17,5e,1e,43,3e,12,f7,8d,1e,0a,36,d9,4a,82,b7,5e,cb,b1,08,ea,a1,31,1c,\
86,dd,21,54,de,53,28,41,a5,d8,ee,79,3d,f4,9c,62,7f,63,b4,64,ac,25,07,ba,76,\
18,10,f4,aa,c9,89,87,61
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Daemon]
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
"JavaVM"="C:\\WINDOWS\\java.exe"
"Services"="C:\\WINDOWS\\services.exe"
[HKEY_CURRENT_USER\Software\Microsoft\Daemon]
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.vir]
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.vir\OpenWithList]
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Connections]
"SavedLegacySettings"=hex:3c,00,00,00,5b,01,00,00,01,00,00,00,00,00,00,00,00,\
00,00,00,00,00,00,00,00,00,00,00,19,00,00,00,68,74,74,70,3a,2f,2f,31,32,37,\
2e,30,2e,30,2e,31,2f,77,70,61,64,2e,64,61,74,f0,b0,88,2c,93,41,d3,01,01,00,\
00,00,c0,a8,f4,83,00,00,00,00,00,00,00,00
创建servers.exe和java.exe C:\\WINDOWS\\java.exe
和C:\\WINDOWS\\services.exe
设置为自启动设置 http://127.0.0.1/wpad.dat
为代理服务器,HTTP会话劫持
备注:
随机种子:[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\RNG]
进程行为
临时路径下创建services.exe和java.exe使用, "C:\Users\HK_MAY~1\AppData\Local\Temp\services.exe"
主程序与services.exe进行通讯(services.exe->主程序->网络) services.exe设置浏览器代理
网络行为
既然有浏览器和邮件的相关恶意行为,那么主要看HTTP,HTTPS,SMTP,DNS协议
通过浏览器查询信息 发送邮件,信息如第三张图
通过上面动态分析,总结和推测如下
释放文件services.exe和java.exe 修改注册表,设置随机数种子、开启自启程序、HTTP代理 services.exe通过劫持会话,作为本地主程序与网络的中间服务器,发送邮件信息到网络,接受网络数据到主程序
静态分析
主程序分析
全局分析
创建互斥体
主机+root,将非字母替换为大写字母,以此命名互斥体,确保一个病毒运行
释放文件
1.在系统临时目录创建zincite.log C:\Users\10245\AppData\Local\Temp\zincite.log 2.释放services.exe,并运行
servers.exe元数据
创建java.exe
设置自启项
将C:\Windows\java.exe写入注册表自启动HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
创建线程关闭rctrl_renwnd32,ATH_Note,IEFrame窗口
创建线程,从浏览器获取并筛选邮箱地址,构建欺骗邮件信息
首先判断了网络状态
首先进入通过搜索引擎获取同类型邮箱地址
构造搜索链接
构造参数
参数1包括:
contact+mail
contack+email
contact+e-mail
reply
mailto
通过@后的域名+参数1
或参数1+@后的域名
构建最终的参数
搜索链接形式包括
http://www.altavista.com/web/results?q=%s&kgs=0&kls=0&nbq=%d
http://www.altavista.com/web/results?q=%s&kgs=0&kls=0
http://search.yahoo.com/search?p=%s&ei=UTF-8&fr=fp-tab-web-t&cop=mss&tab=&n=%d
http://www.google.com/search?hl=en&ie=UTF-8&oe=UTF-8&q=&num=%d
前一个参数为之前构造的字符串,后一个表示搜索数量20/50随机
筛选域名与用户信息
筛选域名信息
嵌套循环,外层获取到的域名字符串,内层指定域名字符串,只要获取到的域名中包含了其中指定的字符串,就会排除。
avp,syma,sarc.,microsoft,msdn,msn.,hotmail,panda,spersk,yahoo,sophos,example,domain,uslis,update,trend,foo.com,bar.,secur,seclist,gmail,gnu.,google,arin.,ripe.,sourcedorge,sf.net,rarsoft,winzip,winrar
用户信息排除
全字符匹配
info
noone
nobody
nothing
anyone
someone
your
you
me
rating
site
soft
no
foo
help
not
feste
ca
gold-certs
the.bat
page
子串匹配
admin
support
ntivi
submit
listserv
bugs
secur
privacycertific
accoun
sample
master
abuse
spam
mailer-d
构建欺骗邮件与附件
构建欺骗邮件信息
发件人信息构造方式
tb1 = ["Mail Delivery Subsystem","MAILER-DAEMON","Returned mail","Bounced mail","The Post Office","Post Office","Automatic Email Delivery Software","Mail Administrator","Postmaster"]
tb2 = ["MAILER-DAEMON","noreply","postmaster"]
这两个列表随机组合,最终组合形式tb1
+<
+tb2
+@
+域名
+>
,例如The Post Office<noreply@qq.com>
邮件主题
作为发送失败的信息
Returned mail: Data format error
Returned mail: see transcript for details
Delivery reports about your e-mail
Mail System Error - Returned Mail
Message could not be delivered
delivery failed
report
test
status
error
hi
hello
指定附件类型
实际上,这里就是分为了两部分,前部分伪造信息为htm
,html
,txt
,doc
,后部分为com
,pif
,scr
,exe
,实际上后部分才是附件真正的格式。例如pwd.txt .exe
或者直接为.zip
文件
构建欺骗邮件信息
参考:https://famguardian.org/Subjects/Computers/Security/ImpersEmailAddr.htm
提取附件邮箱信息
递归遍历目录,获取指定后缀文件中的邮箱地址
递归遍历目录C:\Local Settings\Temporary Internet Files\.,获取指定文件包含的邮箱信息
查找指定后缀文件中的邮件信息,并且也对其中的信息进行了筛选
.pl*
.ph*
.tx*
.tbb
.ht*
.asp
.sht
.dbx
.adb
.wab
递归遍历硬盘驱动器或闪存驱动器(字符从C增加),获取指定后缀文件中的邮箱地址
这里还有一些邮件的内容信息
services.exe
信息 | 值 |
---|---|
文件名 | services.exe |
文件类型 | WIN 32 EXE |
文件大小 | 8192 bytes |
MD5 | b0fe74719b1b647e2056641931907f4a |
SHA-256 | bf316f51d0c345d61eaee3940791b64e81f676e3bca42bad61073227bee6653c |
加壳 | UPX 2.90 |
包含文件行为,注册表修改,网络行为
静态分析
主要做了三件事
对zincite.log文件操作 修改注册表,设置services.exe为自启项 绑定端口号1034,作为服务器开放监视端口(后门)
java.exe和主程序相同的
信息 | 值 |
---|---|
文件名 | java.exe |
文件类型 | WIN32 EXE |
MD5 | 90c2d4ca3613c5d17f1c938ce076fef2 |
文件大小 | 41664 bytes |
IOC信息
家族:Mydoom
描述:MyDoom是一种通过电子邮件附件和P2P网络Kazaa传播的病毒,当用户打开并运行附件内的病毒程序后,病毒就会以用户信箱内的电子邮件地址为目标,伪造邮件的源地址,向外发送大量带有病毒附件的电子邮件,同时在用户主机上留下可以上载并执行任意代码的后门。
MD5S:
3d466b0f8ba9f3fe03e137a34d79f682
90c2d4ca3613c5d17f1c938ce076fef2
b0fe74719b1b647e2056641931907f4a
IPS
15.54.159.149
4.240.75.254
TTPS
UPX加壳
邮件发送失败返回
注册表修改自启项
递归遍历获取邮箱信息
搜索引擎构建链接获取邮箱信息
文件特征字符串
java.exe
services.exe
zincite
"Mail Delivery Subsystem","MAILER-DAEMON","Returned mail","Bounced mail","The Post Office","Post Office","Automatic Email Delivery Software","Mail Administrator","Postmaster","MAILER-DAEMON","noreply","postmaster"
Returned mail: Data format error
Returned mail: see transcript for details
Delivery reports about your e-mail
Mail System Error - Returned Mail
Message could not be delivered
delivery failed
report
test
status
error
hi
hello
end
招新小广告
ChaMd5 Venom 招收大佬入圈
新成立组IOT+工控+样本分析 长期招新
欢迎联系admin@chamd5.org
关注公众号:拾黑(shiheibook)了解更多
[广告]赞助链接:
四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/
随时掌握互联网精彩
- 1 《促进高质量充分就业》全文 4918636
- 2 中印士兵交换了糖果 4924828
- 3 任正非:今天还不能说华为能活下来 4837321
- 4 持续推进交通运输领域适老化服务提升 4721434
- 5 11月起买“小电驴”有重大变化 4624156
- 6 陈好演技最差的一次 4507428
- 7 监狱长花1400多万搞监狱文化软装 4400928
- 8 这个杀手不太冷内地首映 4364892
- 9 国产手机年终大战:集体涨价 4226485
- 10 山西吕梁:女性35岁前结婚奖1500 4190464