Bug 曝光台 建议 testerhome 页面 Cookie 中的 userid 设置 httponly

zailushang · 2020年06月23日 · 最后由 zailushang 回复于 2020年06月24日 · 56 次阅读

问题:testerhome 网页可以通过 JS 获取 Cookie 信息:

document.cookie; 

可以获取到 user_id 的信息:

这就造成了巨大的安全隐患,这是因为在 HTML 页面中引入第三方的 JavaScript 代码是允许的:

<html>
    <head>
        <script src="http://www.xxx.com/jquery.js"></script>
    </head>
    ...
</html>

如果引入的第三方的 JavaScript 中存在恶意代码,则 www.xxx.com 网站将直接获取到目标网站的用户登录信息。

推荐解决:服务器在设置 Cookie 时可以使用 httponly

设定了 httponly 的 Cookiie 将不能被 JavaScript 读取,主流浏览器均支持 httponly 选项,
通过 Chrome 的开发者工具发现_homeland_session 和_remember_user_token 已设置了 httponly,建议把 user_id 也设置 httponnly。

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
共收到 7 条回复 时间 点赞

这个问题提的好

什么场景会出现这种情况?

恒温 回复

都会出现 [捂脸]

恒温 回复

登录后就有

zailushang 回复

不是,我的意思是别人怎么才能拿到你的 id。因为现在内部实现,的确需要 js 使用 userid。

恒温 回复

https 能防住中间人劫持,那应该就没啥问题了

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册