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]   

> Без описания
RickMan
Отправлено: 19 Января, 2013 - 11:14:47
Post Id


Участник


Покинул форум
Сообщений всего: 1033
Дата рег-ции: Май 2012  


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




Здравствуйте!
У меня такая вот проблема! Опишу все по пунктам:
1) Есть сайт на php+mysql
2) там авторизируются люди вводя логин и пароль
3) при удачной авторизации создается сессия uid , и в ней хранится айди бзера под которым авторизировались
4) в дальнейшем в скриптах проверяется наличие этой сессии, если её нет то выкидывает на стартовую, если есть то все нормально

Вопрос:
Я понимаю что это не очень безопасно, и как защититься сильнее?
Возможна ли подмена сессии? Да я знаю что она хранится на сервере, но все же...

P.S. слышал метод защиты такой: при авторизации в отдельную ячейку в бд кидается хэшкод который состоит из первых 3 бита айпи+случайно генерированный md5 текст...и потом этот текст помещается в сессию и проверяется с тем что в БД... Можно так обезопаситься?
 
 Top
caballero
Отправлено: 19 Января, 2013 - 11:18:31
Post Id


Активный участник


Покинул форум
Сообщений всего: 5998
Дата рег-ции: Сент. 2011  
Откуда: Харьков


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




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


-----
Бесплатная система складского учета с открытым кодом https://zippy[dot]com[dot]ua/zstore
 
 Top
RickMan
Отправлено: 19 Января, 2013 - 11:44:11
Post Id


Участник


Покинул форум
Сообщений всего: 1033
Дата рег-ции: Май 2012  


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




caballero пишет:
Нет там в сессиях никакой проблеммы с безопасностью.
Я уже не говорю о том что на вагш сайт никакой хакер не станет тратить время.


Если я задал этот вопрос значит у меня есть нужда в ответе и просьба отвечать по теме а не вести не уместные разговоры...
 
 Top
KingStar
Отправлено: 19 Января, 2013 - 11:48:13
Post Id



Участник


Покинул форум
Сообщений всего: 1889
Дата рег-ции: Авг. 2011  
Откуда: Беларусь


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




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


-----
То что программа работает, не означает что она написана правильно!
 
 Top
spsu
Отправлено: 19 Января, 2013 - 12:15:27
Post Id



Частый гость


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


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




Цитата:
Возможна ли подмена сессии? Да я знаю что она хранится на сервере, но все же...

Да если идентификатор ее например через xss украдут, в идеале привязывать ее к ip, просто записав ip в саму сессию, тогда вероятность что украв идентификатор сесии ее использует злоумышленник будет ничтожна.
В БД незачем писать т.к можно в ip хранить.
 
 Top
opadai
Отправлено: 19 Января, 2013 - 12:19:23
Post Id


Новичок


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


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




Вопрос по теме:
Как привязать к сессий id юзера ? и чтобы в страничке было напсано его логин
 
 Top
spsu
Отправлено: 19 Января, 2013 - 12:23:50
Post Id



Частый гость


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


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




[quote=opadai][/quote]
В сессию записать id\логин..
 
 Top
opadai
Отправлено: 19 Января, 2013 - 12:31:34
Post Id


Новичок


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


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




spsu
PHP:
скопировать код в буфер обмена
  1. $login=array($_SESSION['id'],$_SESSION['login'])
  2. вот так чтоли
Ха-ха

(Отредактировано автором: 19 Января, 2013 - 12:32:12)

 
 Top
spsu
Отправлено: 19 Января, 2013 - 12:42:03
Post Id



Частый гость


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


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




opadai,
PHP:
скопировать код в буфер обмена
  1. $_SESSION['id'] = $id;
  2. $_SESSION['login'] = $login;

И на нужной стр.
PHP:
скопировать код в буфер обмена
  1.  
  2. echo($_SESSION['login'] ? isset($_SESSION['login']) : 'err');
  3.  
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB