Может ли сессия быть уязвимостью PHP?

tony2001

TeaM PHPClub
Is this problem just theoretical? It appears not to be. When
searching Google for `php sql "session_set_save_handler"', one will find several implementations of database-saving session handlers.
имеется ввиду - если у тебя сессии хранятся в базе и magic_quotes не включены, то передаваемый ID надо слэшить.
впрочем, в этом случае надо слэшить все переменные, которые используются в запросах.
имхо проблема достаточно высосанная из пальца.
 

Crazy

Developer
Краткое резюме статьи: если XXX будет делать криворукий ламер, то XXX может стать незащищенным для атаки местом системы. Вместо XXX можно подставить не только сессии -- точно так же можно написать статью на тему "GD как источник дыр в безопасности PHP" :)
 

tony2001

TeaM PHPClub
>Но таковой врядли что либо вообще сделает
спорное утверждение...
 

Crazy

Developer
Автор оригинала: Screjet
Но таковой врядли что либо вообще сделает :)
Замечено, что именно криворукие ламеры замечательно владеют технологией copy-paste. При наличии всяких hotscripts'ов это становится социально-опасным явлением...
 

Screjet

Новичок
Ндаа..

сие понятие довольно субъективное,
во сколько мнений :)
 

BlackWidow

Guest
Простите за плохое знание языка (наверное), но по прочтении статьи я не смог понять, в чём эта самая уязвимость, по мнению автора, содержится.
 

Yurik

/dev/null
Если мсье захочет сам переписать механизм сессий (не нравится стандартний), то по мнению авторов его криворукость поставит под угрозу безопасность приложения. В отличие от умного ПХП криворукий программист не будет проверять что пришло в PHPSESSID и злоумишленник подсунет туда что-то левое.
 

BlackWidow

Guest
Спасибо. Значит, я всё правильно понял :)
Кстати, вопросик. Кому-нибудь приходилось переписывать механизм сессий? И для чего обычно это делают?
 

Yurik

/dev/null
>И для чего обычно это делают?
когда собаке нечего делать она лижет ....
 

trent

Developer
Использовать не приходилось, но вижу несколько путей использования базы данных для хранения сессий..

1. Система мониторинга для отслеживания того, что происходит на сайте + логгинг всего этого..

2. Авторизация с разделением прав и необходимостью перекрытия(изменения) доступа "мгновенно", не дожидаясь следующего захода..

etc..
 

ONK

Пассивист PHPСluba
Автор оригинала: BlackWidow
Спасибо. Значит, я всё правильно понял :)
Кстати, вопросик. Кому-нибудь приходилось переписывать механизм сессий? И для чего обычно это делают?
Мне приходилось. Я для одного форума написал собственный движок обслуживающий сессии. Для чего?
1. полная независимость от настроек ПХП.
2. более гибкая возможность настройки работы модуя обслуживания сессий (сбор мусора, время активности сессии), для конкретного скрипта.
3. При тестировании оказалось что мускул извлекает неоходимые данные на 1милисекунду быстрее чем механизм встроенный в ПХП . :)
4. Появилась возможность с помощью таблици сессий с минимальными затратами отслеживать место положение пользователя в системе (где находится, что делает).
5. Появилась возможность в любой момент времени деавторизовать любого находящегося в системе поьзователя. Или изменить его права на текущую сессию. Какраз собираюсь заняться службой управления пользователями находящимись в данный момент в форуме :)...
6. Исходя из того что идентификаторы сессий стали уникальными для конкретного скрипта, я сократил длинну идентификатора до 16 символов (хотя можно и меньше, т.к. сессия привязана к ip адресу и информации о браузере пользователя, а модуль поддержки сессий исключает использование одинаковых идентификаторов).


PS.
Удивительно но я не забыл отфильтровать принимаемый идентификатор сессии (хотя я всегда всё фильтрую) -:)
 

Raziel[SD]

untitled00
4. Появилась возможность с помощью таблици сессий с минимальными затратами отслеживать место положение пользователя в системе (где находится, что делает).
5. Появилась возможность в любой момент времени деавторизовать любого находящегося в системе поьзователя. Или изменить его права на текущую сессию. Какраз собираюсь заняться службой управления пользователями находящимись в данный момент в форуме
а что мешает это сделать при стандартном "механизме сессий" ?
 

BlackWidow

Guest
А отфильтровать, как в статейке написано, забыл?
Значит не зря написана статейка.
 

ONK

Пассивист PHPСluba
Автор оригинала: BlackWidow
А отфильтровать, как в статейке написано, забыл?
Значит не зря написана статейка.
Это ко мне? Читай внимательнее что я написал.


Для фильтрования входящих строк я использую:
htmlspecialchars($input,ENT_QUOTES);
Считаеш что этого не достаточно?
 

BlackWidow

Guest
Не знаю я. Недостаточно глубоко я изучал механизм сессий в РНР.
За информацию спасибо. Очень полезная. Особенно меня удивило ускорение, которое даёт реализация механизма сессий на БД. Я думал, что оно будет значительно больше.
 

GoBeer

Guest
Автор оригинала: ONK
Для фильтрования входящих строк я использую:
htmlspecialchars($input,ENT_QUOTES);
Считаеш что этого не достаточно?
Подозреваю что лучше это делать для фильтрования выходящих строк ;)
 
Сверху