ida-splode, 利用动态分析和仪表增强 static 逆向工程

分享于 

3分钟阅读

GitHub

  繁體 雙語
Augmenting Static Reverse Engineering with Dynamic Analysis and Instrumentation
  • 源代码名称:ida-splode
  • 源代码网址:http://www.github.com/zachriggle/ida-splode
  • ida-splode源代码文档
  • ida-splode源代码下载
  • Git URL:
    git://www.github.com/zachriggle/ida-splode.git
    Git Clone代码到本地:
    git clone http://www.github.com/zachriggle/ida-splode
    Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/zachriggle/ida-splode
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
    
    Splode

    我写的一个工具来帮助你逆转 Windows。 我也证明了我的名字 catchy。

    演示文稿

    参见 slides/ 中的演示示例应用程序中的一些示例。 我还包含了一个 .idb,它展示了一些。 所有注释都由工具自动生成。 我提供的唯一输入是给结构一个 NAME,并选择各种有趣的指令。

    要求

    • %PIN_HOME% 指向英特尔的Pin安装。
    • MongoDB
    • Pro
    • vs 2010

    用法

    • 从 MSVC 2010控制台运行 build.bat
    • 可以选择为 test.exe 启用页堆( gflags/i test.exe +hpa )
    • 运行 release.bat 以在释放模式下跟踪 test.exe 程序
    • 启动 MongoDB
    • 运行 demo.exe.py 以导入跟踪
    • 启动 demo.exe Pro,打开
    • 在IDA中运行 pyidapython_script.py
    • 如果一切正常,ida-splode 应该自动识别数据库中打开二进制文件的所有跟踪,并提供一个选项列表。
    • 按任意一个热键来做 ${things}
      • 幻灯片应该给你一个好主意。
      • Ctrl+Shift+H 复制帮助消息

    提示

    • 如果未启用 PageHeap,则在检测时会浪费大量时间寻找堆元数据。
    • 出于任何原因,如果 _NT_SYMBOL_PATH 包含任何 SYM* 路径而不是本地路径,它将不会找到 PDBs,你将只导出导出路径。 使用 _NT_SYMBOL_PATH=C:symbols 或者类似的。
    • 有很多twiddly位可以打开和关闭。 请参见 knobs.cpp
    • 这通常是在线路上运行。 单独的引脚会使执行缓慢;我的仪表没有被配置为速度或者优化。

    警告

    这是从工作拷贝中提取出来的,所以有些事情可能无法正常工作。 如果遇到任何问题,请随时在 @ebeip90 或者ebeip90上与我联系


    STA  STAT  动态  静态  翻转  逆向工程  
    相关文章