pizzabamboo 发表于 2022-6-8 21:20

分析恶意代码文件Lab13-02.exe

分析恶意代码文件Lab13-02.exe
问题:
1.使用动态分析,确定恶意代码创建了什么?

2.使用静态分析技术,例如xor指令搜索、FindCrypt2、KANAL 以及 IDA嫡插件,查找潜在的加密,你发现了什么?

3.基于问题1的回答,哪些导入函数将是寻找加密函数比较好的一个证据?

4.加密函数在反汇编的何处?

5.从加密函数追溯原始的加密内容,原始加密内容是什么?

6.你是否能够找到加密算法?如果没有,你如何解密这些内容?

7.使用解密工具,你是否能够恢复加密文件中的一个文件到原始文件?

开始分析:
利用procmon监控,运行样本。



能够发现他在当前目录下不断生成大小为5185KB的文件,这些文件的命名以temp开始,以不同的8个十六进制数字结束。

接下来查下壳,能够发现无壳。



顺便就看看有没有加密。



也没有加密。

打开IDA,载入样本,用Findcrypt插件,什么都没有。



查一下XOR指令。



可以看到sub_401739用了很多异或,看看他的关联



我们可以猜测sub_401851与加密有关。

接下来先看main函数



能看到函数里call了个sub_401851,跟过去看看



发现这个函数用了几个API,而且还有sub_401070和sub_40181F。



再往下可以发现这里出现了和生成的文件名有关的部分,显示用了个GetTickCount函数返回从操作系统启动所经过的毫秒数,将其传递下来作为后面函数的参数。还有调用sub_401000函数。

先看一下sub_401070吧



看到这一部分,我们能看出他是截屏的一个功能。完整分析过后可知程序调用了获取用户的桌面,创建bitmap对象,加密放在桌面。

再来看sub_40181F



这里调用了sub_401739,跟进去看看



调用了sub_4012DD后就开始了一大堆异或,看看sub_4012DD



看起来应该是一堆加密过程了,具体咋加密的不管他,掉头回去看sub_401000



能看到里面是一些文件操作。wirteFile 调用之前可能会发现加密函数,加密函数是sub_40181F.

分析到这里,我们大概已经知道这个恶意程序的行为:

定时截取屏幕内容,将内容数据存入一个缓冲区,将缓冲区中的数据加密并写入文件之中。

根据猜想,生成的文件可能是图片格式,我们将生成的文件后缀改为png,但是文件已经加密了无法打开。


接下来进行解密。

解密的话可以分析加密过程编写脚本来进行解密,也可以用OD解密流量,不过我选择直接不执行加密过程。

OD载入样本,找到加密函数0040181F这个位置。把头部retn掉。


执行程序,把生成的图片打开



能够查看。

分析完毕。

EastRabbit 发表于 2022-6-9 22:09

很有帮助,谢谢

pizzabamboo 发表于 2022-6-8 21:21

解压密码
52pojie

hbg1999 发表于 2022-6-10 11:37

不错不错,支持支持。
很好。

manyou 发表于 2022-6-12 12:23

思路清晰,过程也很详细。。感谢分享。。

woduchou 发表于 2022-6-13 11:31

谢谢分享

jsncy 发表于 2022-6-24 08:47

谢谢分享

warmxxx 发表于 2022-6-27 17:21

感谢楼主的分享!

iloveasdl 发表于 2022-8-26 08:30

学习了!
页: [1]
查看完整版本: 分析恶意代码文件Lab13-02.exe