题目
进去
<?php
error_reporting(0);
require 'flag.php';
$value = $_GET['value'];
$password = $_GET['password'];
$username = '';
for ($i = 0; $i < count($value); ++$i) { //count函数PHP//返回数组中元素的个数
if ($value[$i] > 32 && $value[$i] < 127) unset($value);
else $username .= chr($value[$i]);
if ($username == 'w3lc0me_To_ISCC2019' && intval($password) < 2333 && intval($password + 1) > 2333) {// intval() 函数//用于获取变量的整数值
echo 'Hello '.$username.'!', '<br>', PHP_EOL;
echo $flag, '<hr>';
}
}
highlight_file(__FILE__);
代码审计题
username是一个数组连起来内容 即数组为w3lc0me_To_ISCC2019
的ascii码加256
password的话 可以用 科学计数法 10e4
所以 payload 可以为
执行后
即 flag为
flag{8311873e241ccad54463eaa5d4efc1e9}
结束!!!