【BUUCTF】BUUCTF_Blacklist
[TOC]
BUUCTF_Blacklist
一、进行注入检测,分析是什么类型
二、普通手工注入,查看过滤规则
order by来查询列数
联合查询,查他的表名列名
发现过滤了一下关键词
set prepare不可用,说明可能存在多行注入,
正则/ i说明不区分大小写
三、发现多行注入
以下结果说明存在多行注入,方框中的为show databases;注入结果
前面的为inject=1’;的注入结果
方框中的为show databases;注入结果
其中:
information_schema,mysql和performance_schema是系统数据库,
所以就从ctftraining,supersqli和test中找
payload:?inject=1’;Handler FlagHere open;handler%20 FlagHere read first;handler FlagHere close; %23
总结:
先进行一个注入检测,找到它是什么类型
先来正常的手工注入,发现过滤
另辟蹊径,观察过滤类型
set prepare 被过滤说明
set @a=0xxxxx;prepare execsql from @a;execute execsql;这种方法不可用
试一下多行注入,show databases; show tables;
发现表名FlagHere,就去读取
读取的方法为:
Handler xxx open;handler xxx read first;handler xxx close;
这样就可以得到Flag了。
set @a=0xxxxx;prepare execsql from @a;execute execsql;
分号可用的情况下,不一定可以多行注入!
此时在分号可用的情况下不支持多行注入!
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 The DC_comics's World!