~/talk

JavaScript attack surface

Talkat JavaScript Summit Armenia 2023 · on Saturday, 2023-02-18· [security, javascript]
links:none on file
slides:none on file

Lists concrete exploits and fixes: demonstrates reflected XSS via query/body parameters and setTimeout-eval DOM XSS, stored XSS through unrestricted uploads, cache poisoning on Varnish that persists injected HTML, PDF/electron chains leading to local file read, SSRF or remote code execution, and prototype pollution that turns a recursive merge into arbitrary script loading via data: URIs. Shows tools and mitigations: CSP and Google CSP Evaluator, Untrusted Types, DOMPurify, postMessage origin checks, npm audit and npm scopes / resolution priorities to prevent dependency confusion.

AI-written summary · about

  1. 0:00Introduction to JavaScript attack surface
  2. 0:24Impact of JavaScript vulnerabilities
  3. 1:16Reflected XSS explained
  4. 1:58Stored XSS and file uploads
  5. 2:41Cache poisoning attacks
  6. 4:29PDF and Electron XSS risks
  7. 4:50Preventing reflected and stored XSS
  8. 5:36Content Security Policy basics
  9. 6:58CSP evaluator and unsafe policies
  10. 7:40DOM-based XSS vulnerabilities
  11. 9:11Client-side template injection
  12. 10:28Safe template rendering methods
  13. 10:56DOM clobbering explained
  14. 13:13Finding DOM XSS with Untrusted Types
  15. 14:41PostMessage API security risks
  16. 16:35Securing PostMessage interactions
  17. 17:41Prototype pollution attacks
  18. 20:00Node.js prototype pollution severity
  19. 20:41Preventing prototype pollution
  20. 21:23Vulnerable dependencies risks
  21. 21:47Dependency confusion explained
  22. 22:52Q&A and closing remarks
~/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.