nastya97core
@nastya97core
Начинающий программист

Как проверить, являются ли cookie httponly в php?

здравствуйте.
session_start();
function p($var) {echo '<pre>';print_r($var);echo '</pre>';}
setcookie("TestCookie", "123", time()+3600,httponly:true);
p(session_get_cookie_params());

я получаю такой массив
Array
(
    [lifetime] => 0
    [path] => /
    [domain] => 
    [secure] => 
    [httponly] => 
    [samesite] => 
)


Только не говорите, что проверить httponly в браузере невозможно. Проверка httponly должна быть обязательна. У javascript нет доступа к httponly, а у пользователя этого доступа более, чем достаточно и через консоль инспектора прописываются любые куки, которые нужны.

И что я делаю не так?
  • Вопрос задан
  • 405 просмотров
Решения вопроса 2
DevMan
@DevMan
зачем вам это проверять?
ваша зона ответственности - собственные печеньки. их и проверяйте.
Ответ написан
SagePtr
@SagePtr
Еда - это святое
Функция session_get_cookie_params возвращает параметры, которые сессионная кука получит, когда вы вызовете session_start. А проверить, с какими параметрами были установлены куки в браузере, на сервере нет возможности - браузер отправляет на сервер только имена и значения. Если хотите для себя убедиться, что куки верно выставляются - то в браузере на F12 смотрите заголовки, которые скрипт ваш отдаёт, а если хотите защититься от спуфинга - это никак не получится, юзер может любые заголовки или данные отправить, никто его гвоздями к браузеру не прибивает, есть тонны утилит.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы