~/talk

Freezing the Web: A Study of ReDoS Vulnerabilities in JavaScript-based Web Servers

Talkat USENIX Security '18 · on Wednesday, 2018-08-15· at 16:15· Grand Ballroom 1-4· [javascript, security, nodejs]
links:none on file
links:none on file
slides:none on file

A methodology links module-level regexp flaws to live Node.js servers by finding vulnerable NPM regexes (module deemed vulnerable if a crafted 80,000‑char input takes >5s), building local usage scenarios, and sending staged HTTP header payloads with iterative probing (≤80 requests). The study identifies 25 module vulnerabilities, crafts exploits (exponential and superlinear cases, e.g. a user-agent parser needing ~40 chars for 2s), tests 2,846 websites, and finds 339 vulnerable (11%); defenses observed include header-size limits and simple request-rate checks.

AI-written summary · about

  1. 0:00Intro
  2. 0:36Regular Expression Denial of Service (ReDos)
  3. 2:17Backtracking-based Matching
  4. 3:59Overview
  5. 4:59Setup
  6. 6:52Ethical Considerations
  7. 7:41Npm Analysis
  8. 8:56Vulnerable Regular Expressions
  9. 10:20HTTP-level Payload Creation
  10. 11:30Input Dependency
  11. 12:21Websites Analysis
  12. 13:38Response Time of a Non-Vulnerable Website
  13. 14:13Phase 3: Response Time of a Vulnerable Website
  14. 14:51Phase 3: Number of Vulnerable Websites
  15. 17:16Defenses (2)
  16. 19:53Dimensioning Payloads
~/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.