Fuzzing Embedded Systems using Debug Interfaces
Fuzzing embedded systems is hard. Their key components – microcontrollers – are highly diverse and cannot be easily virtualized; their software may not be changed or instrumented. However, we observe that many, if not most, microcontrollers feature a debug interface through which a debug probe typically controllable via GDB, the GNU debugger can set a limited number of hardware breakpoints. Using these, we extract partial coverage feedback even for uninstrumented binary code; and thus enable effective fuzzing for embedded systems through a generic, widespread mechanism. In its evaluation on four different microcontroller boards, our prototypical implementation GDBFuzz
quickly reaches high code coverage and detects known and new vulnerabilities. As it can be applied to any program and system that GDB can debug, GDBFuzz
is one of the least demanding and most versatile coverage-guided fuzzers.
Wed 19 JulDisplayed time zone: Pacific Time (US & Canada) change
13:30 - 15:00 | ISSTA 8: Fuzzing 2Technical Papers at Habib Classroom (Gates G01) Chair(s): Marcel Böhme MPI-SP; Monash University | ||
13:30 15mTalk | Guiding Greybox Fuzzing with Mutation TestingACM SIGSOFT Distinguished Paper Technical Papers Vasudev Vikram Carnegie Mellon University, Isabella Laybourn Carnegie Mellon University, Ao Li Carnegie Mellon University, Nicole Nair Swarthmore College, Kelton OBrien University of Minnesota, Rafaello Sanna University of Rochester, Rohan Padhye Carnegie Mellon University DOI Pre-print Media Attached | ||
13:45 15mTalk | Rare Path Guided Fuzzing Technical Papers Seemanta Saha University of California at Santa Barbara, Laboni Sarker University of California at Santa Barbara, Md Shafiuzzaman University of California at Santa Barbara, Chaofan Shou University of California at Santa Barbara, Albert Li University of California at Santa Barbara, Ganesh Sankaran University of California at Santa Barbara, Tevfik Bultan University of California at Santa Barbara DOI | ||
14:00 15mTalk | Finding Short Slow Inputs Faster with Grammar-Based Search Technical Papers DOI | ||
14:15 15mTalk | Fuzzing Embedded Systems using Debug Interfaces Technical Papers Max Eisele Robert Bosch; Saarland University, Daniel Ebert Robert Bosch, Christopher Huth Robert Bosch, Andreas Zeller CISPA Helmholtz Center for Information Security DOI Pre-print | ||
14:30 15mTalk | GrayC: Greybox Fuzzing of Compilers and Analysers for CACM SIGSOFT Distinguished Paper Technical Papers Karine Even-Mendoza King’s College London, Arindam Sharma Imperial College London, Alastair F. Donaldson Imperial College London, Cristian Cadar Imperial College London DOI | ||
14:45 15mTalk | Fuzzing Deep Learning Compilers with HirGen Technical Papers Haoyang Ma Hong Kong University of Science and Technology, Qingchao Shen Tianjin University, Yongqiang Tian University of Waterloo, Junjie Chen Tianjin University, Shing-Chi Cheung Hong Kong University of Science and Technology DOI |