談到網頁前端安全,第一個想到的幾乎都是 XSS,一種利用 JavaScript 的攻擊手法。有許多人都以為只要阻止 JavaScript 執行就足夠了,但事實上還可以透過其他方式攻擊,例如說 iframe 或甚至是拿來裝飾網頁的 CSS!
在本場講題中,我會介紹 CSS injection 這個較少人提及的攻擊手法,讓攻擊者藉由 CSS 來偷取網頁上的文字以及敏感資料,例如說可以偷取 CSRF token,再用這組 token 進行 CSRF 攻擊,來繞過原本 CSRF 的防範機制。
最後我會以知名開源協作筆記軟體作為實際案例,來探討 CSS injection 的攻擊與防禦。