zoukankan      html  css  js  c++  java
  • 逆向学习之IDA简介

    逆向学习之IDA简介

    IDA是Windwos下众多调试器工具中颇受欢迎的一种。IDA Pro首先是一个反汇编器,可以显示二进制会变吗(可执行文件或DLL(Dynamic Link Library),动态链接库),它提供的某些高级功能使我们更容易理解汇编代码。其次,它又是一个调试器,用户可以逐条调试二进制文件中的指令,从而确定正在执行哪条指令,以及执行的顺序等。
      IDA PRO是一款交互式反编译工具,功能强大。最主要的特性是交互和多处理器。IDA支持的文件类型丰富,除了常见的PE格式,还支持Windows,DOS,Unix,Mac等平台文件格式。

    一、打开文件,关闭文件

    打开文件

     关闭程序

    推荐使用第二种保存方式,如果不想保存,选择最后一个选项

    二、窗口介绍:图形 文本 其他窗口介绍

    导航条意义
    蓝色 表示常规的指令函数
    黑色 节与节之间的间隙
    银白色 数据内容
    粉色 表示外部导入符号
    暗黄色 表示ida未识别的内容
    IDA主界面 意义
    IDA View 三种反汇编视图:文本视图、图表视图、路径视图
    Hex View 十六进制窗口
    Imports 导入函数窗口
    Struceures 结构体窗口
    Exports 导出函数窗口
    Enums 枚举窗口
    Strings 字符串窗口

     三、常用快捷键

    快捷键功能说明
    Enter 跟进函数实现,查看标号对应的地址
    Esc 返回跟进处,返回上一个操作地址
    A

    解释光标处的地址为一个字符串的首地址

    /C-->代码/D-->数据/A-->ascii字符串/U-->解析成未定义的内容

    B 十六进制与二进制数转换
    C 解释光标处的地址为一条指令
    D 解释光标处的地址为数据,每按一次将会转换这个地址的数据长度
    G 快速查找对应地址
    H 十六进制与十进制数转换
    K 将数据解释为栈变量
    : 添加注释
    R 编码转换
    M 解释为枚举成员
    N 重新命名
    O 解释地址为数据段偏移量,用于字符串标号
    T 解释数据为一个结构体成员
    X 转换视图到交叉参考模式
    Shift + F9 添加结构体
    空格 切换文本视图与图表视图
    ALT + M 添加标签
    CTRL + M 查看标签
    CTRL + S 查看段的信息
    冒号 常规注释
    CTRL + F12 函数调用图
    Ctrl + F9 导入c头文件
    F5 查看伪代码
    Alt+T 搜索文本
    Alt+B 搜索十六进制
    ctrl+shift+w 拍摄IDA快照
    u undefine,取消定义函数、代码、数据的定义
    view–>open subviews 可以恢复你无意中关闭的数据显示窗口
    windows–>reset desktop 可以恢复初始ida布局
    option–>font option–>font
    option–>general->Auto comments 自动添加反汇编注释

    操作演示

    直接按空格

    显示硬编码:默认对于指令部分是不显示机器码的

    CTRL + F12:函数调用图

     F12 流程图

     

    愿路途漫长,以后莫失莫忘。 愿你不骄不躁,安稳顺心。

    作者:菜鸟-传奇
    本文版权归作者和博客园共有,不以任何盈利为目的,欢迎转载。
  • 相关阅读:
    js实现观察者模式
    磁盘阵列操作实战
    淘宝知名工程师
    Java线程并发控制基础知识
    java多线程总结
    NIO系列1:框架拆解
    Java NIO 系列教程
    Java NIO系列教程(三-十二) Buffer
    Java NIO系列教程(二) Channel
    Java NIO系列教程(一) Java NIO 概述
  • 原文地址:https://www.cnblogs.com/cainiao-chuanqi/p/15175169.html
Copyright © 2011-2022 走看看