可通過相同域中的其他應用程序訪問路徑范圍過大的 cookie。
開發者通常將 cookie 設置為可從根上下文路徑(“/”)訪問它。這樣做會使 cookie 暴露在域中的所有 Web 應用程序下。由于 cookie 通常包含敏感信息(如會話標識符),因此,在應用程序之間共享 cookie 可能在一個應用程序中導致漏洞,從而危及其他應用程序安全。
例 1:
假設您有一個論壇應用程序并將其部署在 http://communitypages.example.com/MyForum 上,當用戶登錄該論壇時,該應用程序將使用路徑“/”設置會話 ID cookie。
例如:
Cookie cookie = new Cookie("sessionID", sessionID);
cookie.setPath("/");
http://communitypages.example.com/EvilSite 上創建了另一個應用程序,并在論壇上發布了該站點的鏈接。當論壇用戶點擊該鏈接時,他的瀏覽器會將 /MyForum 設置的 cookie 發送到在 /EvilSite 上運行的應用程序。攻擊者就這樣竊取了會話 ID,就能夠危及瀏覽到 /EvilSite 的任何論壇用戶的帳戶安全。/EvilSite 進行 cookie poisoning 攻擊,創建自己范圍過大的 cookie,并覆蓋來自 /MyForum 的 cookie。
[1] Standards Mapping - OWASP Top 10 2004 - (OWASP 2004) A10 Insecure Configuration Management
[2] Standards Mapping - OWASP Top 10 2007 - (OWASP 2007) A6 Information Leakage and Improper Error Handling
[3] Standards Mapping - OWASP Top 10 2010 - (OWASP 2010) A6 Security Misconfiguration
[4] Standards Mapping - FIPS200 - (FISMA) CM
[5] Standards Mapping - Web Application Security Consortium 24 + 2 - (WASC 24 + 2) Information Leakage
[6] Standards Mapping - Payment Card Industry Data Security Standard Version 1.1 - (PCI 1.1) Requirement 6.5.10
[7] Standards Mapping - Payment Card Industry Data Security Standard Version 1.2 - (PCI 1.2) Requirement 6.5.7
[8] Standards Mapping - Payment Card Industry Data Security Standard Version 2.0 - (PCI 2.0) Requirement 6.5.8