IDA利用IDC分析加密代码
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
使用IDC分析加密代码
这个小教程演示了如何在分析过程中,使用IDC解密程序中的一部分代码,示例程序是Ripper病毒的一部分。
第一步:
病毒的二进制映像被装载到IDA中,从程序的入口点开始:
很明显,在调用函数call命令里的地址,没什么意义,但它给了我们一个提示,它是加密代码的所在。
第二步:
我们生成一个IDC程序来模仿解密代码:
static decrypt(from, size, key ) {
auto i, x; // we define the variables//定义变量 for ( i=0; i < size; i=i+1 ) {
x = Byte(from); // fetch the byte//取原始代码
x = (x^key); // decrypt it//解密
PatchByte(from,x); // put it back//放回解密代码
from = from + 1; // next byte//下一字节
}
}
我们保存它,并使用快捷键F2来装载它。
我们使用shift+F2来执行这段IDC程序,注意输入相应参数,注意其中的起始点地址。
现在代码已经解密了。
在解密代码的起始未知,我们使用快捷键C,将其翻译为汇编代码。
风暴译2007-09-21 QQ:719110750