4.1IDA基础设置--《恶意代码分析实战》

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中打错了补丁就不能恢复了。

 

posted @ 2022-12-10 16:52  人类观察者  阅读(138)  评论(0编辑  收藏  举报