分析恶意代码文件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掉。
执行程序,把生成的图片打开
能够查看。
分析完毕。 很有帮助,谢谢 解压密码
52pojie 不错不错,支持支持。
很好。 思路清晰,过程也很详细。。感谢分享。。 谢谢分享 谢谢分享 感谢楼主的分享! 学习了!
页:
[1]