web1
源码
| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 
 | <?phperror_reporting(0);
 require 'flag.php';
 $value = $_GET['value'];
 $password = $_GET['password'];
 $username = '';
 
 for ($i = 0; $i < count($value); ++$i) {
 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) {
 echo 'Hello '.$username.'!', '<br>', PHP_EOL;
 echo $flag, '<hr>';
 }
 }
 
 | 
需要传入两个变量value和password.
count():返回数组中元素的数目
unset():销毁指定的变量
chr():返回相对应于 ascii 所指定的单个字符
.= : 拼接字符串
intval():通过使用指定的进制 base 转换(默认是十进制),返回变量 var 的 integer 数值。 intval() 不能用于 object,否则会产生 E_NOTICE 错误并返回 1
解题思路
$username == 'w3lc0me_To_ISCC2019'