zoukankan      html  css  js  c++  java
  • ida脚本学习

    #!/usr/bin/env python
    #coding:utf-8
    
    from idc import  *
    import idaapi
    import idautils
    
    
    import os
    os.system("cls")
    
    #打印当前光标在的位置
    ea = idc.ScreenEA()
    
    #print idc.__file__
    #----------------------------------------------------------------------
    def  test():
        """"""
    
        print "%x"%(ea)
    
        #和上一句一样
        print "%x"%here()
    
        #最小地址
        print "minea%x"%(MinEA())
    
        #最大地址
        print "maxea%x"%(MaxEA())
    
    
        print "segname%s"%(idc.SegName(ea))
    
        #打印指令
        print "GetOpnd%s"%(GetOpnd(ea, 0))
        print "GetOpnd%s"%(GetOpnd(ea, 1))
        print "GetOpnd%s"%(GetOpnd(ea, 2))
    
        print  "GetDisasm %s"%(GetDisasm(ea))
    
        print "GetMnem %s"%GetMnem(ea)
        
        #判断是否为有效地址
        if here()!=idaapi.BADADDR:
            print "idaapi.BADADDR %x"%idaapi.BADADDR
    
    
    #打印libnative_lib.so中的所有函数
    for seg in idautils.Segments():
        mname = SegName(seg)
        if "libnative_lib.so"in mname:
            print SegName(seg)
            print "%x %x"%(SegStart(seg) ,SegEnd(seg))
            funlist =  idautils.Functions(SegStart(seg),SegEnd(seg))
            for func in funlist:
                print GetFunctionName(func)

    脚本打印结果

  • 相关阅读:
    Oracle VM VirtualBox安装centos8
    HTML5 离线缓存manifest
    ES6 Proxy函数和对象的增强
    ES6 Map数据结构
    ES6 Set和WeakSet
    ES6Symbol在对象中的应用
    ==,===,与ES6中is()的区别
    ES6对象操作
    ES6函数和数组补漏
    ES6箭头函数
  • 原文地址:https://www.cnblogs.com/fply/p/8427528.html
Copyright © 2011-2022 走看看