FALSE
hint:sha1函數你有認真瞭解過嗎?聽說也有人用md5碰撞o(╯□╰)o
查看源碼
<?php
if (isset($_GET['name']) and isset($_GET['password'])) {
if ($_GET['name'] == $_GET['password'])
echo '<p>Your password can not be your name!</p>';
else if (sha1($_GET['name']) === sha1($_GET['password']))
die('Flag: '.$flag);
else
echo '<p>Invalid password.</p>';
}
else{
echo '<p>Login first!</p>';
?>
發現只要滿足兩個條件:
- name和password值不能相等
- name和password的sha1加密的散列值相等
sha1()函數默認的傳入參數類型是字符串型,當傳入爲數組類型時,其返回值爲false。
我們可以構造payload:
?name[]=a&password[]=b