一、报错注入 ***研究mysql注入 4.0、5.0、8.0 几个版本之间的区别 ①mysql5.1.5以下版本无法进行报错注入 ②5.0以下,数据库中没有information_schema库,无法通过此库查询数据库和表名信息,mysql8.0以上,也无法使用information_schema库查询表、列信息 1. 盲注之报错注入 ①extractvalue(arg1,arg2)函数原理,因为参数2为Xpath格式(即XML文档格式)的字符串,在查询的语句前后加上0x7e(即符号~),将查询语句的返回结果构造成非Xpath格式,使函数extractvalue(arg1,arg2)执行时无法正常解析,将select查询结果以报错的方式显示出来。 ②其他类型的报错注入: 扩展资料: https://blog.csdn.net/Auuuuuuuu/article/details/91415165 https://www.jianshu.com/p/bc35f8dd4f7c 2. 报错盲注利用
二、布尔盲注 1. 基础函数
2. 盲注之布尔类型注入步骤
rand(true/fales)可用于order by的布尔盲注 三、时间盲注 1. 常用函数
2. 盲注之时间注入步骤
四、总结4种注入的场景 1. union注入 有数据回显点的地方 2. 报错注入 有数据库报错信息提示的地方 3. 布尔盲注 数据语句是否执行,有不同的数据显示 4. 时间盲注 没有任何关键提示,只能通过页面加载时间来判断 常用的Mysql内置变量 version() 当前数据库详细版本号 database() 当前所在的数据库 user() 当前数据库用户权限 @@datadir 数据文件的存放目录 @@basedir 数据库的安装路径 @@version_compile_os 宿主系统平台是什么 @@hostname 当前机器的机器名 show variables like ‘log_% 查看日志文件存放位置