Войти
ГлавнаястатьиПрограммирование

Что надо знать про Cookie файлы с флагом HttpOnly

Просмотрено 138 раз Добавлено 1 месяц назад

Приветствую, товарищи разработчики! Совсем недавно я заметил что не все Cookie файлы показываются через консоль разработчика в браузере, а именно преимущественно через java script.

Как получить Cookie файлы в консоли

Через консоль или скрипт на java script можно получить куки файлы без флага HttpOnly.

Например команда в консоли, выведет все доступные Cookie:

document.cookie
Как выглядит вывод доступных 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

Во-первых, эта страница устанавливает файл 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.

Поделись с друзьями

Эдуард Шепелев
Автор статьи
138
Приватный раздел статей
Мы отобрали статьи со всего интернета, чтобы вы смогли не только сэкономить свои деньги, но и заработать, а также множество других полезных материалов!
Статьи по теме
Другие публикации автора
Недавно добавленные
Нет комментариев
Будьте первым, кто оставит свое мнение!
Только полноправные пользователи могут оставлять комментарии.
Войдите, пожалуйста.
Войти через

Статьи

Технологии, компьютер и интернет
Технологии, компьютер и интернет
Технологии, компьютер и интернет
Технологии, компьютер и интернет
Технологии, компьютер и интернет
Технологии, компьютер и интернет
Знакомства, любовь, отношения

Сообщества

Все про Телеграм
Каналы, чаты и боты
Rico - косплеи девушек
Привет, мальчики, как мы выглядим?
Слив данных
Многое доступно:)
IQ TEST
Прокачивай голову!
Слив халявы
Получаем платное бесплатно
Лохотрон игры 🎮
Онлайн игры лохотрон, не тратьте деньги и время
Цитаты великих людей
Великие мысли знаменитых людей
Пошлые истории
Между любовью и сумасшествием — одержимость
Цитаты
Великие слова, цитаты и афоризмы
Однaжды oдин очень мудpый челoвек cкaзал: "Любовь может быть только взaимной. Βcё, чтo пpoиcхoдит лишь с одной стоpoны - бoлeзнь".