buuctf web

打开后查看源代码看到

点进去看到源代码,一段段分析

首先看到了 hint.php,点进去看到

flag在 ffffllllaaaagggg 中,接着分析

设置一个白名单,检查是否存在$page并且检查$page是否为字符

检查$page是否在白名单中,后面有两个函数,上网后了解是截取变量page中?前面的字符串,然后再进行白名单校验。

再一次url解码校验

最后是request一个file,具体没细看。开始构造payload

file=source.php开头,ffffllllaaaagggg在尾,中间目录穿越

校验结果payload是 file=source.php?/../../../../ffffllllaaaagggg

得到flag