1.加载一个可执行文件
① 选项一:当加载一个文件(如PE文件),IDA像操作系统加载器一样将文件映射到内存中。
② 选项三:Binary File:将文件作为一个原始的二进制文件进行反汇编,例如文件带有shellcode、其他数据、加密参数,甚至里面带有可执行文件,如果文件还是以正常形式加载到IDA中,这些东西是不会被加载到内存中的,因此应该将文件作为二进制文件进行反汇编。
③ Manual load:选择后可以指定这个文件要加载的新的虚拟机地址,并且还会询问是否要逐个加载每一个节。
注:在默认情况下,IDA Pro的反汇编代码中不包含PE头或者资源节,而这些地方经常被恶意代码用来隐藏恶意指令。
2.反汇编窗口
(1)设置
Options->General->选择Line Prefixex(内存位置显示)并设置Number of Opcode Bytes为6(显示代码清单中每条指令的操作码值)
3.加载库以显示标准符号常量
View->Open Subviews->Type Libraries 来查看当前被加载的库,一般mssdk和vc6win会被自动加载,我们也可以右键加载一些其他的库。恶意代码经常需要使用本地Api,要获取本地Api的符号常量,需要加载ntapi库。
导入exe文件
将对应版本cpp文件拖入到IDA中,点击OK,
等待后点击空格,进入汇编,
选择View --》open SubView --》String --》双击相关字符串 --》 进入定义,
右键汇编代码 --》选择Jump to xref to operand交叉引用 --》跳转到汇编语句。
快捷键
使用F5将汇编自动转换成伪代码。通过Jump-Jump to pseudocode (Tab)跳回到对应的源码。
汇编指令右键,选择Graph View进入视图。
视图选中,空格键进入汇编指令。
保存
ctrl+F5
退出
选择最后一项Dont save the database不保存数据
修改汇编与打补丁
点击要修改的指令
点击Edit,选择Patch program->Assemble
输入要修改成的汇编(这里是一次修改一个字节,需修改多个字节要执行多次此操作
点击Edit,选择Patch program->Apply patches to input File,把补丁应用到输入的文件
点击Create backup可以保存备份
注意:在IDA中打错了补丁就不能恢复了。
标签:文件,4.1,汇编,--,恶意代码,加载,IDA From: https://www.cnblogs.com/renleiguanchashi/p/16971868.html