~/talk

Fuzzing PostgreSQL

Talkat POSETTE: An Event for Postgres 2026 · 2026-06-16..06-18· [security, databases]
slides:none on file

Shows applying fuzzing to Postgres’ client library libpq, building minimal harnesses that feed mutated protocol inputs directly into library entry points, and running AFL and honggfuzz; an experiment hits ~40 execs/sec with full coverage instrumentation versus a faster run at ~7,000 execs/sec. Describes practical pitfalls: PostgreSQL is stateful with one-process-per-connection, TCP setup slows fuzzing, and hardcoded length parameters must be included in fuzzer input to reach deeper branches. Prior work finds a few real bugs; continuous fuzzing on PG remains an open effort.

AI-written summary · about

  1. 0:00Music & introduction
  2. 0:47Speaker intro: security and systems background
  3. 1:39What is fuzzing? From random to coverage feedback
  4. 5:00Toy C program: 6 branches to a hidden crash
  5. 8:28Fuzzers in action: AFL and Honggfuzz
  6. 10:36Pulling JPEGs out of thin air: fuzzers as learners
  7. 11:56Testing is polite, fuzzing is rude
  8. 13:37Why fuzz PostgreSQL? An attack-surface map
  9. 16:33Networking protocol and libpq as the high-value target
  10. 17:00Prior talks and the challenges of fuzzing Postgres
  11. 20:21A simpler harness approach and live demo
  12. 22:20Lessons learned and what's next
~/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.