Реферат: Сессии в PHP

имя пользователя не зарегистрировано, то

перенаправляем его на страницу index.php

для ввода логина и пароля... тут на самом деле

можно много чего сделать, например запомнить

IP пользователя, и после третьей попытки получить

доступ к файлам, его закрыть.

*/

if(!isset($logged_user)){

header("Location: index.php");

exit;

}

?>

<html>

<body>

Привет, <?php echo $logged_user; ?>, ты на секретной странице!!! :)

</body>

</html>

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

Итак, мы умеем передавать идентификатор от одной страницы (PHP-скрипта) к другой (до следующего вызова с нашего сайта), а значит мы можем различать всех посетителей сайта. Так как идентификатор сессии - это очень большое число (128 бит), шансов, что его удастся подобрать перебором, практически нет. Поэтому злоумышленнику остаются следующие возможности:

на компьютере пользователя стоит <троян>, который ворует номера сессий;

злоумышленник отлавливает трафик между компьютером пользователя и сервером. Конечно, есть защищенный (зашифрованный) протокол SSL, но им пользуются не все;

к компьютеру нашего пользователя подошел сосед и стащил номер сессии.

Такие ситуации, основанные на том, что кто-то что-то у кого-то стащит, в общем, не входят в компетенцию программиста. Об этом должны заботиться администраторы и сами пользователи.

Впрочем, PHP очень часто можно <обмануть>. Давайте рассмотрим возможные точки взлома в программе авторизации пользователя:

Файл authorize.php - попытка подбора пароля с помощью стороннего скрипта;

Файл secretplace.php - попытка обмануть программу путём вписывания значений переменной $logged_user в адресной строке браузера, например так:

http://www.yoursite.ru/secretplace.php?logged_user=hacker

Итак, в нашей программе явно видны две <дыры>, одна маленькая и не особо заметная, а вот вторая - просто огромная, через которую большинство хакеров и лезет туда, куда не надо.

Как <залатать> дыру номер 1?

Не будем писать тонны кода по блокировке IP-адреса и т.п., а просто проверим, откуда приходит запрос, а точнее с какой страницы пришёл запрос, если это будет любая страница с нашего сайта, то всё нормально, а во всех остальных случаях пускать не будем. Подкорректируем файл authorize.php:

К-во Просмотров: 3029
Бесплатно скачать Реферат: Сессии в PHP