<?php
$post = $_POST["post"];
$pass = "1234";
if ($post == $pass) {
echo "Success!";
}else{
echo "Failed.";
}
?>
Я знаю все о подготовке утверждений, хэшировании и т. Д. Я всегда имею в виду безопасность, но однажды я подумал про себя, как кто-то действительно может взломать что-то подобное? Я понимаю, что SQL может внедрить что-то на основе базы данных, но это, конечно, не на основе базы данных.
Но мне было интересно, как кто-то на самом деле мог взломать этот действительно простой логин, не просто подстроив его?
Есть ли какая-либо атака, которая может быть осуществлена здесь, чтобы войти в этот логин без какого-либо грубого обращения? Или иначе было бы невозможно.
Замечания:
Я, конечно, исключаю такие вещи, как размещение вируса на сервере, я имею в виду, может ли пользователь с передовыми техническими знаниями каким-то образом взломать это?
Увидеть временная атака.
С PHP всегда используйте password_verify()
функция или другое безопасное сравнение строк, например: hash_equals()
.
Других решений пока нет …