INTEGRITY Документация

Как избежать отравления веб-кэша

Атака отравления кеша использует HTTP запрос, чтобы заставить исходный веб-сервер ответить вредоносным ресурсом с тем же ключом кеша, что и у легитимного запроса. В результате отравленный ресурс кешируется и отдаётся другим пользователям.

Сеть доставки контента (CDN), такая как Cloudflare, использует ключи кеша для сравнения новых запросов с кешированными ресурсами. После этого CDN определяет, следует ли отдать ресурс из кеша или запросить его напрямую с исходного веб-сервера.

Подробнее об отравлении кеша

Чтобы лучше разобраться в рисках и уязвимостях, связанных с отравлением кеша, ознакомьтесь со следующими материалами:

Кешируйте только по-настоящему статичные файлы

Проверьте конфигурацию кеширования на вашем исходном веб-сервере и убедитесь, что кешируются только статические файлы, не зависящие от пользовательского ввода. Чтобы узнать больше о кешировании в Cloudflare, ознакомьтесь со следующим:

Не доверяйте данным в заголовках HTTP

Злоумышленники могут использовать заголовки HTTP для внедрения вредоносного содержимого в кэшируемые ответы. Например, если ваше приложение отражает значение недоверенного заголовка в теле ответа, злоумышленник может воспользоваться этим для выполнения межсайтового скриптинга (XSS) через кэш. Чтобы снизить этот риск:

Не доверяйте телам GET-запросов

Cloudflare кеширует содержимое тела GET-запросов, но оно не входит в ключ кеша. Тело GET-запроса следует считать недоверенным источником данных, и оно не должно влиять на содержимое ответа. Если тело GET-запроса может изменять содержимое ответа, рассмотрите возможность обхода кеша или использования запроса POST.

Следите за уведомлениями о безопасности веб-приложений

Чтобы быть в курсе угроз для интернет-безопасности, Cloudflare рекомендует регулярно отслеживать бюллетени по безопасности. Вот некоторые из наиболее популярных бюллетеней: