Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Подмена переменных сессии 
V
    Опции темы
Staind
Дата 20.12.2007, 21:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 175
Регистрация: 17.12.2007
Где: Планета сокровищ

Репутация: 2
Всего: 3



Здравствуйте. Пробую писать авторизацию администратора в админ-панеле.
В БД есть логин и пароль.
В случае если пользователь вводит верные данные в форме авторизации - заводится сессия и в нее пихаю id состоящий из логин + случайное число. Теперь вопрос: А может ли юзер (неавторизовавшийся) взять и как-нибудь завести эту же переменную в сессии (зная строку (логин + случайное число)  и получить доступ к закрытой части контента?
--------------------
Ничто так не раздражает человека, как просьба успокоиться
PM MAIL WWW ICQ   Вверх
Daevaorn
Дата 20.12.2007, 22:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2155
Регистрация: 29.11.2004
Где: Москва

Репутация: нет
Всего: 70



Конечно. При условии:
Цитата(Staind @  20.12.2007,  22:59 Найти цитируемый пост)
зная строку (логин + случайное число) 


PM MAIL WWW   Вверх
skyboy
Дата 20.12.2007, 22:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



Цитата(Staind @  20.12.2007,  20:59 Найти цитируемый пост)
и как-нибудь завести эту же переменную в сессии

переменные сессии хранятся на сервере. если уж пользователь сможет получить доступ(скажем, по ftp) к серверу, он уже не будет заморачиваться "поддедыванием переменных" - он просто возьмет, и "сольет" нужную себе информацию.
так что даже
Цитата(Staind @  20.12.2007,  20:59 Найти цитируемый пост)
+ случайное число

как бы не надо.

Добавлено через 37 секунд
Daevaorn, проясни. я себе такое не представляю.
PM MAIL   Вверх
Staind
Дата 20.12.2007, 22:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 175
Регистрация: 17.12.2007
Где: Планета сокровищ

Репутация: 2
Всего: 3



2Daevaorn, а как?

2skyboy, спасибо, хотел еще спросить "а сама структура распознания администратора нормальная"? Мне бы хотелось, чтобы Вы оцениле стабильность данной схемы.
--------------------
Ничто так не раздражает человека, как просьба успокоиться
PM MAIL WWW ICQ   Вверх
Daevaorn
Дата 20.12.2007, 22:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2155
Регистрация: 29.11.2004
Где: Москва

Репутация: нет
Всего: 70



Цитата(skyboy @  20.12.2007,  23:03 Найти цитируемый пост)
проясни. я себе такое не представляю. 

я понял, что автор таким не замысловатым способом делает id сессии, который хранится как раз у клиента.
PM MAIL WWW   Вверх
Mal Hack
Дата 20.12.2007, 22:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



Я думаю, материал, приведенный мною ссылкой ниже то, что вам надо.
Ссылка: http://phpclub.ru/detail/article/sessions
PM ICQ   Вверх
Feldmarschall
Дата 20.12.2007, 23:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


Профиль
Группа: Участник
Сообщений: 2641
Регистрация: 11.12.2007

Репутация: 22
Всего: 32



Staind, зная логин и секретное число (которое здесь не нужно совсем) - нет.
А зная идентификатор сессии - легко.

Узнать идентификатор - сама по себе нетривиальная задача, и рассматривается скорее теоретически. Но такие люди, как, скажем, админ офисной сети, могут посмотреть его не напрягаясь. (впрочем, такие люди могут и почту юзера смотреть и много ещё чего, так что сессия им врядли будет интересна). но для защиты от кражи идентификатора можно прменять пару способов.
1. простой - записывать в сессию IP адрес и проверять его каждый раз. В случае офисной сети и админа защиты практически не представляет.
2. сложный - сделать админку доступной по протоколу HTTPS. Трафик его шифруется, вместе с заголовками, и админ ничего не увидит.
PM   Вверх
Staind
Дата 20.12.2007, 23:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 175
Регистрация: 17.12.2007
Где: Планета сокровищ

Репутация: 2
Всего: 3



2Mal Hack, спасибо за приведенную статью. Поможет...

2Feldmarschall, огромное спасибо за способы. Я, пожалуй, выберу способ с прицеплением к переменной сессии ip адрес.
То есть у меня будет так:
После проверки данных создается две переменные в сессии:
1 - Уникальный идентификатор пользователя
2 - IP пользователя

При посещении "закрытых от внешних глаз страничек" будет происходить проверка Ун. идентификатора и сверятся IP пользователя. Если все верно, то даем доступ к страничке.
По идее, если нежелательный юзер узнает id сессии и сможет подключится к ней, то уж точно не сможет зайти на страничку, т.к. IP не совпадают. Еще раз огромное всем человеческое спасибо.
--------------------
Ничто так не раздражает человека, как просьба успокоиться
PM MAIL WWW ICQ   Вверх
skyboy
Дата 20.12.2007, 23:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



Цитата(Staind @  20.12.2007,  22:42 Найти цитируемый пост)
то уж точно не сможет зайти на страничку, т.к. IP не совпадают

не совсем. надо бы писать "если ip не совпадают".
если это корпоративная сеть - шлюзов, ip которых будет видно РНР, несколько, а, возможно - один.
если это GPRS-канал оператора мобильной связи, шлюзов на всех пользователей тоже будет не так много, и вероятность совпадения ip далеко не мизерна.
мораль сказки: если тебе так секретно надо, уж лучше используй вариант с применением https.
PM MAIL   Вверх
Staind
Дата 21.12.2007, 00:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 175
Регистрация: 17.12.2007
Где: Планета сокровищ

Репутация: 2
Всего: 3



Ясно. Да, со шлюзами я не предусмотрел :(
Ну это обычная админка, скрывать пока вроде нечего, тогда пока пусть так будет. Просто с https еще ни разу не работал.
Всем еще раз спасибо smile

P.s. Форум хороший smile
--------------------
Ничто так не раздражает человека, как просьба успокоиться
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1344 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.