首页
社区
课程
招聘
[旧帖] experiment : use python Script file on IDA6.1 0.00雪花
发表于: 2013-6-25 14:38 1409

[旧帖] experiment : use python Script file on IDA6.1 0.00雪花

2013-6-25 14:38
1409
experiment : use python Script file on IDA6.1
在IDA6.1中内建了插件idaPython, 在IDA6.1启动后可以看到内建python版本2.6.6
--------------------------------------------------------------------------------------  
Python 2.6.6 (r266:84297, Aug 24 2010, 18:46:32) [MSC v.1500 32 bit (Intel)]   
IDAPython v1.5.0 final (serial 0) (c) The IDAPython Team <idapython@googlegroups.com>  
--------------------------------------------------------------------------------------  

当前python最新版本已经是3.3, 去下载一个python2.6.6, 可以在一个计算机上装多个python, 不影响.
只要启动一个python的IDLE, 就可以决定下一次打开py文件的python默认编辑器.

python2.6.6下载点: 958K9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8Y4N6%4N6#2)9J5k6i4m8&6N6r3S2G2L8W2)9J5k6h3!0J5k6#2)9J5c8X3c8G2N6$3&6D9L8$3q4V1i4K6u0r3M7X3g2D9k6h3q4K6k6i4y4Q4x3V1j5J5i4K6u0W2y4W2)9J5k6e0k6Q4x3V1j5`.
python3不兼容python2, 如果要验证python2.6.6的插件源码, 需要在python2.6.6的IDLE中进行验证.
<<python基础教程>>中有python基本语法和应用
<<python灰帽子>>中有IdaPython插件源码示例
Ida中的python调试函数列表:
97dK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6%4N6%4N6Q4x3X3g2Z5k6i4S2Q4x3X3c8J5j5i4W2K6i4K6u0W2j5$3!0E0i4K6u0r3M7s2u0G2k6s2g2U0N6s2y4Q4x3V1k6A6k6r3q4Q4x3V1k6K6N6i4m8H3L8%4u0@1i4K6u0r3K9h3c8S2k6r3!0U0i4K6u0r3x3e0j5J5i4K6u0W2M7$3S2@1L8h3H3`.

python2.6.6不支持中文注释~
# @file         LocByName.py  
# @brief        when IDA load a PE file,  
#               find win32API we need on IDA  
  
from idaapi import *  
  
FuncsToFind = ["wprintf", "getchar"]  
  
for FuncCur in FuncsToFind:  
    addr = LocByName(FuncCur)  
    if BADADDR != addr:  
        cross_refs = CodeRefsTo(addr, 0)  
        print "FuncsToFind %s" % FuncCur  
        for ref in cross_refs:  
            print "%X" % ref  
            SetColor(ref, CIC_ITEM, 0x0000ff)  
              
在IDLE中编辑py文件, 当.py没有语法错误后, 可以用IDA加载.py脚本文件干活.
先清空IDA命令输出区内容, 容易观察.py脚本运行结果

被IDA加载的测试工程源码:
#include "stdafx.h"  
  
  
int _tmain(int argc, _TCHAR* argv[])  
{  
    _tprintf(L"hello, opcode\r\n");  
    getchar();  
    return 0;  
}  



在LocByName.py运行后, 可以看到IDA输出, 确实找到了wprintf, getchar2类函数

FuncsToFind wprintf  
401008  
FuncsToFind getchar  
401011  

查看IDA视图, 可以看到被找到的函数已经被标记成红色.

按下空格键, 切换到汇编视图, 也可以看到函数被找到并且标记成红色

[培训]科锐软件逆向54期预科班、正式班开始火爆招生报名啦!!!

上传的附件:
收藏
免费 0
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回