Как настроить использование файлов 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

2022-11-02T02:58:32+00:00
Вопросы с похожей тематикой, как у вопроса:

Как настроить использование файлов cookie HttpOnly в PHP