IDAPython函数入门

1.1 IDA有三个比较重要的库:IDC,idautils,idaapi.

IDC他是封装IDA和IDC函数的兼容性模块。

idaapi他可以允许我们访问更加底层的数据。

在IDA中我们要使用脚本有三种方式:

        第一种:快捷键shift+F2 调出界面,也可以在菜单中选择命令脚本。

        第二种:ALT+F7 脚本文件进行引用

        第三种:在IDA底部写命令。

1.2IDAPython汇编界面介绍:

  

.text :                                    程序段名称

0x004010B7                        当前的addr地址

movups                                 汇编语句操作符

movups xmmword ptr[xxx],xmmo  这是汇编指令操作符

movups xmmword ...,xmmo           这是反汇编语句

1.3:如何在IDA获取界面中地址函数

当前地址获取使用:idc.here()函数,或者 idc.screen_ea()函数

最小地址可以使用:ida_ida.inf_get_min_ea()

最大地址可以使用:ida_ida.inf_get_max_ea()

当前选择地址的开始:idc.read_selection_start()

当前选择地址的结束:idc.read_selection_end()

如果判断地址是否存在,可以使用:idaapi.BADADDR

这些函数的返回值都是地址,且木有参数。

1.4数值获取:

idc.get_wide_byte(addr)

idc.get_wide_word(addr)

idc.get_wide_dword(addr)

idc.get_qword(addr)

1.5数值操作:

ida_bytes.patch_byte(addr,value)

ida_bytes.patch_word(addr,value)

ida_bytes.patch_Dword(addr,value)

ida_bytes.patch_Qword(addr,value)

二:简单的脚本实现

现在我们写一个脚本,脚本作用是:

获取我们选择区域的所有二进制值,如果二进制数值是0x...   那我们就替换成0x....

  • 8
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值