~/talk

Detecting Double Free With BPF

Talkat Open Source Summit Korea 2025 · on Wednesday, 2025-11-05· at 16:35· Orchid 1 (2F)· [security]
name:Bojun Seo
github:Bojun-Seo
slides:none on file

A BPF-based detector hooks malloc/free via BPF+uprobes, stores allocation records in BPF maps, and runs the trace logic in a separate process to keep the target’s memory footprint unchanged and overhead low. It reports stack backtraces when the per-address counter underflows (actual double free detected), succeeds on a Valgrind-bypass example and a C++ smart‑pointer case, outperforms ASan/Valgrind on overhead, and cannot detect races where allocator reuses the same address (detects actual double frees only).

AI-written summary · about

  1. 0:00BPF double free detection intro
  2. 2:58Why double free bugs are critical issues
  3. 5:55Existing tool limitations
  4. 8:23BPF and uprobes basics
  5. 10:18Solution architecture
  6. 13:15Tool performance Heisenberg
  7. 16:22Q&A thread safety scope
  8. 19:05Live demo bypassing GDC C++
  9. 22:05BPF vs Address Sanitizer
  10. 27:07Future work conclusion
~/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.