• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Безопастность!

  • Автор темы nws
  • Дата начала
Статус
Закрыто для дальнейших ответов.
N

nws

Можно ли как-то хацкнуть данный код ???
Если да, то подскажите методы защиты :)

Код:
<?php

if (!isset($_SERVER['PHP_AUTH_USER']))

{
Header ("WWW-Authenticate: Basic realm=\"Enter Login/Password\"");
Header ("HTTP/1.0 401 Unauthorized");
exit();
}

else {
if (!get_magic_quotes_gpc()) {
$_SERVER['PHP_AUTH_USER'] = mysql_escape_string($_SERVER['PHP_AUTH_USER']);
$_SERVER['PHP_AUTH_PW'] = mysql_escape_string($_SERVER['PHP_AUTH_PW']);
}

@$p = $_SERVER['PHP_AUTH_USER'];
$lst = mysql_query("SELECT password FROM users WHERE username='$p' and is_moder='1'") or die(mysql_error());

if (!$lst)
{
Header ("WWW-Authenticate: Basic realm=\"Введите Логин и Пароль\"");
Header ("HTTP/1.0 401 Unauthorized");
exit();
}

if (mysql_num_rows($lst) == 0)
{
Header ("WWW-Authenticate: Basic realm=\"Введите Логин и Пароль\"");
Header ("HTTP/1.0 401 Unauthorized");
exit();
}

$pass = @mysql_fetch_array($lst);
if ($_SERVER['PHP_AUTH_PW']!= $pass['password'])
{
Header ("WWW-Authenticate: Basic realm=\"Введите Логин и Пароль\"");
Header ("HTTP/1.0 401 Unauthorized");
exit();
}


}

?>
 
N

nws

Только не говорите что это UNHACKABLE SCRIPT :lol: :lol: :lol:
 
G

GOsha

Я вот не могу понять, нафига ты ошибку в присвоении подавляешь?
Код:
@$p = $_SERVER['PHP_AUTH_USER'];
 
N

nws

Когда первый раз заходишь и появляется форма с логином/ паролем.

Поле для пароля пустое и PHP пишет Warning: undefined variable ...
 
G

GOsha

ЧЕ-та мне такой стиль никогда не нравился. Сам стараюсь писать так, чтобы ошибки не подавлять... Конечно иногда приходиццо.
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!