首页
社区
课程
招聘
[原创]WannaRen病毒逆向分析报告
2020-5-3 21:15 9336

[原创]WannaRen病毒逆向分析报告

2020-5-3 21:15
9336

写在前面:

这个病毒作者已经公开了私钥,解密工具也制作出来了,我就当是学习逆向对整个病毒进行分析一下。

虚拟机环境:win10x64    网络状态:飞行模式(因为不知道会不会内网感染)

病毒样本放在百度网盘了,在后面有下载链接。




勒索复现:

下载之后有三个文件,一开始我以为运行exe就会完蛋,但是想的太简单了。

更具火绒发的报告,程序传输途径可以是某西下载园,所以exe需要放在C:\ProgramData目录下,然后还是不行,调用的的dll也要放到C:\ProgramData下,因为调用的是硬编码,应该是编程的时候放在项目文件下调用的,然后运行还是没啥动静,那个you文件是虚拟保护过的,没啥变化,最后根据收集到的信息,才知道you文件需要放到C:\Users\Public,下才可以。


第一次运行exe会在C:\Users\Public生成一个fm文件:

里面记录了第一次运行的时间:

然后第二次运行,病毒就开始工作了,表现就是虚拟机的文件全部被加密了,包括文档和压缩包,后缀多一个.WannaRen:

用二进制编辑器打开,文件头尾都有特殊关键字:

桌面有勒索信和图:

打开欣赏一下:

(英文很有百度翻译的味道)

到这里整个复现就完成了,还是折腾了一点时间。



逆向分析

首先康康这个exe,很干净:

就一个导入结构,调用lib文件。

动态调试一下:

RVA1272检查路径是否在指定路径下:

然后调用这个DLL之后,就退出了程序,他用的是硬编码,编程的时候dll应该是和程序放在同一个目录下:


然后就退出程序了,连createfile都没调用,看来fm文件是在这个dll里面创建。





od载入这个病毒wwlib.dll:


如果第一次动态调试的话,应该停在下面位置:

单步几下看看,程序被vmp过,而且没找到中心调度(可能有我没看到),也没找到跳转表,估计是保护全开了,程序大小也着实很大:

run跟踪也没什么看的,可读性很低:


另辟其他路,之前运行的时候有创建fm这个文件,那就对CreateFileA,CreatFileW, readfile都下断点,调用这些win api是需要出虚拟机的:


然后运行,有点收获,create文件,读写权限:

之后又是读取此文件,不知道干什么。



继续f9肯定会在readfile断下:

数据窗口跟随buffer,运行到ret,说明之前的create函数就是写入时间的:


再f9 程序退出。


在之前提到,第一次运行是在public文件下创建fm文件,然后第二次才是加密,就是对这块逆向分析得到的结果,ctrl  f2一下,程序停在莫名其妙的地方:

不用管他,应该是哪个api函数的断点,两次f9到入口处。


然后第一个问题出现了,程序调用依旧读取两次fm就退出了,这块浪费了时间,不知道什么操作,在第一次createfile   这个fm文件的时候,跑到文件夹删除这个fm文件,就

可以了。


此时删除:


然后开始读取这个you文件:

这个就是加密文件,读取之后,开始read:


然后buffer跟随,运行到ret,可以看到这个buffer就是you这个加密文件的数据:


再f9跑飞,重新来一遍对这个位置下硬件访问断点:


f9到一个位置:


简单分析一下这块代码,992位置读取加密的数据,下面开始调用解密函数,jmp这个不要去跟踪,因为也是一个解密操作,但是没有用函数封装,跟着容易跑没了。

解密之后保存到ebx指定的位置,数据窗口中跟到:


对9C0位置下断点,f9运行到,可以取消之前下的硬件断点,不然手抖一下就要重来,下面这张截图的地址和上面不一样就是因为手抖:

MZ,,DOS stub 安逸,dum出来:


程序还不能直接改成exe,因偏移地址在028处,用二进制编辑器删掉前面的东西:

保存好,修改成exe后缀,就出现了一个真正病毒程序:


这是一个易语言写的程序:


现在没什么保护措施了,静态分析一下,框架不适合start开始分析,从加密位置找找:

Big_Number应该是RSA的p,q和e,xfer没看到调用的函数,crc32_table可以找到加密函数。

对这块分析,就是常规看exe程序,我放到我课程报告里面了。


对这个病毒的解密工具各家也都有了:http://bbs.huorong.cn/thread-68373-1-1.html


链接:https://pan.baidu.com/s/1xW88VoHPdw3nQutzG6utag 

提取码:vzu3 

复制这段内容后打开百度网盘手机App,操作更方便哦












[CTF入门培训]顶尖高校博士及硕士团队亲授《30小时教你玩转CTF》,视频+靶场+题目!助力进入CTF世界

最后于 2020-5-3 22:36 被菜鸟m号编辑 ,原因: 图片没了
收藏
点赞4
打赏
分享
最新回复 (16)
雪    币: 360
活跃值: (2761)
能力值: ( LV11,RANK:185 )
在线值:
发帖
回帖
粉丝
菜鸟m号 1 2020-5-3 21:20
2
0
?我的图片呢
雪    币: 399
活跃值: (68)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
koop 2020-5-3 21:29
3
0
图片挂了
雪    币: 32404
活跃值: (18830)
能力值: (RANK:350 )
在线值:
发帖
回帖
粉丝
kanxue 8 2020-5-3 22:29
4
0
菜鸟m号 ?我的图片呢 [em_1]
稍等,帖子先不要编辑,我们找下原因,能恢复的。
雪    币: 259
活跃值: (283)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
ZwCopyAll 2020-5-5 03:56
5
0
不错
雪    币: 2663
活跃值: (5215)
能力值: ( LV10,RANK:177 )
在线值:
发帖
回帖
粉丝
YenKoc 2 2020-5-5 11:15
6
0
大佬牛B!
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
broker 2020-5-5 15:20
7
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
broker 2020-5-5 15:29
8
0
压缩包的密码是多少了
雪    币: 20
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
Shellroot 2020-5-15 21:06
9
0
压缩包的密码是多少了
+1
雪    币: 482
活跃值: (450)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
buzhifou01 2020-5-22 19:31
10
0
密码是:52pojie
雪    币: 205
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
菜鸟m号的lsp 2020-5-22 20:10
11
0
听说点赞花了俺15雪币
雪    币: 12079
活跃值: (4713)
能力值: ( LV5,RANK:77 )
在线值:
发帖
回帖
粉丝
qux 2020-5-23 22:34
12
0
fm文件记录的是日期,这个勒索病毒会检查时间,超过72小时才会做加密文件的操作。  
感谢楼主的ReadFile思路,之前看火绒的分析,还以为把vmp给日了,原来是这样的思路,学到了。
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
mb_ipfcgasq 2020-5-25 10:19
13
0
哥哥,能把真正病毒程序(那个易语言程序)分享一下吗。
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
云天水瓶 2020-6-2 21:10
14
0
我把那个exe和dll文件放在c:\programData目录下,将You文件放在了c:\users\public下了,但是看到了fm文件,为什么第二次运行不了,点击exe文件没有看到勒索信息??
雪    币: 360
活跃值: (2761)
能力值: ( LV11,RANK:185 )
在线值:
发帖
回帖
粉丝
菜鸟m号 1 2020-6-2 21:38
15
0
云天水瓶 我把那个exe和dll文件放在c:\programData目录下,将You文件放在了c:\users\public下了,但是看到了fm文件,为什么第二次运行不了,点击exe文件没有看到勒索信息??
根据楼上回到好像是要三个小时,你试试改改fm文件里面的时间,改到三四天前试试
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
mb_uhokqjyu 2020-7-29 11:02
16
0
大佬,在buf那下了硬件断点之后f9直接退出程序了怎么搞
雪    币: 47
活跃值: (356)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
xuha 2023-4-18 11:22
17
0
游客
登录 | 注册 方可回帖
返回