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.1IDA基础设置--《恶意代码分析实战》的更多相关文章

  1. 恶意代码分析实战五:OllyDebug动态结合

    目录 恶意代码分析实战五:OllyDebug动态结合 OllyDebug界面介绍 OllyDebug载入程序方法 OllyDebug地址跳转 OllyDebug下断点 OllyDebug单步执行 Ol ...

  2. 恶意代码分析实战四:IDA Pro神器的使用

    目录 恶意代码分析实战四:IDA Pro神器的使用 实验: 题目1:利用IDA Pro分析dll的入口点并显示地址 空格切换文本视图: 带地址显示图形界面 题目2:IDA Pro导入表窗口 题目3:交 ...

  3. 恶意代码分析实战-启动一个恶意的DLL

    如果不能把恶意代码运行起来,那么动态分析基础技术没有什么用. Windows版本中包含rundll32.exe程序,提供了一个运行DLL的平台. rundll32.exe Dllname,Export ...

  4. 恶意代码分析实战-PE资源提取

    场景 1.提取恶意代码中的资源部分内容 思路 存在Loadresource函数的时候说明有一部分内容在资源里. 技术点 Lab1-4 ResourceHacker打开保存资源,载入IDA查看

  5. 恶意代码分析实战-x86反汇编速成班

    x86反汇编速成 x86体系结构 3种硬件构成: 中央处理器:负责执行代码 内存(RAM):负责存储所有的数据和代码 输入/输出系统(I/O):为硬盘.键盘.显示器等设备提供接口 内存 一个程序的内存 ...

  6. 恶意代码分析实战-确认EXE什么时候编译的

    场景 确认开源的后门在中毒机器上是什么版本,具有什么功能. 思路 1.查看样本PE里的编译时间 2.对照开源后门里组件的编译时间 技术点 查看NT头-TimeDateStamp struct IMAG ...

  7. Exp4 恶意代码分析 20154320 李超

    恶意代码 概述 恶意代码是指故意编制或设置的.对网络或系统会产生威胁或潜在威胁的计算机代码.最常见的恶意代码有计算机病毒(简称病毒).特洛伊木马(简称木马).计算机蠕虫(简称蠕虫).后门.逻辑炸弹等. ...

  8. Exp4 恶意代码分析

    一.原理与实践说明 1. 实践目标 1.1 监控你自己系统的运行状态,看有没有可疑的程序在运行. 1.2 分析一个恶意软件,就分析Exp2或Exp3中生成后门软件:分析工具尽量使用原生指令或sysin ...

  9. 2018-2019-2 网络对抗技术 20165232 Exp4 恶意代码分析

    2018-2019-2 网络对抗技术 20165232 Exp4 恶意代码分析 1.实践目标 监控你自己系统的运行状态,看有没有可疑的程序在运行. 分析一个恶意软件,就分析Exp2或Exp3中生成后门 ...

  10. 2018-2019-2 20165234 《网络对抗技术》 Exp4 恶意代码分析

    实验四 恶意代码分析 实验目的 1.监控自己系统的运行状态,看有没有可疑的程序在运行. 2.分析一个恶意软件,就分析Exp2或Exp3中生成后门软件:分析工具尽量使用原生指令或sysinternals ...

随机推荐

  1. Logstash:Logstash-to-Logstash 通信

    文章转载自:https://elasticstack.blog.csdn.net/article/details/117253545 在有些时候,我们甚至可以建立 Logstash-to-Logsta ...

  2. Spring mvc源码分析系列--Servlet的前世今生

    Spring mvc源码分析系列--Servlet的前世今生 概述 上一篇文章Spring mvc源码分析系列--前言挖了坑,但是由于最近需求繁忙,一直没有时间填坑.今天暂且来填一个小坑,这篇文章我们 ...

  3. Tubian系统无法打开Android子系统的解决方法

    打开Konsole,Konsole在程序菜单(左下角Logo)-系统中 输入: sudo nano /var/lib/waydroid/waydroid.cfg 回车 按方向键,把光标移动到[prop ...

  4. 改善C#程序的方法-3 比较器和LINQ排序

    一 创建对象时考虑实现比较器 假设有这样的场景,有一个40个人的学生列表,业务中需针对学生的成绩来进行排序. 可以考虑用IComparable接口和ICompare接口实现: class Progra ...

  5. 微信小程序之发起请求

    wx.request({ url: api.api + '/weChat/api/user/myAunt', // 仅为示例,并非真实的接口地址 data: {}, method: 'GET', he ...

  6. 洛谷P1640 SCOI2010 连续攻击游戏 (并查集/匹配)

    本题介绍两种做法: 1 并查集 1 #include<bits/stdc++.h> 2 using namespace std; 3 const int N=1000005; 4 int ...

  7. Windows常用快捷键及基本的Dos命令

    Windows 常用快捷键 Ctrl + C: 复制 Ctrl + V: 粘贴 Ctrl + A: 全选 Ctrl + X: 剪贴 Ctrl + Z: 撤销 Ctrl + S: 保存 Alt + F4 ...

  8. C++ 右值引用与一级指针

    将右值引用用于一级指针,在初始化时等号右边必须为右值,有以下几种用法: //方式一:引用一级指针,常规用法 int a = 5; int * &&rrpa = &a; //右值 ...

  9. 研一小白入坑Go (time使用)

    1 package main 2 3 import ( 4 "fmt" 5 "time" 6 ) 7 8 func main() { 9 // 获取当前时间 1 ...

  10. 开源WindivertDotnet

    0 前言 Hi,好久没有写博客,因为近段时间没有新的开源项目给大家.现在终于又写了一篇,是关于网络方向的内容,希望对部分读者有帮助. 1 WinDivert介绍 WinDivert是windows下为 ...