利用DNSlog进行sql盲注

一、原理

测试一些网站的时候,一些注入都是无回显的,手工盲注效率太低,我们可以写脚本来进行盲注,但有些网站会ban掉我们的ip,虽然可以通过设置ip代理池解决,但是盲注往往效率很低,所以产生了DNSlog注入。

首先有一个可以用于dns解析的域名,比如ceye.io。通过代理商设置域名ceye.io的nameserver为自己的服务器a,再在服务器a上配置好dns服务器,这样所有ceye.io及其子域名的查询都会到服务器a上,这时就能实时监控域名查询请求。

这时,网站服务器会去指定的dns服务器上去解析域名,请求包中拼接了我们想要查询的语句的执行结果(把信息放在高级域名中,数据库的执行结果被拼接到域名解析的高级域名中),这样就能简介看到回显结果。

其他平台:

http://www.dnslog.cn

http://admin.dnslog.link

http://ceye.io

二、环境

本次实验使用phpstudy自带的mysql、并在其上搭建了dvwa、sqlilabs;

1、设置mysql数据库函数Load_file的状态

通过DNSlog盲注需要用的load_file()函数,所以一般得是root权限,查看load_file()是否可以读取的磁盘,DNSlog注入和load_file的函数是否可用有关系,若不可用,则修改my.ini配置文件

Load_file函数状态:

当secure_file_priv为空,就可以读取磁盘的目录。

当secure_file_priv为G:\,就可以读取G盘的文件。

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

MySQL中查询 show variables like '%secure%';

这里需要将null改为空,修改my.ini文件,增加一行语句

     在phpstudy重启mysql服务

2、注册ceye:

网站是免费的,对应的也就非常不稳定,有时需多次刷新

注册完成后,注册成功后分配了一个三级域名

Eg:xxxxx.ceye.io(每个人注册得到的第三级域名都是不同的,这里及下文都用xxxxx替代,另外,每个账户六个小时内只有一百次解析次数)

验证是否注册成功:直接浏览器访问test1.xxxxxx.ceye.io

查看是否有解析记录

<

  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值