seemoo-lab / polypyus

GNU General Public License v3.0
215 stars 27 forks source link

Support radare2/Cutter #3

Open XVilka opened 4 years ago

XVilka commented 4 years ago

Ghidra is not the only free and open source reverse engineering tool available. Another popular one is Radare2, a highly-portable cross-platform reverse engineering framework and a toolkit without dependencies. It has support for analyzing binaries, disassembling code, debugging programs, attaching to remote GDB/LLDB, WinDbg servers, rich plugin system (see r2pm), and integration with various decompilers. For example, ghidra decompiler plugin - r2ghidra-dec. It is actively developed and can be easily integrated in various open source and commercial products. I believe, it will be highly beneficial to support these and provide a package for install from r2pm, see the package repository here: https://github.com/radareorg/radare2-pm

image

For documentation on writing plugins for radare2 see Scripting and Plugins Radare2 Book chapters.

Cutter is a crossplatform Qt/C++ GUI frontend to radare2:

image

For documentation on writing plugins for Cutter see the official tutorial and the curated list of various popular plugins.

With the support of Binary Ninja and Radare2/Cutter, plus existing IDA Pro and Ghidra, you will cover most of the usage cases for heterogeneous teams.

jiska2342 commented 4 years ago

Sorry to say this, but in our disassembler benchmark, radare2 performed the worst. Thus, integrating Polypyus into other disassemblers will have higher priority.

XVilka commented 4 years ago

Please let us know what can be fixed from our side. Thank you!

jiska2342 commented 4 years ago

This are the disassembler benchmarks I made for the CYW20735 firmware. If you have any recommendations which arguments to provide to radare2 to improve this, please let me know.

image

XVilka commented 4 years ago

Thank you, we will look into this!