sql报错注入实例

题目地址 bugku 多次 http://123.206.87.240:9004/
本地有两个部分,第一关的界面如下,
在这里插入图片描述
加上单引号出现报错,再加上23%可以显示正常的界面,发现过滤了很多的字符,在这里用异或(^)的方式检查过滤了哪些字符,
异或:当同时为真或者假的时候为假
在这里插入图片描述
然后就可以构造payload;来测试过滤了哪些字符
因为length(‘or’)!=0 为真,所以应该会报错,而此时没有没有报错,说明后面 的语句length(‘or’)!=0是假的,即可以判断过滤了or。依次可以判断出过滤了哪些字符
在这里插入图片描述
通过第一关,我们可以拿到第二关的地址。来到第二关
在这里插入图片描述
通过测试看到过滤了union字符,这里想到用extractvalue函数实现报错注入
常见的sql报错函数简介:
extractvalue():对xml文档进行查询的函数
语法:extractvalue(目标xml文档,xml路径)
第二个参数中的位置是可操作的地方,xml文档中查找字符位置使用/xx/xx/…这种格式,如果写入其他的格式,则会出现报错,并且返回我们写入的报错的内容,
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/xy_259/article/details/86473840
今日推荐