~/talk

No Excuses Anymore: The Demise of Cross Site Scripting

Talkat DevDays 2023 · 2023-06-06..06-09· [security]
github:wenz
slides:none on file

Claim: widespread XSS is avoidable now by concrete measures not theory. Evidence: CVE counts still climb but demos use HTTP header Content-Security-Policy with specific script/style/image sources, nonces or SHA hashes to restore inline behavior, disable unsafe-eval, and use Content-Security-Policy report-only to tune rules. For SPAs the demo wires trusted types + DOMPurify so innerHTML assignments fail unless explicitly sanitized, restoring functionality while blocking injected scripts.

AI-written summary · about

  1. 0:00Introduction
  2. 1:10Why cross-site scripting persists
  3. 3:21Defining XSS and impact
  4. 7:10Same origin policy role
  5. 10:28Browser XSS mitigation attempts
  6. 12:53Content Security Policy
  7. 15:22How Content Security Policy works with directives
  8. 18:51Demo of Content Security Policy breaking an application
  9. 24:47Re-enabling inline scripts with CSP
  10. 26:57Nonces and hashes for scripts
  11. 28:23Reporting CSP violations
  12. 29:51CSP firewall against XSS
  13. 30:12SPA XSS risks
  14. 32:46React dangerous APIs
  15. 34:50Trusted Types API
  16. 37:57Demo Trusted Types prevents XSS
  17. 39:03Summary and call to action
~/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.