Как настроить использование файлов cookie HttpOnly в PHP
- Для ваших файлов cookie см. этот ответ.
- Для собственного файла cookie сеанса PHP (
PHPSESSID
, по умолчанию), см. @richie's answer
Функции setcookie()
и setrawcookie()
ввели логический secure параметр httponly
еще в темные века vulnerability PHP 5.2.0, что сделало это xss приятным и простым. Просто php установите для 7-го параметра vulnerability значение true в соответствии xss-prevention с синтаксисом
Синтаксис функций упрощен для краткости
setcookie( $name, $value, $expire, $path, $domain, $secure, $httponly )
setrawcookie( $name, $value, $expire, $path, $domain, $secure, $httponly )
В PHP < 8 php.ini укажите NULL
для параметров, которые xss-prevention вы хотите оставить по умолчанию.
В xss PHP >= 8 вы можете извлечь php5 выгоду из использования именованных php.ini параметров. См. this question about named params.
setcookie( $name, $value, httponly:true )
Также возможно cookie использование более старой secure функции header()
более низкого уровня:
header( "Set-Cookie: name=value; HttpOnly" );
Вы php-frameworks также можете подумать, следует cross-site-scripting ли вам устанавливать параметр secure Secure
.
php
security
cookies
xss
httponly
Как настроить использование файлов cookie HttpOnly в PHP
Мы используем файлы cookies для улучшения работы сайта. Оставаясь на нашем сайте, вы соглашаетесь с условиями использования файлов cookies. Чтобы ознакомиться с нашими Положениями о конфиденциальности и об использовании файлов cookie, нажмите здесь.