Mydoom病毒分析报告

百家 作者:Chamd5安全团队 2021-03-04 10:20:20


本篇文章由ChaMd5安全团队逆向病毒分析小组投稿

文件检测


信息
文件名1.virus
文件类型WIN 32 EXE
文件大小41664 bytes
MD53d466b0f8ba9f3fe03e137a34d79f682
SHA-2567c4d73c8c9e394a72cc0eeda7e3ce78340a23f40cb3f682c06715e948c09feca
加壳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
  1. 创建servers.exe和java.exe
  2. C:\\WINDOWS\\java.exeC:\\WINDOWS\\services.exe设置为自启动
  3. 设置http://127.0.0.1/wpad.dat为代理服务器,HTTP会话劫持

备注:

随机种子:[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\RNG]

进程行为


  1. 临时路径下创建services.exe和java.exe使用,"C:\Users\HK_MAY~1\AppData\Local\Temp\services.exe"
  2. 主程序与services.exe进行通讯(services.exe->主程序->网络)
  3. services.exe设置浏览器代理

网络行为

既然有浏览器和邮件的相关恶意行为,那么主要看HTTP,HTTPS,SMTP,DNS协议




  1. 通过浏览器查询信息
  2. 发送邮件,信息如第三张图

通过上面动态分析,总结和推测如下

  1. 释放文件services.exe和java.exe
  2. 修改注册表,设置随机数种子、开启自启程序、HTTP代理
  3. 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随机

筛选域名与用户信息

筛选域名信息

30

嵌套循环,外层获取到的域名字符串,内层指定域名字符串,只要获取到的域名中包含了其中指定的字符串,就会排除。

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

提取附件邮箱信息

递归遍历目录,获取指定后缀文件中的邮箱地址

39

递归遍历目录C:\Local Settings\Temporary Internet Files\.,获取指定文件包含的邮箱信息

40
41

查找指定后缀文件中的邮件信息,并且也对其中的信息进行了筛选

.pl*
.ph*
.tx*
.tbb
.ht*
.asp
.sht
.dbx
.adb
.wab

递归遍历硬盘驱动器或闪存驱动器(字符从C增加),获取指定后缀文件中的邮箱地址


这里还有一些邮件的内容信息


services.exe


信息
文件名services.exe
文件类型WIN 32 EXE
文件大小8192 bytes
MD5b0fe74719b1b647e2056641931907f4a
SHA-256bf316f51d0c345d61eaee3940791b64e81f676e3bca42bad61073227bee6653c
加壳UPX 2.90


包含文件行为,注册表修改,网络行为

静态分析

50

主要做了三件事

  1. 对zincite.log文件操作
  2. 修改注册表,设置services.exe为自启项
  3. 绑定端口号1034,作为服务器开放监视端口(后门)

java.exe和主程序相同的

信息
文件名java.exe
文件类型WIN32 EXE
MD590c2d4ca3613c5d17f1c938ce076fef2
文件大小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/

公众号 关注网络尖刀微信公众号
随时掌握互联网精彩
赞助链接