IDA的快速组合键 总结

学习逆向的基本离不开IDApro,学习逆向已经半年了,不知道有没有人和之前的我一样对于IDA只知道用shift+f12,和f5弄成C语言伪代码,着实有点丢人,今天特意总结一下IDA的快捷键,不仔细研究一波IDA还真不知道IDA中有如此多的功能,
IDA的快捷键的设计有一定的模式,因此我们可以加强快捷键的记忆,使逆向的速度更快,更加得心应手。

下面简绍一部分定义数据类型的快捷键。使用这些快捷键的时候需要让焦点(光标)对应行上才能生效
U(Undefine)键 :即取消一个地方已有的数据类型定义,此时会弹出确认的对话框,单击“Yes”即可
D(Data):即让某一个位置变成数据。一直以按D键,这个位置的数据类型将会以1字节,2字节,4字节,8字节进行循环。IDA为了防止误操作,如果定义数据的操作会影响到已经有数据类型的位置,IDA会弹出确认的对话框;如果操作的位置及其附近完全十Undefined,则不会弹出确认对话框。
C(Code)键:即让某一个位置变为指令。确认对话框的弹出时机也与D键类似。在定义为指令后,IDA会自动以此为其实位置进行递归下降反汇编
A(ASCII)键:会以该位置为起点定义一个“\0”结尾的字符串类型。
*:将此处定义为一个数组,此时弹出一个对话框,用来设置数组的属性。
O(Offset)键:即将此处定义为一个地址偏移.

下面的是函数的操作

删除函数:在函数窗口中选中函数,按Delete键;
定义函数:在反汇编窗口中选中对应行后,按P键;
修改函数参数:在函数窗口中选中并按Ctrl+E组合键,或在反汇编窗口的函数内部按Alt+P组合键。

下面是导航操作

后退到上一步位置:快捷键Esc
前进到下一个位置:快捷键Ctrl+Enter
跳转到某一个特定位置:快捷键G,然后可以输入地址/已经定义的名称。
跳转到某一区段:快捷键Ctrl+S,然后选择区段即可。

类型操作的话IDA有一套类型分析系统,用来处理C/C++,并且允许用户自由指定。
方法:选中变量,函数后按Y键,弹出对话框,从中输入正确的C语言类型,IDA就会解析并且自动应用这个类型。

在IDA的菜单栏”View——Open subviews“下可以打开各种类型的窗口,
String窗口:按shiift+f12组合键即可打开,可以识别程序中的字符串,双击即可在反汇编窗口中定位到目标字符串。
十六进制窗口:默认打开,可以按F2键对数据库中的数据进行修改,修改后再次按F2键即可应用修改。

切换数据显示格式
Hexadecimal:十六进制显示,快捷键为H键,可以将各种其他显示格式转换回数字。
Octal:八进制显示
Char:将常量转为形如‘A’的格式,快捷键为R键。
Enum:将常量转为枚举中的一个值,快捷键为M
Invert sign: 将常量按照补码解析为负数,快捷键为**_
Bitwise negate:将常量按位取反,形如C语言中的0xF0,快捷键为
~
shift+f5组合键,可以打开
Signature**列表,其中回显示已经应用的函数签名库。

IDA内置了一个python环境
执行Python脚本文件:alt+F7,file+scrip file
打开脚本面板:shift+F2-----scripting language+python

ALT+T(search-test):找地址
alt+k:修改值
加载C语言头文件:ctrl+F9搜索指令:alt+t
字节数据搜索:alt+B
IDA内置了一个python环境
执行Python脚本文件:alt+F7,file+scrip file
打开脚本面板:shift+F2-----scripting language+python

修改名字标识符:n(name):
在IDA的注释也注重与汇编和C语言注释结合
第一个按分号 ;
其他像这里跳的也会由此注释
第二个shift+;
没有其他地方副本的注释
交叉引用:x
修改名字标识符:n(name):
在IDA的注释也注重与汇编和C语言注释结合
第一个按分号 ;
其他像这里跳的也会由此注释
第二个shift+;
没有其他地方副本的注释
交叉引用:xctrl+alt+k去修改指定位置的汇编代码(keypatch插件)。

shift+F1会调出Local Types窗口,按insert键(右键)从中可以操作C语言简单类型,IDA会解析并存储其中的类型。

  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
回答: IDA Python是IDA中一个强大的功能,可以通过编写Python脚本来扩展IDA的功能。安装IDA Python的步骤如下:首先,根据自己的IDA版本和Python版本,下载对应的IDAPython包。然后,将IDAPython解压后的Python文件夹内的所有内容覆盖掉IDA原有的Python文件夹。接下来,将IDAPython解压后的Plugins文件夹中的python.plw和python.p64拷贝到IDA原有的Plugins文件夹中。最后,将IDAPython解压后的python.cfg文件拷贝到IDA原有的cfg文件夹中。如果python2.7安装包中没有python27.dll,可以将python26.dll重命名为python27.dll,并确保python的系统位数与IDAPython的系统位数相同。安装完成后,可以通过编写IDA Python脚本来扩展IDA的功能。IDA Python文档提供了相关函数的详细说明,可以在官方网站上获取相关文档。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [IDA 配置python环境,可执行python脚本](https://blog.csdn.net/ayxh0058/article/details/101094191)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *3* [ida使用技巧:ida python](https://blog.csdn.net/m0_52164435/article/details/124878537)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值