Binary Level Software Analysis


Contact: Ammar Ben Khadra


Broadly speaking, the general goal of our work is to improve the state of the art in software analysis at binary level (machine code) with a particular focus on security applications. To this end, we are attacking the problem from multiple angles including disassembly (by recovery of assembly and control flow graph from binaries), instruction semantics (automatically synthesize instruction semantics by observing outputs of an oracle, e.g., a CPU simulator), and finally adapting static/dynamic analysis techniques to binary software. Analysis of software at source code level is a well researched problem with many commercially offerings available. In contrast, binary-level analysis is still an area fertile for new ideas. DARPA's recent Cyber Grand Challenge gives a strong evidence about the importance of this research area.