Cyber Risks · Trail of Bits Blog

2000 cuts with Binary Ninja

Summary: A Trail of Bits researcher used Vector35's Binary Ninja, an interactive static analysis and reverse engineering platform, to write a Python script that generated crashing inputs for 2,000 unique binaries across the DEFCON CTF qualifying round's 334, 666, and 1,000 cuts challenges. The binaries were stripped DECREE challenge files with a static stack buffer, a canary checked against a hard-coded value, and a stack-based buffer overflow, differing only in four ways that the script extracted via Binary Ninja's LowLevelIL and get_parameter_at() function.

Bottom line: A single script, built in minimal effort against a tool still in private beta, defeated 2,000 challenge binaries by automating canary extraction and buffer-size calculation - the same mechanical efficiency that turns one-off vulnerability research into repeatable, scalable exploitation.

Read the original at Trail of Bits Blog ↗