[HCTF 2018]WarmUp1解题思路

1.看题如下,得到一张滑稽表情

[HCTF 2018]WarmUp1解题思路_第1张图片

 2.老方法F12先看网页源码,得到注释提示

[HCTF 2018]WarmUp1解题思路_第2张图片

 [HCTF 2018]WarmUp1解题思路_第3张图片

3.访问hint.php,得到一串提示信息 flag not here, and flag in ffffllllaaaagggg

[HCTF 2018]WarmUp1解题思路_第4张图片

现在构造获取flag的语句

hint.php?../…/…/…/…/ffffllllaaaagggg 我们可以想象他传入checkFile函数要经历 第一次白名单验证 一次?过滤后他就是hint.php 再进行一次白名单验证 返回为真 则达成条件进行包含得到flag

tips:include函数有这么一个神奇的功能:以字符‘/’分隔(而且不计个数),若是在前面的字符串所代表的文件无法被PHP找到,则PHP会自动包含‘/’后面的文件——注意是最后一个‘/’。

这里的ffffllllaaaagggg是在hint.php中发现的,显然flag在这个文件里。其实文件名提示了我们要使用四层目录才能得到flag。
URL后缀为/?file=hint.php?../../../../../ffffllllaaaagggg
[HCTF 2018]WarmUp1解题思路_第5张图片

 

你可能感兴趣的:(CTF夺旗攻击,php,网络安全,web安全)