Різні браузери вмикають різні заходи безпеки, коли встановлено прапор HTTPOnly . Наприклад, Opera та Safari не заважають javascript записувати до файлів cookie. Однак читати завжди заборонено в останній версії всіх основних браузерів.
Але що важливіше, чому ви хочете прочитати HTTPOnlycookie? Якщо ви розробник, просто вимкніть прапор і переконайтеся, що ви протестували свій код на xss. Рекомендую уникати відключення цього прапора, якщо це можливо. HTTPOnlyПрапор і «безпечний прапор» (який змушує кук для відправки через HTTPS) завжди повинні бути встановлені.
Якщо ви зловмисник , то хочете викрасти сеанс . Але є простий спосіб захопити сесію, незважаючи на HTTPOnlyпрапор. Ви все ще можете їздити на сесії, не знаючи ідентифікатора сесії. Черв'як MySpace Samy зробив саме це. Він використовував XHR для зчитування маркера CSRF, а потім виконував уповноважене завдання. Тому зловмисник міг робити майже все, що міг зробити зареєстрований користувач.
Люди занадто вірять у HTTPOnlyпрапор, XSS все ще може бути використаний. Слід встановити бар’єри навколо чутливих функцій. Такі, як подана зміна пароля, вимагатиме поточного пароля. Можливість адміністратора створити новий обліковий запис повинна вимагати капчу, яка є методом запобігання CSRF, який неможливо легко обійти за допомогою XHR .