DNSlog平台通用xss【通过】
2020-06-18 10:25:31 Author: forum.90sec.com(查看原文) 阅读量:493 收藏

0x01 DNSLOG原理

我们在测试一些网站的时候,会遇到一些网站注入是无回显的,这个时候一般就直接丢sqlmap,或者我们自己写个脚本来进行盲注,但是尝试次数太多,很有可能被ban掉ip,所以往往盲注的效率真的很低,然后某一天新的技术就产生了,也就是DNSlog注入。

image

具体原理如下:

首先需要有一个可以配置的域名,比如:dnslog.cn,然后通过代理商设置域名 dnslog.cn 的 nameserver 为自己的服务器 A,然后再服务器 A 上配置好 DNS Server,这样以来所有 dnslog.cn 及其子域名的查询都会到 服务器 A 上,这时就能够实时地监控域名查询请求了,图示如下:

image

DNS在解析的时候会留下日志,dnslog.cn这个平台就是读取多级域名的解析日志,来获取信息的,简单来说就是把回显信息放在高级域名中,然后读取日志,获取信息。如图所示:

image

可以看到我们执行了一个简单的for循环语句,这是为了能把whoami的回显,在ping命令执行之前带出,然后载入变量i,从而拼接ping语句,执行的结果就是我们的主机名被ping命令代入到了三级域名中,从而可以在dnslog平台看到。

0x02 DNSLOG XSS

虽然dnslog很方便,但是随之而来的问题也来了,部分dnslog平台并未对传回的dns日志内容进行过滤或者限制,但是在一般的情况下,域名只支持数字以及字母,是不支持传输特殊字符的,如图所示:

image

但是如果我们稍微变换一些思路,用nslookup强制DNS查询就会发现传输字符并没有限制,然后我们只要稍微构造一下语句就可以造成xss攻击,如下图:

image
image
image

0x03 溯源&反制

有幸在几个月前参加了一下内部的小型攻防比赛,蓝队被要求溯源到确切的攻击者画像并进行反制,其实在没有蜜罐等措施部署下,获取攻击者画像还是比较困难的,但是我们设想一下,如果攻击者通过dnslog平台进行盲注,或许我们可以通过这个xss漏洞反爆红队的菊花。

已经和DNS平台的站长师傅沟通确认过,并修复了漏洞,以上内容如有误望请各位师傅斧正,如需转载请注明原著。


文章来源: https://forum.90sec.com/t/topic/1127
如有侵权请联系:admin#unsafe.sh