题目

进去

<?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 可以为  

http://39.100.83.188:8001/?&password=10e4&value[0]=375&value[1]=307&value[2]=364&value[3]=355&value[4]=304&value[5]=365&value[6]=357&value[7]=351&value[8]=340&value[9]=367&value[10]=351&value[11]=329&value[12]=339&value[13]=323&value[14]=323&value[15]=306&value[16]=304&value[17]=305&value[18]=313

 

执行后

 

 

 即 flag为

flag{8311873e241ccad54463eaa5d4efc1e9}

 

 

结束!!!