Сеть доставки контента (CDN) — географически распределённая сеть серверов, которая кеширует и отдаёт веб-контент из точек рядом с пользователями, ускоряя сайты и поглощая атаки.
Как работает CDN
Вместо того чтобы каждый посетитель подключался к исходному серверу сайта, DNS или anycast-маршрутизация направляет его к ближайшему граничному серверу (edge) CDN. Граничный сервер отдаёт закешированные изображения, скрипты и страницы и пересылает на исходный сервер только остальные запросы, работая как масштабный обратный прокси-сервер. Модель первой реализовала основанная в 1998 году компания Akamai; сегодня Cloudflare, Fastly, Amazon CloudFront и другие обслуживают значительную долю всего веб-трафика.
Почему CDN важны для безопасности
Современные CDN — это ещё и платформы безопасности. Они терминируют TLS, фильтруют трафик межсетевыми экранами веб-приложений, управляют ботами и распределяют объёмные DDoS-атаки по огромным глобальным мощностям, так что сайты выдерживают потоки, которые обрушили бы отдельный дата-центр. Кроме того, CDN скрывают реальный IP-адрес исходного сервера.
Концентрация несёт собственные риски:
- Единая точка отказа — в июне 2021 года ошибка конфигурации в Fastly на короткое время обрушила многие крупные новостные и правительственные сайты по всему миру.
- Утечки данных — ошибка Cloudbleed в 2017 году заставляла граничные серверы Cloudflare вставлять в веб-страницы фрагменты памяти, включая cookie и токены.
- Раскрытие исходного сервера — если атакующие узнают IP-адрес исходного сервера из старых DNS-записей или заголовков писем, они могут обойти защиту CDN.
- Злоупотребления — злоумышленники размещают фишинговые страницы и вредоносное ПО на доверенных доменах CDN, а техника domain fronting (MITRE ATT&CK T1090.004) прячет за ними трафик управления.
Рекомендации
- Разрешать подключения к исходному серверу только из диапазонов адресов CDN или через аутентифицированные туннели.
- Включить WAF, ограничение частоты запросов и защиту от DDoS и регулярно пересматривать их правила.
- Использовать Subresource Integrity для сторонних скриптов, загружаемых с публичных CDN.
- Предусмотреть резервные варианты для критичных сервисов на случай сбоя CDN.





