如果会话令牌存储在设置了 httponly 的 cookie 中,是否存在 XSS 漏洞可能允许恶意用户窃取用户会话令牌的方法?
设置 httponly 是否可以防止使用 XSS 窃取会话?
信息安全
Web应用程序
xss
饼干
2021-08-28 18:25:57
4个回答
一般来说,如果httponly
在其令牌上设置了 ,那么 XSS 攻击应该无法检索会话令牌。取模过去浏览器和插件中的错误,以及服务器配置错误(例如响应 HTTP TRACE)。
但它不值多少钱。您可以阻止 XSS 获取令牌,但 XSS 攻击仍然可以完全控制用户机器上的会话:它可以强制用户在站点上执行几乎所有操作,或者伪造用户到站点的界面(例如,通过网络钓鱼获取站点凭据)。请参阅BeEF以了解攻击者可以通过受损会话实现的目标:您已经几乎失去了目标。
httponly
最好不设置会使攻击者的生活稍微容易一些,因为他们可以在自己的时间从自己的机器上访问会话,而不是受限于用户保持浏览器窗口打开的时间。httponly
在可能的情况下值得拥有,但它是一种温和的缓解措施,并不能神奇地保护您免受 XSS 的影响。
如果操作正确,HttpOnly 可以防止攻击者窃取 cookie。但是,他们仍然可以冒充受害者用户执行任意 Web 请求,并提取响应。例如,BEEF 有一个模块可以做到这一点。
换句话说,HttpOnly 使攻击者的事情变得更加困难,但并不能阻止熟练的攻击者。
此外,正如其他人所指出的那样,存在各种漏洞可以让攻击者提取 HttpOnly cookie。
底线 - 所有 XSS 都可能很严重,您需要修复 XSS 缺陷。
是的。大多。标头可防止“Cookie 窃取”,这是脚本劫持会话的一种简单方法。
它还取决于您的浏览器是否支持 HTTPonly 标头。如果不是,那么它将被忽略,并且它创建的功能永远不会发生。
这是一个更多解释标题的链接。它还包含一个表格,显示哪些浏览器支持它: https ://www.owasp.org/index.php/HttpOnly
其它你可能感兴趣的问题