Разные браузеры включают разные меры безопасности, когда установлен флаг HTTPOnly . Например, Opera и Safari не препятствуют записи javascript в cookie. Однако в последних версиях всех основных браузеров чтение всегда запрещено.
Но что еще более важно, почему вы хотите читать HTTPOnly
cookie? Если вы разработчик, просто отключите флаг и обязательно протестируйте свой код для xss. Я рекомендую вам избегать отключения этого флага, если это вообще возможно. HTTPOnly
Флаг и «безопасный флаг» (который заставляет кук для отправки через HTTPS) всегда должны быть установлены.
Если вы злоумышленник , вы хотите захватить сеанс . Но есть простой способ перехватить сеанс, несмотря на HTTPOnly
флаг. Вы все еще можете ездить на сеансе, не зная идентификатора сеанса. Червь MySpace Samy сделал именно это. Он использовал XHR для чтения токена CSRF, а затем для выполнения авторизованной задачи. Следовательно, злоумышленник может сделать практически все, что может сделать зарегистрированный пользователь.
Люди слишком сильно верят в HTTPOnly
флаг, XSS все еще можно использовать. Вы должны установить барьеры вокруг чувствительных функций. Например, для смены пароля необходимо указать текущий пароль. Для возможности администратора создать новую учетную запись должна потребоваться капча, которая является методом предотвращения CSRF, который нельзя легко обойти с помощью XHR .