A Libre Cross-Platform Disassembler
Panopticon is a graphical disassembler written in Rust that runs on GNU/Linux, Windows and OS X. It aims to create a free replacement for tools like IDA Pro and BinDiff.
Analysis of closed source applications is necessary for security practitioners and FLOSS-developers. Roughly 1/3 of the FSF High Priority Projects will likely involve analysis of binary applications, on top of the dedicated reverse engineering projects. Yet, the majority of the tools to do this are closed source themselves. This problem extends to academia where the lack of stable and extensible binary analysis tools forces scientist to implement their prototypes on top of proprietary software. This further hampers adoption of the -- publicly funded -- research by practitioners.
The Panopticon project aims to develop a tool to end the dominance of proprietary software for reverse engineering. What sets Panopticon apart from other free disassembler is that we believe an intuitive GUI is paramount to aid human analysts to understand as much of the binary as possible. As such Panopticon comes with an Qt 5 UI written in QML that allows browsing and annotating control flow graphs. Panopticon implements semantic-based analysis to resolve dynamic jumps and calls. We believe that a disassembler that knows assembly code semantics allows automation of common reverse engineering tasks and provide aids for manual analysis.
The talk will touch on the vision and architecture of Panopticon. The target audience are reverse engineers interested in FLOSS tools and/or advanced static analysis as well as developers who want to contribute to the project.