Авторизация

Подсказка показать

Это задание имитирует простейшую форму авторизации на сайте. Результатом реализации SQL-инъекции будет прохождение процедуры авторизации без обладания необходимыми для этого идентификационными данными.

Уязвимый к SQL-инъекции код выглядит примерно так:

$username = $_GET['username'];
$password = $_GET['password'];
$result = mysql_query("SELECT * FROM users WHERE username = '$username' AND password = SHA1('$password')");
Таким образом, для реализации атаки необходимо подобрать такие значения имени пользователя и пароля, которые изменят логику выполнения запроса и позволят избежать непосредственной проверки идентификационных данных. Одним из таких вариантов является внедрение заведомо верного условия (например, '1' = '1') совместно с логическим оператором ИЛИ (OR).