Bin2Wrong: a Unified Fuzzing Framework for Uncovering Semantic Errors in Binary...
summary
BIN2WRONG implements a decompiler-agnostic fuzzer that mutates source, compiler options, optimizations and binary format via a unified testcase structure, compiling and re-decompiling binaries to detect semantic divergence. Evaluated against Cornucopia and DecFuzzer across seven decompilers, it reports 10.39× and 17.18× higher binary diversity and ~1.16×–1.32× more decompiler coverage, finds 48 new bugs (30 confirmed/fixed), and triggers a major Binary Ninja redesign, showing the approach works at scale.
AI-written summary · about
chapters (8)
- 0:00Introduction
- 1:44Decompiler correctness factors
- 3:50Unified fuzzing framework design
- 7:26Binary diversity evaluation
- 9:11Decompiler code coverage
- 10:12Decompilation bugs found
- 12:58Case study: Binary Ninja bug
- 13:40Conclusion
related talks
27mBinSim: Trace-based Semantic Binary Diffing...
50mWhat the Fuzz
53mThree Colours of Fuzzing: Reflections and Open Challenges
21mDemystify Today's Binary Disassembling and How Modern ABI Makes it Easier
52mStructure aware fuzzing
33mBe a Binary Rockstar
18mOptimization-Directed Compiler Fuzzing for Continuous Translation Validation
51mReverse Engineering Binaries
