样本下载地址:
https://www.hybrid-analysis.com/sample/31e8a11960d0492b64241354c567643f09f0e0278658d31e75d6f2362dbfae44/589f6600aac2ed382956ce75?lang=zh
通过DIE查壳,可以得知该样本加了UPX壳,分析样本的常规操作都是对其进行脱壳,再进行逆向,但我们今天来学习通过IDA的内存快照功能,实现不脱壳直接分析样本。
采用这种技巧你必须得先预测(或通过沙箱)该样本可能进行的操作,比如勒索病毒一定会读写文件,木马后门一定会有网络连接等,本次的样本我们通过ANYRUN得知它有注册表的操作。
接下来思路就很明确了,当样本执行到核心操作(读写注册表)时,样本的代码势必已经解密/脱壳完了,这时候使用IDA的内存快照功能将样本的内存dump下来,就得到解密/脱壳后的完整代码了。如下,开启IDA远程调试,然后在NtSetValueKey上下断点运行。
样本运行到NtSetValueKey断点处停下了,然后我们单步步过,从内核空间返回到样本的代码空间,此时,就可以