0
点赞
收藏
分享

微信扫一扫

【攻防世界-Web进阶篇-002warmup】

浮游图灵 2022-03-13 阅读 53

解:进入靶机是下面的界面,一个表情

没什么线索先F12看一下,发现提示source.php,那就去看看是什么

代码审计环节

 

白名单中告诉咱们还有个hint.php 

$whitelist = ["source"=>"source.php","hint"=>"hint.php"];

 也就是说想办法绕过后进入ffffllllaaaagggg文件就可以了。首先看后半部分,需要满足这三个条件然后用include打开目标文件,再回开头看如何返回ture。

 

为返回true这里需要参数为字符串

 

 第二个if中的in_array( )是在看参数是否在白名单中有匹配

mb_strpos():返回要查找的字符串在另一个字符串中首次出现的位置,这里就是只保留?号前的内容。

 

后面基本就是又来了一遍不过多赘述。所以为返回ture,这里应该含有hint.php?,第一遍对?过滤只剩hint.php,第二遍白名单验证正确返回ture。并且满足后面if中的条件,只需再加文件地址即可。

payload:?file=hint.php?../../../../../ffffllllaaaagggg

 

flag{25e7bce6005c4e0c983fb97297ac6e5a}

举报

相关推荐

0 条评论