源码:
Your password can not be your name!'; else if (sha1($_GET['name']) === sha1($_GET['password'])) die('Flag: '.$flag); else echo 'Invalid password.
';}else{ echo 'Login first!
';?>
从源码中看出需要name和password不相等,但是他们经过sha1算法加密后需要相等,而且是三等号比较,这就不仅要求值相同,还要保证是同一种类型。首先想到bool类型,而sha1和md5都无法处理数组的情况,所以尝试让sha1处理数组,返回两个false,自然地就相同了。
由此,获取了flag。