Reverse engineering utilities we explored earlier (like radare2 or reverse) had mostly been cmdline ones. Today we’ll explore Panopticon, a new utility with a smooth GUI written in Qt. Panopticon not only disassembles code, it can also understand the semantics of the code and the invariants, making it possible to represent the code in control flow charts.
- show the hex dump
- disassembled code can be run independently (without VM or debugger), thanks to static analysis
- analyze and decompile
- patch binaries for various platforms and instruction sets
- browse control flow graphs
- display analysis results
- control debugger instances
- edit on-disk or in-memory representation fo the program
- multi-platform (thanks to Qt)
Note that Panopticon in under development and supports only AVR at the time of writing.
To install on Ubuntu, run:
$ sudo apt-get install qt5-default qtdeclarative5-dev libqt5qml-quickcontrols qtbase5-private-dev pkg-config libglpk-dev git build-essential cmake $ git clone https://github.com/das-labor/panopticon.git $ cd panopticon $ cargo build
On GitHub: Panopticon