0X01前言
很久没更新文章啦。
前段时间忙于应对期末考试也就没时间更新文章了。这段时间也去某个公司实习,增加点工作经验。趁着周末比较闲,给大家更新文章
0x02正文
打开文章。发现是一个类似于计算题的题目。我还以为像是前段时间那道工控比赛的math题一样。
随后我发现,好像并不是在这里操作。查看其网页源代码
发现个文件地址,打开一看。好家伙
本就菜逼的我更加雪上加霜。这TM该怎么做?
该说不说,还是百度大法好用,很快,就找到了一个师傅的 WP
这里利用到了:
PHP的字符串解析特性
我们知道PHP将查询字符串(在URL或正文中)转换为内部$_GET或的关联数组$_POST。例如:/?foo=bar变成Array([foo]
=> “bar”)。值得注意的是,查询字符串在解析的过程中会将某些字符删除或用下划线代替。例如,/?%20news[id%00=42会转换为Array([news_id]
=> 42)
还用到了scandir()
var_dump()
OK,我们继续
由于这里给出的代码拦截了 / 所以说我们可以尝试用chr来绕过黑名单(可能有人想问,chr是干嘛的? 答案:chr()里头是1-255的整数数字,其是对应ascii码值。也就是说chr(47)也就是等价于 / 懂吧)
这里构造calc.php?%20num=var_dump(scandir(chr(47)))
知道了文件名f1agg,所以得%20num=var_dump(include(chr(47).chr(102).chr(49).chr(97).chr(103).chr(103)))搞定手工
膜拜大佬
大佬好牛
师傅好谦虚