~/talk

3.14 things I didn't know about CSS

Talkat DevFest Nantes 2015 · on Friday, 2015-11-06· [css, security]
slides:none on file

Shows concrete surprises and exploits: how to fake importance by repeating classes, when font-family needs quotes and when it doesn’t, HTML vs CSS rules for unquoted attributes, and using parse errors as pseudo single-line comments. Demonstrates a CSS-only page via the Link HTTP header and content:, a CSS game, the CSS.escape API, brute‑force exfiltration via attribute selectors, and resurrected CSS expressions in old IE (via iframe + document‑mode) — recommends X-Frame-Options and the HTML5 doctype as mitigations.

AI-written summary · about

  1. 0:00Intro
  2. 2:35important
  3. 4:04Font family names in CSS
  4. 7:20Unquoted attribute values
  5. 7:44CSS comments
  6. 11:10Valid HTML
  7. 16:47Classes and IDs in HTML
  8. 20:00Escaping CSS selectors
  9. 24:18Injection contexts
  10. 29:01Stealing data from the DOM
  11. 32:36IE's legacy document modes
  12. 35:24How to avoid CSS expression vulnerabilities?
  13. 37:12Freezing Firefox
  14. 38:27What band is this?
  15. 39:13What song is this?
~/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.