Алексей Николаев: В общем ничего нового я там не узнал, кроме пары изменений в php7.
Рекомендации там хорошие, но обратите внимание, что некоторые из них противоречивы, потому что безопасность vs удобство. Там в красненьких таких блоках об этом так и сказано.
Если вы сильно обеспокоены доступом к "протухшим", но еще не удаленным сессиям, можно добавить свою метку времени и проверку в session_handler->read(). Или даже повесить свой удаляльщик файлов сессии на cron, с запуском каждую минуту.
А если уж собрались задействовать базу для сессий, то переносите их туда полностью, зачем вам еще и файлы?
Итого, что я понял из вашей "схемы"
1. в базе дублируется информация из сессии
2. в базе ведется история смены sessionid
3. контролируется работа сборщика мусора!
Еще и время жизни сессии 5-7 минут. Отошел в туалет - логинься заново.
И все это для того, чтобы засечь попытки авторизоваться с угнанной кукой, верно?
При том что httponly куку передаваемую по https можно угнать двумя способами: расшифровав https трафик или внедрившись в браузер.
Ну, возможно, вы пишете какую-то банковскую систему, но тогда неясно, почему вы задаете вопросы на тостере. Или вы делаете еще один "ужасный сайт™".
Алексей Николаев: Я понимаю что такое session.use_strict_mode. Это отлично что вы о нем прочитали, и теперь включите. Я понимаю призыв логировать попытки доступа с левыми sessionid, о которых вы, кстати, не упомянули в стартовом посте.
Я не понимаю что именно дает дублирование(!) информации из сессии в базе, при том что файлы продолжают работать. И вопрос о "сеансе" остается открытым.
sunnyrio: возможно стоит и редактор сменить. Или настроить нормально. Я только что проверил в sublime, notepad++, phped - все показывают что с четвертой строки начинается heredoc и нигде не заканчивается.
Lesha Weal: "Из коробки" браузер не может ни ставить на паузу ни перематывать гифки. Можно разобрать я уже писал, что можно разобрать гифку по кадром и показывать их в canvas. Хоть в обратном порядке.
Или менять src, чтобы запуск произошел заново. Вот пример с заменой на однопиксельную черную гифку: https://jsfiddle.net/mtsb267m/
Rostyk Ice: Я давно уже заглянул в исходник и посмотрел какие у них id. Но я не понимаю какие именно инпуты относятся к a1, или что такое (∑D2) : nD2. Среди айдишников инпутов вообще буква d не используется, там только "a" или "q" на первой позиции, "a" или "b" на второй и какие-то цифры.
Рекомендации там хорошие, но обратите внимание, что некоторые из них противоречивы, потому что безопасность vs удобство. Там в красненьких таких блоках об этом так и сказано.
Если вы сильно обеспокоены доступом к "протухшим", но еще не удаленным сессиям, можно добавить свою метку времени и проверку в session_handler->read(). Или даже повесить свой удаляльщик файлов сессии на cron, с запуском каждую минуту.
А если уж собрались задействовать базу для сессий, то переносите их туда полностью, зачем вам еще и файлы?