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 :: Вечный вопрос по авторизации

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Deonis
Отправлено: 24 Июля, 2013 - 13:54:16
Post Id



Посетитель


Покинул форум
Сообщений всего: 298
Дата рег-ции: Нояб. 2009  


Помог: 14 раз(а)




Всем привет! Не вникал углубленно в тему безопасности, поэтому возник вопросик. Достаточно ли будет использовать для входа в админку сайта только сессии? Для уточнения: никаких "новых регистраций" через веб-интерфейс не будет, в кукисах ничего не сохраняется (модератор вводит данные при каждом новом посещении), пароль хорошо шифруется (XOR).
 
 Top
EuGen Администратор
Отправлено: 24 Июля, 2013 - 13:59:12
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




Deonis пишет:
Достаточно ли будет использовать для входа в админку сайта только сессии?

Достаточно. Дополнительно - включите также http_only для сессий для затруднения XSS-атак.
Ещё один способ укрепить безопасность - привязывать сессию к IP-адресу посетителя (записывая его в ту же сессию), и, при смене адреса, разрывать сессию и предлагать авторизоваться снова.
Deonis пишет:
пароль хорошо шифруется (XOR).

- значит, плохо шифруется, потому что достаточно двух перехваченных сообщений с XOR, чтобы расшифровать данные (если речь идёт о "классическом" XOR). Используйте хеш-функцию + соль.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Deonis
Отправлено: 24 Июля, 2013 - 14:03:44
Post Id



Посетитель


Покинул форум
Сообщений всего: 298
Дата рег-ции: Нояб. 2009  


Помог: 14 раз(а)




EuGen пишет:
привязывать сессию к IP-адресу

Не будет ли проблем, если ip динамический?
EuGen пишет:
Используйте хеш-функцию + соль.

Да, думаю, что вы правы.
 
 Top
EuGen Администратор
Отправлено: 24 Июля, 2013 - 14:06:59
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




Deonis
Смена IP-адреса, как правило, происходит редко (раз в несколько часов) - почти всегда это намного дольше, чем время сессии (то есть времени работы с веб-приложением). Однако, если работа с веб-интерфейсом действительно имеет большую длительность, то я бы рекомендовал давать возможность некоторым пользователям самостоятельно устанавливать флаг дополнительной защиты, то есть проверку IP-адреса (по-умолчанию включено), либо бы возложил эту функцию (разрешение некоторым пользователям входить без проверки IP-адреса) на администратора.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Deonis
Отправлено: 24 Июля, 2013 - 14:09:25
Post Id



Посетитель


Покинул форум
Сообщений всего: 298
Дата рег-ции: Нояб. 2009  


Помог: 14 раз(а)




EuGen, спасибо. Вопрос можно считать закрытым.
 
 Top
Проклятый принц
Отправлено: 24 Июля, 2013 - 14:13:24
Post Id


Гость


Покинул форум
Сообщений всего: 118
Дата рег-ции: Февр. 2013  


Помог: 0 раз(а)

[+]


Я слышал, что переменную и в том числе сессию, можно подкинуть. Пример от подобной атаки выглядило примерно так: если пост или гэт совподает с названием сессии или кука, то экзит. Улыбка
Не знаю, реально ли это всё. Если реально, обязательно мне надо поставить защиту. Подмигивание
 
 Top
soffrick
Отправлено: 24 Июля, 2013 - 14:18:37
Post Id



Посетитель


Покинул форум
Сообщений всего: 379
Дата рег-ции: Май 2012  
Откуда: Россия, Москва


Помог: 17 раз(а)




Проклятый принц пишет:
Я слышал, что переменную и в том числе сессию, можно подкинут

сессию или куку?


-----
Правильный вопрос - уже половина правильного ответа!

p.s. индусы повсюду, будьте осторожны!
 
 Top
Проклятый принц
Отправлено: 24 Июля, 2013 - 14:22:02
Post Id


Гость


Покинул форум
Сообщений всего: 118
Дата рег-ции: Февр. 2013  


Помог: 0 раз(а)

[+]


soffrick пишет:
Проклятый принц пишет:
Я слышал, что переменную и в том числе сессию, можно подкинут

сессию или куку?

Да, что-то в этом духе слышал.
Мол, именно поэтому при написании капчи, в самом начале кода, сессия отвечающая за рандомную строку, в начале очищают по принцепу $_SESSION[rand] = "", а лишь потом устанавливают ей рандомное значение.
 
 Top
EuGen Администратор
Отправлено: 24 Июля, 2013 - 14:44:39
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




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


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
soffrick
Отправлено: 24 Июля, 2013 - 14:47:16
Post Id



Посетитель


Покинул форум
Сообщений всего: 379
Дата рег-ции: Май 2012  
Откуда: Россия, Москва


Помог: 17 раз(а)




возможно имелось ввиду "подкинуть" значение куки php_sessid для получения данных сессии


-----
Правильный вопрос - уже половина правильного ответа!

p.s. индусы повсюду, будьте осторожны!
 
 Top
Проклятый принц
Отправлено: 24 Июля, 2013 - 14:47:21
Post Id


Гость


Покинул форум
Сообщений всего: 118
Дата рег-ции: Февр. 2013  


Помог: 0 раз(а)

[+]


EuGen пишет:
Проклятый принц
Почитайте про механизм работы сессии и все вопросы отпадут. Кроме того - право, не стоит верить всему, что услышали.

Извиняюсь на счёт сессии: "лишнего в одно ведро положил".
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. if (isset($_COOKIE['MAGIC_COOKIE'])) {
  4.  
  5.     // MAGIC_COOKIE получена из достоверного источника.
  6.     // Для полной уверенности необходимо проверить ее значение.
  7.  
  8. } elseif (isset($_GET['MAGIC_COOKIE']) || isset($_POST['MAGIC_COOKIE'])) {
  9.  
  10.    mail("admin@example.com", "Обнаружена попытка взлома", $_SERVER['REMOTE_ADDR']);
  11.    echo "Обнаружено нарушение безопасности, администратор уведомлен.";
  12.    exit;
  13.  
  14. } else {
  15.  
  16.    // MAGIC_COOKIE в данных запроса не присутствует
  17. }
  18. ?>
  19.  

Из источника: http://www.php.su/security/?globals
Да-да, про сессию я явно "лишканул".
 
 Top
EuGen Администратор
Отправлено: 24 Июля, 2013 - 15:01:45
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




И в чём заключается назначение кода в комментарии выше?


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Проклятый принц
Отправлено: 24 Июля, 2013 - 15:18:38
Post Id


Гость


Покинул форум
Сообщений всего: 118
Дата рег-ции: Февр. 2013  


Помог: 0 раз(а)

[+]


EuGen пишет:
И в чём заключается назначение кода в комментарии выше?

Доказательство моей неправоты.
Там не упоминались ни какие сессии, где демонстрировались подкид переменных.

(Отредактировано автором: 24 Июля, 2013 - 15:21:03)

 
 Top
soffrick
Отправлено: 24 Июля, 2013 - 15:22:46
Post Id



Посетитель


Покинул форум
Сообщений всего: 379
Дата рег-ции: Май 2012  
Откуда: Россия, Москва


Помог: 17 раз(а)




Проклятый принц пишет:
подкид

що це таке? Радость

(Отредактировано автором: 24 Июля, 2013 - 15:29:56)



-----
Правильный вопрос - уже половина правильного ответа!

p.s. индусы повсюду, будьте осторожны!
 
 Top
Проклятый принц
Отправлено: 24 Июля, 2013 - 15:26:07
Post Id


Гость


Покинул форум
Сообщений всего: 118
Дата рег-ции: Февр. 2013  


Помог: 0 раз(а)

[+]


Я, кстати, ни как не могу изменить переменную. То ли у меня register_globals = off, то ли у меня руки кривые...
url: www[dot]test[dot]ru/index.php?var = "Работает"


Не изменяется? Как хакнуть самого себя? Радость Извиняюсь за глупый юмор...
(Добавление)
soffrick пишет:
Проклятый принц пишет:
подкид

шо цэ такэ? Радость

Нью руссиш слово от Проклятого принца. Подмигивание Главное, смысл понятен, надеюсь.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« HTTP и PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB