~/talk

The Aftermath of a Fuzz Run: What to do about those Crashes?

links:none on file
slides:none on file

Practical post-fuzz workflow for C/C++: minimize crash corpus with AFL cmin and per-case minimizers, dedupe files, then run AddressSanitizer and Valgrind to classify heap overflows, use the exploitable gdb extension and disable ASLR to reproduce, compile with -g -O0 and instrumented allocators, and use rr to reverse-step into the root cause. Examples: PHP null-deref patched as non-exploitable, Ruby regex heap overflow deemed exploitable but narrow surface, Dynomite off-by-one in string dup fixed after triage.

AI-written summary · about

  1. 0:00Intro
  2. 0:21NeXT, Apple, Weblogic, BEA Systems, Azul Systems
  3. 3:211 Introduce/Review Memory Corruption Bugs 2 A Post Fuzz Run Workflow 3 Real World Examples
  4. 5:01Invalid Reads/Writes
  5. 6:09Stack vs Heap Corruption
  6. 7:54Use After Free
  7. 9:12Other Memory Bugs
  8. 10:23b: What is Exploitability?
  9. 12:10Does "exploitability" matter?
  10. 13:08Google Project Zero
  11. 14:44Many modern exploits are bug chains
  12. 14:58Surprisingly Exploitable
  13. 15:14C-Ares / Chrome OS Remote Code Execution
  14. 16:38Section 1c: Memory Corruption Mitigations
  15. 18:05ASLR Address Space Layout Randomization
  16. 21:23Minimize the Corpus of Crashes
  17. 23:39b: Memory Corruption Analysis Tools
  18. 25:28Valgrind (memcheck)
  19. 27:35Section 2c: Determine Exploitability / Find the Root Cause
  20. 28:26Identify critical memory locations
  21. 32:19PHP: Low invalid read
  22. 35:44Netflix Dynomite: Invalid Write
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.