BREACH attack: 因為 gzip 是使用 HTTP compression,可以觀察 HTTPS 加密後的文本規則,藉此取得用戶的資訊
- 可以繞過 HTTPS ,取得加密前的文本
- static page 不影響
- 不重要的 cookie 不影響
- 可以取得 CSRF token
- Framework/Library 可以稍微緩解被取得的可能性
- 我們的網站目前沒有防禦 CSRF
- Facebook 原本也是用 accountID + datetime 每天產生 CSRF token
- 為了防禦這個問題,進化成每次 request 都有新的 CSRF token
可能影響範圍
- 用戶資料外流
Reference
- Facebook Preventing a “BREACH” Attack https://www.facebook.com/notes/protect-the-graph/preventing-a-breach-attack/1455331811373632/
- Akamai BREACH Attack https://www.akamai.com/uk/en/resources/breach-attack.jsp
- 新的 HTTPS 攻擊:BREACH Compression Attack https://blog.gslin.org/archives/2013/08/16/3434/%E6%96%B0%E7%9A%84-https-%E6%94%BB%E6%93%8A%EF%BC%9Abreach-compression-attack/
- BREACH vulnerability in compressed HTTPS https://www.kb.cert.org/vuls/id/987798/
- 讓我們來談談 CSRF https://blog.techbridge.cc/2017/02/25/csrf-introduction/