web安全—sql注入漏洞
SQL注入-mysql注入
一.普通的mysql注入
MySQL注入不像注入access数据库那样,不需要猜。从mysql5.0以上的版本,出现一个虚拟的数据库,即:information_schema数据库,该数据库存在放着其他数据库的所有信息,所以mysql注入的原理就是运用information_schema数据库进行实施,接下来我们具体说明怎么运用。
- 用order by猜测字段数
在发现有注入点的mysql数据库,首先要确定该数据库的字段数。这时候就要运用一下order by语句了。
Payload:order by +推测的字段数(如果推测的字段数超过该数据库的字段数会报错)
- 运用mysql的内置函数和union select联合查询
在推测完字段数后,要对该数据库的信息进行获取,这时MySQL的内置函数起了很大的作用。
常用的函数:
User():查看当前用户
Database():查看当前的数据库
Version():查看当前数据库的版本
例如:这个注入点是数字型的MySQL注入,并且已经爆出一个数据库有3个字段,则可以构造这样的payload: union select 1,2,3 注意这时要使union前面的语句报错,这样才能判断哪个是可显字段。
在可显字段上替换成上面的内置函数,即可查看响应的信息。假设2,3是可显字段。则可以构造这样的payload:union select 1,user(),database() 这条payload可以查看数据库当前的用户是谁和当前的数据
库名。
- 运用information_schema函数爆出数据库的信息
首先先对information_schema里的表和字段进行说明一下。我们对MySQL注入就运用了information_schema中的两张表:tables和columns
Tables:提供了关于数据库中的表的信息(包括视图)。详细表述了某个表属于哪个schema,表类型,表引擎,创建时间等信息。
Columns:提供了表中的列信息。详细表述了某张表的所有列以及每个列的信息。
也运用了俩个字段:table_name和column_name,table_name是属于tables里的字段,记录了其他数据库表的信息。Column_name是columns里的字段,记录了其他数据库的表的字段的信息
好了到了最重要的环节了,上面已经对information_schema函数进行了简单的介绍。现在就来实际运用一下吧!!!!!
(1) 爆出数据库的表名
Payload:1.union select 1,group_concat(table_name),3 from information_schema.tables where table_schema=”当前数据库名”
2.union select 1,table_name,3 from information_schema.tables where table_schema=”当前数据库名” limit 0,1
以上俩条payload都上爆出数据库表名的语句,我们来逐个分析一下。Group_concat函数将查询的数据整合到一个字段中, Limit子句可以被用于强制 SELECT 语句返回指定的记录数。limit 0,1:返回查询的第一条数据
第一条payload:意思是从当前的数据库中查询所以的表名。第二条payload:意思是从当前的数据库中查询第一个表名。当前数据库名可以转化成16进制来绕过某些限制,注意不要加双引号了。
(2)爆出表中的字段
Payload:1.union select 1,group_concat(column_name),3 from information_schema.columns where table_name=”要查询的表名”
2.union select 1,column_name,3 from information_schema.columns where table_name=”要查询的表名” limit 0,1
和上面的一样,只不过换了爆出字段的函数
(3)爆出字段内容
Payload:union select 1,字段名,字段名 from 要查询的表名
这条payload和access数据爆出字段内容的一样,这里不再进行说明。
经过上面的操作,对于普通的mysql注入就完成了。当然mysql的注入类型还有很多,例如:基于报错的注入,基于布尔的盲注,基于时间的盲注,post注入等等。将在后面的博客中更新
但是还是那句话sql注入万变不离其中,就只有俩种类型:数字型和字符型。
web安全—sql注入漏洞的更多相关文章
- WEB安全:XSS漏洞与SQL注入漏洞介绍及解决方案(转)
对web安全方面的知识非常薄弱,这篇文章把Xss跨站攻击和sql注入的相关知识整理了下,希望大家多多提意见. 对于防止sql注入发生,我只用过简单拼接字符串的注入及参数化查询,可以说没什么好经验,为避 ...
- WEB安全:XSS漏洞与SQL注入漏洞介绍及解决方案
对web安全方面的知识非常薄弱,这篇文章把Xss跨站攻击和sql注入的相关知识整理了下,希望大家多多提意见. 对于防止sql注入发生,我只用过简单拼接字符串的注入及参数化查询,可以说没什么好经验,为避 ...
- Nikto是一款Web安全扫描工具,可以扫描指定主机的web类型,主机名,特定目录,cookie,特定CGI漏洞,XSS漏洞,SQL注入漏洞等,非常强大滴说。。。
Nikto是一款Web安全扫描工具,可以扫描指定主机的web类型,主机名,特定目录,cookie,特定CGI漏洞,XSS漏洞,SQL注入漏洞等,非常强大滴说... root@xi4ojin:~# cd ...
- 利用SQL注入漏洞登录后台的实现方法
利用SQL注入漏洞登录后台的实现方法 作者: 字体:[增加 减小] 类型:转载 时间:2012-01-12我要评论 工作需要,得好好补习下关于WEB安全方面的相关知识,故撰此文,权当总结,别无它意.读 ...
- 预处理prepareStatement是怎么防止sql注入漏洞的?
序,目前在对数据库进行操作之前,使用prepareStatement预编译,然后再根据通配符进行数据填值,是比较常见的做法,好处是提高执行效率,而且保证排除SQL注入漏洞. 一.prepareStat ...
- zabbix再爆高危SQL注入漏洞,可获系统权限
漏洞概述 zabbix是一个开源的企业级性能监控解决方案.近日,zabbix的jsrpc的profileIdx2参数存在insert方式的SQL注入漏洞,攻击者无需授权登陆即可登陆zabbix管理系统 ...
- 简单分析什么是SQL注入漏洞
现在很多人在入侵的过程中基本都是通过SQL注入来完成的,但是有多少人知道为什么会有这样的注入漏洞呢?有的会随口说着对于字符的过滤不严造成的.但是事实是这样吗?我们学这些,不仅要知其然,更要知其所以然! ...
- 什么是简单的分析SQL注入漏洞
如今非常多人在入侵的过程中基本都是通过SQL注入来完毕的,可是有多少人知道为什么会有这种注入漏洞呢?有的会随口说着对于字符的过滤不严造成的. 可是事实是这样吗?我们学这些.不仅要知其然.更要知其所以然 ...
- 利用SQL注入漏洞登录后台
所谓SQL注入,就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令,比如先前的很多影视网站泄露VIP会员密码大多就是通过WEB表单递交查询 ...
随机推荐
- 2017-12-24 手机编程环境初尝试-用AIDE开发Android应用
前不久才接触到纯粹用手机进行编程的开发者, 当时颇有孤陋寡闻之感, 因为之前听说过手机编程还是一些在线编程学习网站开发的学习环境, 没有想过真的有用它做实际开发的. 此文用AIDE免费版在自己的手机上 ...
- http-server安装及运行
vue项目打包后会生成一个dist目录,我们想要直接运行dist目录...除了复制静态文件到服务器nginx目录下,然后启动nginx来启动项目, 另外一个办法就是安装http-server 直接启动 ...
- 开放windows服务器端口-----以打开端口8080为例
[转载]原文地址:https://blog.csdn.net/spt_dream/article/details/75014619 本文记录两个内容: 1.win7下打开端口 2.服务器(2003或者 ...
- vs 2017 vs code
vs 2017 Enterprise: NJVYC-BMHX2-G77MM-4XJMR-6Q8QF Professional: KBJFW-NXHK6-W4WJM-CRMQB-G3CDH ==== ...
- 如何解决Mac无法读取外置硬盘问题?
在mac中插入一款硬盘设备后发现硬盘无法显示在mac中,导致mac无法读取设备,遇到这种问题时需要如何解决? 首先,硬盘不能正常在mac上显示可能是硬盘出现了错误无法使用,也可能是硬盘的文件系统格式不 ...
- Linux 虚拟网络设备 veth-pair 详解,看这一篇就够了
本文首发于我的公众号 Linux云计算网络(id: cloud_dev),专注于干货分享,号内有 10T 书籍和视频资源,后台回复「1024」即可领取,欢迎大家关注,二维码文末可以扫. 前面这篇文章介 ...
- 死磕 java集合之ConcurrentHashMap源码分析(一)
开篇问题 (1)ConcurrentHashMap与HashMap的数据结构是否一样? (2)HashMap在多线程环境下何时会出现并发安全问题? (3)ConcurrentHashMap是怎么解决并 ...
- 《IDEO,设计改变一切》(Change By Design)- 读书笔记
一.关于IDEO与设计思维 IDEO是一家世界顶级创意公司,而作者蒂姆布朗是IDEO的CEO.当然,在未阅读本书之前,我都是不知道的,也不会主动去了解IDEO和蒂姆布朗的.那么,我为什么要去读这样一本 ...
- h2engine游戏服务器设计之聊天室示例
游戏服务器设计之聊天室示例 简介 h2engine引擎建群以后,有热心网友向我反馈,想尝试h2engine但是没有服务器开发经验觉得无从入手,希望我能提供一个简单明了的示例.由于前一段时间工作实在忙碌 ...
- 深入Go的底层,带你走近一群有追求的人
目录 缘起 自我介绍的技巧 硬核知识点 什么是plan9汇编 汇编角度看函数调用及返回过程 汇编角度看slice 正确参与Go夜读活动的方式 阅读原文 上周六晚上,我参加了"Go夜读&quo ...