Приветствую, товарищи разработчики! Совсем недавно я заметил что не все Cookie файлы показываются через консоль разработчика в браузере, а именно преимущественно через java script.
Как получить Cookie файлы в консоли
Через консоль или скрипт на java script можно получить куки файлы без флага HttpOnly.
Например команда в консоли, выведет все доступные Cookie:
document.cookie

Несмотря на то, что файлы cookie HttpOnly не могут быть прочитаны с помощью JavaScript, все же можно перезаписать файлы cookie HttpOnly с помощью JavaScript.
Файлы cookie — это небольшие фрагменты данных, которые браузер отправляет с каждым запросом. Чтобы снизить риск межсайтового скриптинга (XSS), файлы cookie можно пометить как HttpOnly. Таким образом, значение cookie не может быть прочитано из JavaScript. Файлы cookie HttpOnly по-прежнему отправляются из браузера на сервер, но внутри браузера они не читаются JavaScript. Однако файлы cookie, помеченные как HttpOnly, по-прежнему можно перезаписать.
Перезапись Cookie файлов
Браузеры имеют ограничение на количество хранимых файлов cookie. Количество файлов cookie, которые может хранить домен, варьируется в зависимости от браузера, но обычно ограничивается несколькими сотнями файлов cookie. Когда записывается больше файлов cookie, самые старые файлы cookie удаляются. Установив множество файлов cookie, приложение может заставить браузер удалить старые файлы cookie.
Это работает даже с JavaScript, а также удаляет файлы cookie HttpOnly. Таким образом, установив множество файлов cookie, сценарий может удалить файлы cookie HttpOnly. После этого можно установить новый файл cookie с тем же именем, отличный от HttpOnly, что фактически перезапишет файл cookie HttpOnly.
Пример

Во-первых, эта страница устанавливает файл cookie HttpOnly, если он еще не существует:
setcookie($cookie_name, $cookie_name, 0, "", "", false, true);
Затем, когда вы нажимаете кнопку, он записывает 700 файлов cookie с помощью JavaScript.
Это заставит браузер удалить исходный файл cookie HttpOnly, поскольку браузер не будет хранить такое количество файлов cookie для одного домена. Это означает, что браузер не знает, что файл cookie был HttpOnly, и мы можем перезаписать его с помощью JavaScript:
document.cookie = "cookie_name =overwritten by JavaScript";
Несмотря на то, что HttpOnly обеспечивает некоторую защиту от JavaScript, он не защищает от удаления или перезаписи файла cookie.