Поворот идентификатора сеанса повышает безопасность? - PullRequest
12 голосов
/ 17 мая 2010

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

Однако, есть ли какое-либо преимущество для случайно / периодически вращающихся идентификаторов сеанса?

По-моему, это только создает ложное чувство безопасности. Предполагая, что идентификаторы сеансов не уязвимы для угадывания методом перебора, и вы передаете идентификатор сеанса только в файле cookie (не как часть URL-адресов), тогда злоумышленнику потребуется получить доступ к вашему файлу cookie (скорее всего, отслеживая трафик), чтобы получить ваш идентификатор сессии. Таким образом, если злоумышленник получит один идентификатор сеанса, он, вероятно, сможет также прослушать повернутый идентификатор сеанса - и, следовательно, случайное вращение не повысит безопасность.

Ответы [ 4 ]

6 голосов

Если вы используете идентификаторы сеансов, хранящиеся в файлах cookie, фиксация сеансов не является проблемой. Я пролистал бумагу, которую вы вставили, и вижу такие вещи, как использование DNS и XSS для владения пользователем, что, очевидно, является гораздо более серьезной (не говоря уже о отдельных) проблемах, чем фиксация сессии. Если у вас есть идентификатор сеанса (с приемлемым уровнем энтропии), сохраненный в куки, то нет никакой разумной причины его вращать. Единственная причина, по которой его можно повернуть, заключается в том, что он может быть угадан или каким-то другим образом уязвим, и в этом случае пользователь все равно становится владельцем.

0 голосов
/ 09 марта 2017

Согласно этому сообщению в блоге SSL Labs (с 2013 г.), микросхемы RC4 (все еще замеченные в дикой природе, 2017 г.) являются слабыми и могут позволить черной шляпе выставлять данные cookie сеанса из перехваченного трафика HTTPS ( например, через Wi-Fi).

В блоге предлагается вращение идентификатора / данных cookie сеанса каждые x единиц времени (минут?) И после каждого y количества запросов.

0 голосов
/ 17 мая 2010

Звучит как глупая идея в целом.

Если пользователь нажмет кнопку «Назад», он будет полностью облажен, поскольку ссылки на предыдущей странице теперь будут содержать устаревший идентификатор сеанса. Вы также можете выбросить любой AJAX, потому что каждый раз, когда RPC выполняется на сервере, все ссылки / формы на странице требуют обновления, поскольку теперь они имеют недопустимые значения. Во всяком случае, это менее безопасно, потому что это означает, что ваше приложение становится более сложным и имеет больше шансов допустить ошибку.

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

0 голосов
/ 17 мая 2010

Веб-разработка не мое, но возможно ли это потому, что пользователь, входящий в систему, может быть злоумышленником? Например, если я войду в систему и получу идентификатор сеанса 4, могу ли я предположить, что идентификатор сеанса 5 будет принадлежать какому-то другому пользователю, изменить мой локальный файл cookie и затем действовать как этот пользователь?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...