sashs/Ropper

GitHub: sashs/Ropper

一款跨架构、跨平台的多功能二进制分析工具,专注于 ROP/JOP gadget 搜索与自动化利用链构建。

Stars: 2100 | Forks: 221

# Ropper [![Build Status](https://travis-ci.org/sashs/Ropper.svg?branch=master)](https://travis-ci.org/sashs/Ropper) 您可以使用 ropper 来显示不同文件格式的二进制文件信息, 并且您可以搜索 gadgets 来为不同的架构构建 rop 链(x86/X86_64, ARM/ARM64, MIPS/MIPS64, PowerPC/PowerPC64, SPARC64)。 为了进行反汇编,ropper 使用了很棒的 [Capstone Framework](http://www.capstone-engine.org)。 ## 安装 使用 PyPi 安装 [Capstone](http://www.capstone-engine.org): ``` $ sudo pip install capstone ``` 使用 PyPi 安装 [filebytes](https://github.com/sashs/filebytes): ``` $ sudo pip install filebytes ``` 可选(运行 ropper 不需要,仅用于查找 gadgets): 安装 [Keystone](http://www.keystone-engine.org): ``` $ sudo pip install keystone-engine ``` 安装并运行 Ropper ``` $ python setup.py install $ ropper ``` 您也可以使用 pip 安装 Ropper ``` $ pip install ropper ``` 如果您愿意,可以在不安装的情况下运行 Ropper ``` $ ./Ropper.py ``` 如果您不想安装 filebytes,filebytes 是 ropper 仓库的一个子模块。这意味着您不需要安装 filebytes 和 ropper。 ``` $ git clone https://github.com/sashs/ropper.git $ cd ropper $ git submodule init $ git submodule update $ ./Ropper.py ``` 此功能仍在开发中! Ropper 有一个语义搜索命令,它提供了搜索 gadgets 的可能性。 ``` $ ropper --file --semantic "" ``` 使用语义搜索需要以下可选依赖项: 安装 [pyvex](https://github.com/angr/pyvex) ``` $ sudo pip install pyvex ``` 安装 [z3py](https://github.com/Z3Prover/z3) ``` $ python scripts/mk_make.py $ cd build $ make $ sudo make install ``` ## 当前可能的约束 ``` reg == reg - assign register to another reg == number - assign number to register reg == [reg] - assign memory to register reg += number/reg/[reg] reg -= number/reg/[reg] reg *= number/reg/[reg] reg /= number/reg/[reg] ``` ## 约束示例 ``` eax==1 !ebx - set eax to 1 and look for gadgets which does not clobber ebx ``` semantic_search ## 用法 ``` usage: Ropper.py [-h] [--help-examples] [-v] [--console] [-f [ ...]] [-r] [-a ] [--section
] [--string []] [--hex] [--asm [ [H|S|R] ...]] [--disasm ] [--disassemble-address ] [-i] [-e] [--imagebase] [-c] [-s] [-S] [--imports] [--symbols] [--set
标签:Capstone框架, CTF工具, DNS 反向解析, Exploitation, Gadgets搜索, Hakrawler, MIPS, PowerPC, ROP链构造, SPARC, x86, 二进制分析, 云安全监控, 云安全运维, 反汇编工具, 漏洞搜索, 语义搜索, 跨平台架构, 逆向工具, 静态分析