Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: какие данные хранить в сессии?запись сессии в куки
 
 автор: psychomc   (12.10.2008 в 02:16)   письмо автору
 
 

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

я делаю примерно так: вводимые пользователем данные в форму проверяю в с данными в бд,если всё верно запускаю сессию и присваиваю переменным $_SESSION['username'] = $_POST['login'], $_SESSION['pass']=$_POST['password'] и потом соответственно эти данные хранятся на протяжении всего сеанса (пароль зашифрован md5).
Потом в скриптах просто идет проверка
if ((isset($_SESSION['username'))&&(isset($_SESSION['pass')))
{
// пользователь авторизован
// код
}
else
{
// не авторизован
// код
}

Хочу узнать насколько такой способ уязвим, стоит ли проверть реферера на случай того что пользователь подделал сессию с урл не моего сайта, и вообще что лучше не хранить в сессии...
и ещё...как работает функция session.cookie_lifetime (то есть какие значения можно задавать)....

заранее спасибо...

  Ответить  
 
 автор: sl1p   (12.10.2008 в 02:44)   письмо автору
 
   для: psychomc   (12.10.2008 в 02:16)
 

Нащёт такой проверки, то я думаю так проверять не стоит)
Лучше генерировать какойнибудь уникальный код, который вы запишите в бд и в сессию, а потом их сверять.
Зачем вы вообще записываете пароль в сессию?

  Ответить  
 
 автор: psychomc   (12.10.2008 в 18:45)   письмо автору
 
   для: sl1p   (12.10.2008 в 02:44)
 

а фиг знает зачем ) я ж поэтому и спрашиваю, что как с сессиями работать не догоняю...то есть догоняю, но в их уязвимостях и данных нет...получается что у меня сейчас все запросы к бд для пользователя идут с условием вроде:
SELECT FROM `users`
WHERE username=$_SESSION['username']

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

  Ответить  
 
 автор: Trianon   (12.10.2008 в 18:49)   письмо автору
 
   для: psychomc   (12.10.2008 в 18:45)
 

>а фиг знает зачем )
Вот за такой ответ на вопрос о пароле нужно отрывать уже не яйца, а голову.

  Ответить  
 
 автор: BinLaden   (12.10.2008 в 19:32)   письмо автору
 
   для: Trianon   (12.10.2008 в 18:49)
 

> Вот за такой ответ на вопрос о пароле нужно отрывать уже не яйца, а голову.

Считаете второе более ужасным??

  Ответить  
 
 автор: psychomc   (12.10.2008 в 20:12)   письмо автору
 
   для: BinLaden   (12.10.2008 в 19:32)
 

ок, чтобы если надо будет по возможности сравнить данные в сессии с регистрационными данными этого пользователя в бд,такой ответ вас устроит?)
кстати если пароль зашифрован это так ужасно если его вдруг смогут подсосать с сессией?

оказывается умные люди любят стебаться над новичками ... а я и не знал....

  Ответить  
 
 автор: Trianon   (12.10.2008 в 20:32)   письмо автору
 
   для: psychomc   (12.10.2008 в 20:12)
 

Какой стеб?
Почему же до вас до всех (при чем отнюдь не только до новичков, здесь и основателей хватает с таким же уровнем пофигизма) не доходит, что пароль которым Вы манипулируете - не Ваш!
Это свой пароль Вы можете писать, хранить, передавать куда, как и где угодно.
А к чужому следует относиться, как к хорошей такой гостайне. За которую если что вдруг - расстрел.

  Ответить  
 
 автор: psychomc   (12.10.2008 в 22:17)   письмо автору
 
   для: Trianon   (12.10.2008 в 20:32)
 

Trianon, Вы хороший программист (помог уже очень многим и мне несколько раз)...
но суть же темы была не в том что будет если пароль пользователя узнает злоумышленник и что потом будет...а то,ЧЕМ МОЖНО МАНИПУЛИРОВАТЬ В СЕСИИ....повторюсь,я прочитал довольно много книг в которых пишут про сессии и повторюсь: ни в одной из них не было написано как сделать сессию надежной,а везде банальные примеры...поэтому я здесь и создал тему, чтобы опытные программисты смогли дать дельный совет...пожалуйста, ответьте что-нибудь именно по теме

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

  Ответить  
 
 автор: Trianon   (12.10.2008 в 22:55)   письмо автору
 
   для: psychomc   (12.10.2008 в 22:17)
 

Что значит "надежная сессия"?
Что Вы сами вкладываете в эти слова?

  Ответить  
 
 автор: psychomc   (12.10.2008 в 23:14)   письмо автору
 
   для: Trianon   (12.10.2008 в 22:55)
 

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

  Ответить  
 
 автор: Trianon   (13.10.2008 в 00:22)   письмо автору
 
   для: psychomc   (12.10.2008 в 23:14)
 

понятно.... :(
Среди ниже перечисленных найдется тема-другая, где меня таки развели на откровения по вопросам аутентификации.
http://softtime.ru/forum/srch.php?id_forum=0&name=Trianon+%E0%F3%F2%E5%ED%F2%E8%F4%E8%EA%E0%F6%E8%FF&numberthemes=30&srchwhere=2&logic=1

  Ответить  
 
 автор: psychomc   (14.10.2008 в 10:05)   письмо автору
 
   для: Trianon   (13.10.2008 в 00:22)
 

спасибо за ссылку и за помощь,Trianon
в следующий раз буду более тщательно искать уже существующую тему на форуме прежде чем создавать новую

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования