Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Вечный вопрос по авторизации
Покинул форум
Сообщений всего: 298
Дата рег-ции: Нояб. 2009
Помог: 14 раз(а)
Всем привет! Не вникал углубленно в тему безопасности, поэтому возник вопросик. Достаточно ли будет использовать для входа в админку сайта только сессии? Для уточнения: никаких "новых регистраций" через веб-интерфейс не будет, в кукисах ничего не сохраняется (модератор вводит данные при каждом новом посещении), пароль хорошо шифруется (XOR).
EuGen
Отправлено: 24 Июля, 2013 - 13:59:12
Профессионал
Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007 Откуда: Berlin
Помог: 707 раз(а)
Deonis пишет:
Достаточно ли будет использовать для входа в админку сайта только сессии?
Достаточно. Дополнительно - включите также http_only для сессий для затруднения XSS-атак.
Ещё один способ укрепить безопасность - привязывать сессию к IP-адресу посетителя (записывая его в ту же сессию), и, при смене адреса, разрывать сессию и предлагать авторизоваться снова.
Deonis пишет:
пароль хорошо шифруется (XOR).
- значит, плохо шифруется, потому что достаточно двух перехваченных сообщений с XOR, чтобы расшифровать данные (если речь идёт о "классическом" XOR). Используйте хеш-функцию + соль.
----- Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
Deonis
Отправлено: 24 Июля, 2013 - 14:03:44
Посетитель
Покинул форум
Сообщений всего: 298
Дата рег-ции: Нояб. 2009
Помог: 14 раз(а)
EuGen пишет:
привязывать сессию к IP-адресу
Не будет ли проблем, если ip динамический?
EuGen пишет:
Используйте хеш-функцию + соль.
Да, думаю, что вы правы.
EuGen
Отправлено: 24 Июля, 2013 - 14:06:59
Профессионал
Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007 Откуда: Berlin
Помог: 707 раз(а)
Deonis
Смена IP-адреса, как правило, происходит редко (раз в несколько часов) - почти всегда это намного дольше, чем время сессии (то есть времени работы с веб-приложением). Однако, если работа с веб-интерфейсом действительно имеет большую длительность, то я бы рекомендовал давать возможность некоторым пользователям самостоятельно устанавливать флаг дополнительной защиты, то есть проверку IP-адреса (по-умолчанию включено), либо бы возложил эту функцию (разрешение некоторым пользователям входить без проверки IP-адреса) на администратора.
----- Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
Deonis
Отправлено: 24 Июля, 2013 - 14:09:25
Посетитель
Покинул форум
Сообщений всего: 298
Дата рег-ции: Нояб. 2009
Помог: 14 раз(а)
EuGen, спасибо. Вопрос можно считать закрытым.
Проклятый принц
Отправлено: 24 Июля, 2013 - 14:13:24
Гость
Покинул форум
Сообщений всего: 118
Дата рег-ции: Февр. 2013
Помог: 0 раз(а)
[+]
Я слышал, что переменную и в том числе сессию, можно подкинуть. Пример от подобной атаки выглядило примерно так: если пост или гэт совподает с названием сессии или кука, то экзит.
Не знаю, реально ли это всё. Если реально, обязательно мне надо поставить защиту.
soffrick
Отправлено: 24 Июля, 2013 - 14:18:37
Посетитель
Покинул форум
Сообщений всего: 379
Дата рег-ции: Май 2012 Откуда: Россия, Москва
Помог: 17 раз(а)
Проклятый принц пишет:
Я слышал, что переменную и в том числе сессию, можно подкинут
сессию или куку?
----- Правильный вопрос - уже половина правильного ответа!
p.s. индусы повсюду, будьте осторожны!
Проклятый принц
Отправлено: 24 Июля, 2013 - 14:22:02
Гость
Покинул форум
Сообщений всего: 118
Дата рег-ции: Февр. 2013
Помог: 0 раз(а)
[+]
soffrick пишет:
Проклятый принц пишет:
Я слышал, что переменную и в том числе сессию, можно подкинут
сессию или куку?
Да, что-то в этом духе слышал.
Мол, именно поэтому при написании капчи, в самом начале кода, сессия отвечающая за рандомную строку, в начале очищают по принцепу $_SESSION[rand] = "", а лишь потом устанавливают ей рандомное значение.
EuGen
Отправлено: 24 Июля, 2013 - 14:44:39
Профессионал
Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007 Откуда: Berlin
Помог: 707 раз(а)
Проклятый принц
Почитайте про механизм работы сессии и все вопросы отпадут. Кроме того - право, не стоит верить всему, что услышали.
----- Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
soffrick
Отправлено: 24 Июля, 2013 - 14:47:16
Посетитель
Покинул форум
Сообщений всего: 379
Дата рег-ции: Май 2012 Откуда: Россия, Москва
Помог: 17 раз(а)
возможно имелось ввиду "подкинуть" значение куки php_sessid для получения данных сессии
----- Правильный вопрос - уже половина правильного ответа!
p.s. индусы повсюду, будьте осторожны!
Проклятый принц
Отправлено: 24 Июля, 2013 - 14:47:21
Гость
Покинул форум
Сообщений всего: 118
Дата рег-ции: Февр. 2013
Помог: 0 раз(а)
[+]
EuGen пишет:
Проклятый принц
Почитайте про механизм работы сессии и все вопросы отпадут. Кроме того - право, не стоит верить всему, что услышали.
Извиняюсь на счёт сессии: "лишнего в одно ведро положил".
----- Правильный вопрос - уже половина правильного ответа!
p.s. индусы повсюду, будьте осторожны!
Проклятый принц
Отправлено: 24 Июля, 2013 - 15:26:07
Гость
Покинул форум
Сообщений всего: 118
Дата рег-ции: Февр. 2013
Помог: 0 раз(а)
[+]
Я, кстати, ни как не могу изменить переменную. То ли у меня register_globals = off, то ли у меня руки кривые...
url: www[dot]test[dot]ru/index.php?var = "Работает"
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.