Модераторы: korob2001, ginnie
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Насколько надежна такая аутентификация? Cookie.. 
:(
    Опции темы
Kurt
Дата 14.2.2005, 23:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Увлеченный
***


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

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



Пробую силы в Perl'е. Написал простое веб-приложение. Аутентификация черезе Cookie:
При входе в систему юзер получает Cookie с его ID. На каждой странице происходит проверка такого Cookie. Если Cookie присутствует - показываю страницу и продляю время жизни кука на 12 мин, иначе - редирект на страницу входа в систему.
При выходе из системы уничтожаю Cookie.
Насколько надежен такой способ аутентификации и возможно ли взломать такую защиту?


--------------------
Для корабля, который не знает куда плыть, нет попутного ветра... ((С) Архимед)
...
Все знают, что это невозможно. Но случайно находится невежда, который этого не знает. Он-то и делает открытие.. ((С) А. Эйнштейн)
PM ICQ   Вверх
Mal Hack
Дата 15.2.2005, 00:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


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


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

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



Если ты просто проверяешь авторизованность пользователя по наличию куки, то это не правильно. Ту же куку можно через сокеты передать.

В ПМ (не пишу тут, дабы не сочли за рекламу) тебе скинул адрес своей статьи, про авторизацию на куках. На единоправильное решение не претендую, вариантов много может быть.
ЗЫ: Тока я писал на PHP, но думаю алгоритм и суть поймешь.
PM ICQ   Вверх
Kurt
Дата 15.2.2005, 00:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Увлеченный
***


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

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



Ох, как я был наивен. smile
Спасибо. Буду исправлять..


--------------------
Для корабля, который не знает куда плыть, нет попутного ветра... ((С) Архимед)
...
Все знают, что это невозможно. Но случайно находится невежда, который этого не знает. Он-то и делает открытие.. ((С) А. Эйнштейн)
PM ICQ   Вверх
Chuck
Дата 15.2.2005, 13:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Сушня
**


Профиль
Группа: Эксперт
Сообщений: 442
Регистрация: 12.12.2003
Где: Узбекистан, Ташке нт

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



Mal Hack, хотелось бы почитать! Никакая это не реклама!
PM MAIL WWW GTalk   Вверх
GoodBoy
Дата 15.2.2005, 14:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Главный джедай
****


Профиль
Группа: Модератор
Сообщений: 3886
Регистрация: 8.1.2003
Где: КМВ

Репутация: 4
Всего: 83



Mal Hack
Да, давай пости тут!


--------------------
Чем дальше в лес, тем толще партизаны...

Цитата(igorold @  1.5.2016,  17:40 Найти цитируемый пост)
Индейцы не обратили внимания на поток беженцев из Европы… Теперь они живут в резервациях. 
PM MAIL   Вверх
Mal Hack
Дата 15.2.2005, 16:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


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


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

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



ну лан
http://wboard.ru/topic262.html
Вкратце изложу суть:
Цитата
1. Технология обеспечения безопасности и алгоритм действий.

Итак, начнем по порядку. Первое что мы должны сделать, это снизить вероятность подмены данных и получения авторизированного доступа. К примеру. Пользователь логинится и дальше авторизация поверяется лишь наличием Куки с именем auth. Этот вариант совершенно неправильный, поскольку ничего не составляет передать скрипту эту самую куку с другого компьютера.

Сама же подмена может осуществляться через непосредственную посылку данных скрипту через заголовки. Новичкам это мало что говорит, но те кто более менее знаком с сокетами и header(); поймут о чем я.

Дабы не разводить демагогию текстом сразу опишу по каким параметрам и как мы будем строить защиту.
1. При авторизации мы будем искать в таблице с пользователями запись, де имя идентично тому, которое ввел пользователь, а MD5 хэш от пароля введенного пользователем равен хэшу, записанному в таблицу при регистрации пользователя.
2. При успешной авторизации пользователю пишутся куки, с его именем (“name”) и уникальным временем авторизации (“time”). Пусть вас не смущает использование времени, если его взять с дробными частями секунды, то уж никак не получится, чтобы два пользователя залогинились в одно и тоже время. Это – невозможно технически.
3. Мы будем хранить в базе в таблице сессий уникальный хэш (шифр), который будем составлять из вышеупомянутых кук, кода браузера пользователя и IP адреса. Правда, «name» мы использовать не будем, по нему мы будем узнавать ID пользователя, который уже и пойдет в хэш безопасности. Затем по нему и проверять, залогинен ли пользователь или нет, т.е. активна ли его сессия или нет.

Я всегда считал, считаю, и буду считать, что самое важное при программировании это правильно поставить задачу и продумать алгоритм, т.е. последовательность действий.
Наша последовательность действий такая.
1. Если нажата кнопка с именем blogin, мы должны запустить функцию авторизации.
2. Если нажата кнопка breg, мы должны запустить функции регистрации пользователя и автоматической авторизации после этого.
3. Если у пользователя есть установленные нами куки, мы должны проверить, а есть ли у этого пользователя активная сессия. Если да, то мы будем считать этого пользователя авторизованным.

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

PM ICQ   Вверх
Monty
Дата 18.2.2005, 15:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Advanced Lamer
****


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

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



блин, вы как буд-то знали мою проблему smile .... и она решена, спасибо Mal Hack smile

PS. я тоже был наивен smile
Добавлено @ 15:29
прочитал .... мне понравилась идея smile ... тоже что и было у меня, но без тайма smile
Добавлено @ 15:30
черт ... "+" поставить не могу smile .... надеюсь позже не забуду smile


--------------------
...
О, вещая моя печаль,
О, тихая моя свобода
И неживого небосвода
Всегда смеющийся хрусталь!
PM MAIL ICQ   Вверх
Гость_Виктор
Дата 7.12.2005, 00:58 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Хочу поблагодарить Mal Hack. Для меня долго оставался проблемный вопрос в процессе проверки аутентификации пользователей. Прочитал статью автора и разобрался. Спасибо!
  Вверх
r
Дата 12.12.2005, 02:17 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Да куки хорошо, если они не отключены у пользователя smile , пользуюсь сессиями, Вам всем советую, ибо вижу их огромное преимущество. А куки их ведь можно редактировать и многое другое о чем я еще не знаю. Даже где-то читал что есть возможность, при запуске скрипта пользователем(о чем он даже не сможет догадатся), считать у него все куки к себе в файлик.
Я конечно сомневаюсь в этом, но авторизация с куками, ненадежна. Спасибо.
  Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl: CGI программирование"
korob2001
sharq
  • В этом разделе обсуждаются вопросы относящиеся только к CGI программированию
  • Если ваш вопрос не относится к системному или CGI программированию, задавайте его в общем разделе
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", качать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

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


 




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


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

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