ISCRO论坛
邮箱
工具:OD (吾爱破解的论坛上下载的)
C32Asm
样本: wwwlib.dll (md5: 9854723bf668c0303a966f2c282f72ea)
you (md5: 2d84337218e87a7e99245bd8b53d6eab)
我们先打开虚拟机:
将wwwlib.dll载入OD中,OD会提示我们是否要启动LOADDLL,我们选择是
在下面的Command里面,我们输入bp CreateFileW,然后敲回车,则对CreateFileW下好了断点
我们按一下F9,则断点会断在CreateFileW处,参数为C:\users\public\fm,权限为 GENERIC_WRITE
我们继续按F9,可以发现程序退出了,所以肯定有什么地方漏跑了
没关系,我们按Ctrl + F2,重新跑起来
发现OD直接断在了CreateFileW处,我们继续按F9,直到再次断在打开fm文件处,此时权限已变为了GENERIC_READ,证明有些函数已经判断过这个文件是否存在了,我们现在用文本文档打开这个fm,看看里面写入了什么
可以肯定的是,第一次启动wwwlib.dll的时间,那么再次读取做了什么呢?我们可以大胆的猜测是作者的延迟运行的功能,我们为了废掉这个功能,删除掉这个文件就可以了。继续按F9,发现我们的程序的下一个断点的参数是 C:\users\public\you,权限是GENERIC_READ,很好,终于进入正题了
我们拷贝一份下载的you,放入该位置,并对ReadFile下断点,命令是 bp ReadFile我们继续按F9,发现我们的断点断在了ReadFile,我们右击参数buffer
选择数据窗口跟随
我们按Ctrl + F9
断在了ReadFile执行完毕的位置,发现内容已经读取完毕了,我们在内容处下断点,选中四个字节,右击→断点→硬件访问→DWORD 右击→断点→硬件写入→DWORD
我们按F9,继续执行,断在非代码段上面我们按Ctrl + A 重新让OD分析一下
我们发现在2992偏移处,读取了我们刚刚从you文件读取中的数据,经过处理,最后放入ebx中,ebx的值为[local.11]的值,我们多次按F8单步到ebx再次赋完值
右击ebx,数据窗口跟随
再次按F8,发现数据已经写入
我们观察,在29BB处为长跳转,并循环执行之前的代码,所以可以断定是通过该处函数将you里面的内容解码出来的,并写入该处内存地址。
我们鼠标点击29C0,按一下F2,对该处下断点
我们取消掉硬件断点,点击调试→硬件断点
将两个硬件断点全部删掉,并点击确认
我们继续按F9
我们发现数据已经完全解密出来了,对于一个EXE文件,头两个字节必然是MZ,而且还有对应的字符串特征,所以,断定,这是一个exe,我们将该文件dump下来,右击数据→备份→保存数据到文件
这里我们命名为_03090000.mem
我们使用C32Asm的16进制编辑模式打开保存的该mem文件,因为我们的数据是从0x28开始的,所以我们还需要将之前的内容删掉
选中后,按Delete,点击文件,保存
我们将_03090000.mem后缀改为exe,即可以发现它变成了一个正常的可运行的易语言程序
我们测试一下,右击管理员权限运行,打开任务管理器,发现它正在占用cpu正在加密经过一段时间的等待,我们的文件已经被加密掉,所以,验证了该文件即为勒索病毒加密本体
安装360安全卫士后,点击功能大全→数据安全→解密大师,即可扫描一键解密我们点击下面的目录打开解密后的目录
文件已经可以完全解密出来
ISCRO·Ctrl C
2020年4月11日
首发于Bilibili 传送门——>
来源:freebuf.com 2020-05-16 14:27:34 by: 互联网安全民间响应组织ISCRO
请登录后发表评论
注册