一款远控木马分析
文章目录
说明:
萌新一枚,最近一段时间在面试病毒相关岗位,有的公司会电话、远程面试询问相关知识,有的则会直接发送病毒样本要求分析,写出分析报告。下面要分析的就是面试过程中的某个样本,整理成文,发表出来,供大家参考学习,一起进步!如有不当之处,也希望大佬批评指正,晚辈一定虚心受教。由于考虑到时间问题,不能让面试官等太久,所以我只将病毒关键功能模块进行分析说明,没有之前文章那么详细,也请大家见谅,不懂之处欢迎提出,我也尽量解答,加油!
注意:
此样本存在成人图片内容,未成年同学请勿下载!只限于学习用途!互联网并非法外之地!求生欲强的我不承担相关法律责任的哈!
一、样本信息:
- 样本名称:94251089D878B5C45A763B205062B60CC4D7D0A1CD4CAB3CAA38D8E6A43ECB11
- 样本大小:893.13KB
- MD5:ba46b18f05ab2b24df26e343dd32946b
- SHA-256:32db88982a0d0f92804c4c53ffd8555935871e23b35a9d362e037353cb6b44c5
- SHA-1:34f07e131d4f147af96d262eee761582c6f0b1a4
- VirusTotal:https://www.virustotal.com/#/file/32db88982a0d0f92804c4c53ffd8555935871e23b35a9d362e037353cb6b44c5/detection
二、分析环境及工具:
环境:Oracle VM VirtualBox、Windows 7 Service Pack 1(x64)
工具:PEID V0.95、OD、IDA、Resource Hack、火绒剑、010editor、Resource Explorer
三、基础病毒分析:
基础静态分析:
为了方便测试,更改病毒名称为1,拖入PEID发现为非PE文件,拖入010editor发现是个rar文件,更改文件名添加.rar后缀解压发现一个伪装成文件夹的exe程序
对18xxxxxxxxxxxxxxxxxxxxxxxxxxxxx.exe进行查壳,初步判断为无壳:
将18xxxxxxxxxxxxxxxxxxxxxxxxxxxxx.exe拖入IDA简单发现安全程序字符串和进程遍历函数,判断病毒程序会对安全软件进行遍历:
基础动态分析:
为了节约时间,这里就不截图展示了,基本思路是拖入火绒剑监控程序运行,常见的操作和推测可参考之前的文章
四、详细病毒分析:
18xxxxxxxxxxxxxxxxxxxxxxxxxxxxx.exe分析:
首先程序来到sub4057AE()函数,对自身PE程序进行检测,失败则会退出
sub40624F()根据前面获得的启动信息结构体对主机型号进行检测
获得命令行参数
然后进入sub408D2C函数得到系统环境变量,宽字节转为单字节
之后来到核心程序sub401A40()
获取自身路径以及当前目录
程序进入sub402120()函数,发现主要是两个sub401450()函数
第一个sub401450(),程序首先设置文件指针,阅读数据放到开辟的内存空间,然后在c:\windows\help下创建备份文件
接着将备份文件字符串和同文件名目录作为参数传入sub4026B0()函数,进入sub4026B0()函数
创建文件目录,获得备份文件句柄
拼接处新的图片目录路径和.liz后缀路径,创建新文件1.liz
之后将1.liz数据写入1.jpg,删除1.liz文件
下面对比[esp+0x10]的值开始新的循环
最终写入了7张图片和Thumbs.db文件
然后删除备份文件
来到第二个sub4026B0()函数
程序获取临时目录文件路径,拼接出字符串c:\user\yxx\appdata\local\temp\rat.exe,如果存在直接打开,不存在就创建rat.exe
之后创建进程运行rat.exe
拼接出路径c:\user\yxx\appdata\local\temp\byeyou.tmp,遍历系统进程,查找是否存在sftlcom.exe与pavfnsur.exe杀毒软件
之后移动原程序到新的文件名c:\user\yxx\appdata\local\temp\byeyou.tmp里
rat.exe分析:
自启动相关
注册表相关
复制自身为ctfmon.exe
寻找资源文件
创建进程打开alg.exe程序
然后卸载进程模块,实现傀儡进程注入
唤醒线程,开始运行核心程序
提取rat.exe的资源文件命名为resource.exe
resource.exe分析:
sub405BD0()函数,提升程序权限
sub401720()解密所需的字符串
接着也是解密出需要使用的dll模块和相关函数地址
最后进入核心函数sub405960()
先进入sub405720()函数看下
首先程序打开病毒服务器网址,保存返回数据(服务器地址已经挂了)
直接静态分析
根据自己定义的字符串切割返回的数据
至此基本判断为这是个远控木马,进入远控函数sub403190()
程序首先解密出相关的dll,函数名称,并获得函数地址,方便接下来的函数使用
远控功能
获取本机IP地址
检测是否能ping通
获取系统版本,CPU信息
获取磁盘信息
获取文件信息,可以远程创建,阅读,重命名,移动,复制,删除
远程关机,重启
卸载
服务启动
列出进程,杀死进程
截屏
然后传入其他两个域名参数,再次进入远控函数
至此病毒简单的分析完毕,在远控功能部分中,病毒作者以熟悉、简单的英文甚至中文拼音来命名功能函数,帮助我们节省大量的时间,如果作者没有这样命名的话,我们也可以采用OD动态调试观察。若以后接触了多的话,远控功能部分可以适当跳过,因为大同小异,没必要浪费时间!
五、病毒行为流程总结:
六、技术思考总结:
- 要熟悉病毒常见的注入方式,例如这次的傀儡进程注入,最好动手写一遍,熟悉常使用的函数
- 在病毒与服务器交互的过程中,常常遇到某个函数卡死的情况,这时候要合理nop,不然程序分析不下去
- 对于病毒常见的功能模块要熟悉,遇到时要合理选择步过,不要浪费时间
- 对自己有信心,有耐心,程序飞了没关系,再来
- 多动手,多分享,切勿眼高手低,自己独立分析,参考分析,光看不分析所收获的知识是完全不一样的
七、手工杀毒及防护建议:
- 删除临时文件目录c:\user\yxx\appdata\local\temp下的rat.exe,byeyou.tmp,ctfmon.exe程序
- 重启电脑,用专业杀毒软件全盘扫描清理
- 文明上网,减少对不良网站的浏览,绝不下载不良网站上执行程序
八、相关IOC:
http[:]//softover[.]net/chendog/rat/gif
cn[.]fetftp[.]nu
rt[.]softseek[.]org
MD5:ba46b18f05ab2b24df26e343dd32946b
SHA-256:32db88982a0d0f92804c4c53ffd8555935871e23b35a9d362e037353cb6b44c5
SHA-1:34f07e131d4f147af96d262eee761582c6f0b1a4
PS:天色已经太晚,还有一篇面试要求写的病毒分析报告近期也会整理发布,供大家参考学习,一同交流进步,谢谢阅读!
由于相关文件有点大,放在微云上供大家下载:https://share.weiyun.com/54wPdwh
(密码52pojie)