~/talk

HTTP Desync Attacks: Request Smuggling Reborn

Talkat Black Hat Europe 2019 · 2019-12-02..12-05· [web-platform, security]
slides:none on file

Remote unauthenticated HTTP desync lets an attacker make a backend treat an injected prefix as a separate request by abusing mismatched parsing of Content-Length vs Transfer-Encoding: chunked or using HTTP line wrapping. A timing‑based detection plus the released scanner smuggle probe reliably finds vulnerable chains; verified exploits include cache poisoning, mass account hijacks (Trello/Bugzilla), internal API access (New Relic), and chained CDN poisoning (PayPal), earning over $70k in bounties. Defensive fix: front-end normalization or use HTTP/2 to backends.

AI-written summary · about

  1. 0:00Intro
  2. 3:56Outline
  3. 5:48HTTP/1.1 keep-alive, desynchronized
  4. 7:08Desynchronizing: the classic approach
  5. 8:01Desynchronizing: the chunked approach
  6. 8:52Desynchronizing: the TE.CL approach
  7. 11:59Methodology
  8. 12:25Detecting desync
  9. 15:09Confirming desync
  10. 17:32Bypassing rules
  11. 18:18Bypassing rewrites
  12. 19:44Request reflection
  13. 20:47Exploring
  14. 22:57Involuntary request storage
  15. 25:37Harmful responses
  16. 27:04Accidental Cache Poisoning
  17. 29:47Chaining DOM Problems
  18. 30:47Redirects with teeth
  19. 32:43Web Cache Poisoning
  20. 33:52PayPal Poisoning
  21. 35:28Wrapped exploits
  22. 40:36Aggressive detection
  23. 41:30Source code review
  24. 42:31Other sources
  25. 43:55Defence
  26. 45:57Case Study: Application Load Balancer BHEU EXCLUSIVE
~/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.