~/talk

Broken Brokers in Boxes: Fuzzing Breaks Everything, Even Erlang

links:none on file
slides:none on file

Three vulnerabilities appear in RabbitMQ, EMQX, VerneMQ found by protocol fuzzing of AMQP and MQTT. One concrete exploit is a crafted TLV message where a single TLV type change causes RabbitMQ to allocate until the VM is killed; reproducing the failure uses a script that sends the protocol header then the anomalous open frame. Generational/model-based fuzzing targets TLVs and length fields, and running brokers in a 0.5 GB container, no swap reliably reveals resource exhaustion faults.

AI-written summary · about

  1. 0:00Intro
  2. 1:33What is a Message Broker?
  3. 3:30The Vulnz
  4. 4:18Stuff Blowing Up
  5. 6:00Our Favorite Definition of Fuzzing
  6. 7:04Fuzzing Domains
  7. 8:43Some Test Cases are Better Than Others
  8. 14:40Protocols are Conversations
  9. 16:03Type Length Value (TLV) Structures
  10. 19:33Spot the Difference
  11. 21:08It's Not Just About Process Crashes
  12. 22:20"Safer" Environments Deny Some Failures
  13. 23:45Bugs and Failure Modes
  14. 26:50Erlang's "Fail Fast" Inverts Protocol Parsing
  15. 28:18Parsing is Always Tricky
  16. 29:36VM Architecture Provides Insulation
  17. 31:01Memory Exhaustion Can Be Hard to See and Reprd
  18. 32:52Containers Provide Easy Constraints
  19. 34:18This is the Magic
  20. 37:57Thank You
~/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.