Ответ
HttpOnly — это флаг, устанавливаемый для HTTP-куки, который запрещает доступ к ней через JavaScript (например, через document.cookie). Это критически важная мера защиты от XSS-атак, предотвращающая кражу сессионных токенов.
Как тестировать атрибут HttpOnly:
- Ручная проверка в DevTools:
- Откройте вкладку Application → Cookies.
- Найдите нужную куку и убедитесь, что в колонке HttpOnly стоит галочка.
- Автоматизированная проверка в API-тестах (пример на JavaScript для Postman):
pm.test("Session cookie must have HttpOnly flag", function () { const sessionCookie = pm.cookies.get("sessionId"); pm.expect(sessionCookie).to.be.an('object'); pm.expect(sessionCookie.httpOnly).to.be.true; // Ключевая проверка }); - Проверка с помощью инструментов безопасности:
- Сканеры уязвимостей (OWASP ZAP, Burp Suite) автоматически отмечают куки без флага
HttpOnlyкак потенциально уязвимые.
- Сканеры уязвимостей (OWASP ZAP, Burp Suite) автоматически отмечают куки без флага
Важно: Кука с HttpOnly по-прежнему автоматически отправляется браузером с каждым HTTP-запросом к домену, поэтому функциональность аутентификации не страдает.