~/talk

DIFUZE: Android Kernel Driver Fuzzing

Talkat Black Hat Europe 2017 · 2017-12-04..12-07· [security]
links:none on file
links:none on file
links:none on file
links:none on file
slides:none on file

Difuze compiles kernel sources to LLVM bitcode, extracts ioctl handlers and device names, recovers command IDs and C struct layouts, then generates concrete struct instances and ships fuzz units to an on‑device executor over ADB. Tested on seven phones (789 handlers, 469 device names recovered) it finds 36 unique crashes (3565 command IDs recovered; ~53% expect input pointers) including a MediaTek out‑of‑bounds that yields kernel escalation, writable NVRAM that changes serial/IMEI, and a buggy kernel‑assert path writing to 0xdead. Tool accuracy in a 35‑handler sample is ~90%.

AI-written summary · about

  1. 0:00Introduction
  2. 0:21Linux kernel fundamentals
  3. 3:56Device drivers and ioctl
  4. 7:33Security risks in Android
  5. 9:45Challenges with ioctl fuzzing
  6. 12:42Introducing Defuse
  7. 15:32Interface recovery pipeline
  8. 25:07Structure generation
  9. 28:54Execution and triage
  10. 32:12Evaluation and results
  11. 37:27Example vulnerabilities
  12. 40:31Future work and conclusion
  13. 42:22Q&A session
~/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.