一、基本信息
- 样本名称:1q8JRgwDeGMofs.exe
- 病毒名称:Worm.Win32.Agent.ayd
- 文件大小:165384 字节
- 文件MD5:7EF5D0028997CB7DD3484A7FBDE071C2
- 文件SHA1:DA70DDC64F517A88F42E1021C79D689A76B9332D
二、分析样本使用的工具
- IDA5.5
- OnlyDebug
- RadASM
- Notepad++以及EditPlus
三、样本文件信息简介
- PE文件的感染的方式比较多,很多PE感染的方式是你意向不到,而且还比较巧妙,对于PE感染病毒的分析,有利于对于PE文件格式的熟悉以及病毒感染方式的原理的理解,还是蛮有意思。这样病毒样本的感染PE文件的方式是通过附加数据的方式感染的,和吾爱破解论坛的一篇PE感染病毒的分析很相似,只是那个样本的附加数据的感染方式非常的明显,而这个样本的PE感染机制不是那么的明显,需要仔细的分析才能琢磨出来。
- 其实,对于一个出色的病毒分析人员,对于病毒样本的通透的分析只是一方面,更重要的是将病毒的运作过程,用图文并茂以及通俗的语言告诉看病毒分析报告的人员。经过多次的报告的撰写,发现作者不是这样一个病毒分析人员,有时候更多的喜欢用汇编代码的形式来表达自己的意思。
四、PE附加数据感染的样本分析
1. 获取当前模块感染1q8JRgwDeGMofs.exe文件的路径,然后将该文件的数据读到内存缓冲区
- 获取当前模块的感染1q8JRgwDeGMofs.exe文件的路径
-
读取感染1q8JRgwDeGMofs.exe文件的数据到内存
-
-
函数0040AB80的功能:读取感染1q8JRgwDeGMofs.exe文件的数据到内存返回内存缓冲区指针
-
2. 获取临时文件的目录,拼接字符串构造文件路径:"C:DOCUME~1ADMINI~1LOCALS~1Temp感染1q8JRgwDeGMofs.exe”。
-
获取系统临时文件的目录"C:DOCUME~1ADMINI~1LOCALS~1Temp
-
拼接字符串得到:"C:DOCUME~1ADMINI~1LOCALS~1Temp感染1q8JRgwDeGMofs.exe”
-
3. 对字符串标记"%A1%FBI"进行解密得到一个特征字符串,然后通过该特征字符串定位到感染1q8JRgwDeGMofs.exe文件的附加数据段,获取附加数据,再将该附加数据回写到感染1q8JRgwDeGMofs.exe文件中构建一个新的感染1q8JRgwDeGMofs.exe文件,然后调用函数CreateProcess创建一个感染1q8JRgwDeGMofs.exe进程。
- 解密字符串"%A1%FBI"。
- 备份原来的感染1q8JRgwDeGMofs.exe文件到系统临时文件目录下
-
-
打开创建新的感染1q8JRgwDeGMofs.exe文件
-
-
-
创建进程 "感染1q8JRgwDeGMofs.exe"
4. PE感染文件的其他的行为:
- 设置感染样本文件感染1q8JRgwDeGMofs.e的属性
-
判断文件"C:DOCUME~1ADMINI~1LOCALS~1Temp感染1q8JRgwDeGMofs.exe.lj是否存
- 存在该文件--删除"C:DOCUME~1ADMINI~1LOCALS~1Temp感染1q8JRgwDeGMofs.exe.lj”文件
- 将感染病毒样本的文件数据拷贝并创建文件"C:DOCUME~1ADMINI~1LOCALS~1Temp感染1q8JRgwDeGMofs.exe.lj" 。
- 拼接字符串得到文件路径字符串 ""C:DOCUME~1ADMINI~1LOCALS~1Temp感染1q8JRgwDeGMofs.exe1".
-
将感染样本的文件数据拷贝到文件"C:DOCUME~1ADMINI~1LOCALS~1Temp感染1q8JRgwDeGMofs.exe1"中
- 其实整个PE病毒样本的分析的关键在于它的附加数据段,附上感染样本的附加数据的截图:
五、后记
- 本来这个样本的汇编分析多达20多页,由于分析记录太多,仅仅将关键的地方记录了下来。虽然从程序逆向反汇编的角度能够很好的去了解一个程序的内部的运行流程,但是多少还是有失误的地方,分析的不足的地方见谅,高手飘过。
- 对于本文的题目容易产生误解,解释一下:本文的意思是PE文件感染病毒将其病毒的数据放在被感染的目标PE文件的附加数据里,而上一篇博文的意思是PE文件感染病毒将其病毒的数据放在被感染的目标PE文件的最后一个节中,先执行完病毒感染代码以后,再jmp去执行被感染目标文件的原来的代码。