信息搜集
让我们寻找源文件,目录扫描:
找到了/index.php.bak文件,也就是index.php的备份文件。
后缀名是.bak的文件是备份文件,是文件格式的扩展名。
我们访问这个路径,就会直接下载该备份文件。
我们把.bak后缀删掉,就能得到源文件:
//index.php
<?php
include_once "flag.php";if(isset($_GET['key'])) {$key = $_GET['key'];if(!is_numeric($key)) {exit("Just num!");}$key = intval($key);$str = "123ffwsfwefwf24r2f32ir23jrw923rskfjwtsw54w3";if($key == $str) {echo $flag;}
}
else {echo "Try to find out source file!";
}
代码审计
is_numeric() 检测变量是否为数字或数字字符串;
intval() 函数用于获取变量的整数值
最后将我们传入的参数的整数值与$str进行弱类型比较,正确的话就会获得flag.
key=123
得到flag.