← All repos

bap

Binary Analysis Platform

armbapbinary-analysisdisassemblerdynamic-analysisemulatorinstruction-semanticsliftermipsocamlpowerpcprogram-analysisprogram-verificationreverse-engineeringsecuritystatic-analysissymbolic-executiontaint-analysisx86
Browse cluster: Cosmos blockchain and smart contract languages
1,290commits
55contributors
9languages

Tech stack & purpose

The Carnegie Mellon University Binary Analysis Platform (CMU BAP) is a suite of utilities and libraries for analyzing binary programs, supporting architectures including x86, x86-64, ARM, MIPS, and PowerPC with extensibility for additional architectures through plugins. The platform is built in OCaml and provides disassemblers, static and dynamic analysis, symbolic execution, and taint analysis capabilities, along with its own domain-specific language called Primus Lisp for implementing custom analyses and interfacing with SMT solvers. BAP can be used as a command-line framework extended with plugins or embedded as a library in user applications, with C bindings and minimal Python support also available. The project was developed at CMU's Cylab and is sponsored by grants from the U.S. Department of Defense, Siemens, Boeing, ForAllSecure, and the Korea government.

Community & reference links

Languages

OCaml
92.1%
Common Lisp
2.6%
C++
2.3%
Raku
1.0%
C
0.8%
Dune
0.8%
Shell
0.4%
Dockerfile
0.1%
Makefile
0.0%

Contributors (top 30 of 55)