CDN и шрифты за границей: где корпоративные данные покидают контур
📋 Кратко
Внешний шрифт не передаёт корпоративный договор сам по себе. Но браузер отправляет CDN IP-адрес, User-Agent, Referer, URL страницы и время запроса. Эти сведения могут связывать посетителя с конкретным сайтом. Разбираем маршрут запроса, риски внешних ресурсов, требования 152-ФЗ и меры контроля.
🔍 Почему шрифт становится вопросом защиты данных
Корпоративный сайт часто загружает шрифты не со своего сервера. В коде страницы появляется ссылка на внешний ресурс. Браузер посетителя сам обращается к этому адресу.
Такой запрос обычно получает IP-адрес, User-Agent, время обращения и адрес страницы-источника. В некоторых случаях CDN видит Referer, URL и параметры запроса. Сам файл шрифта при этом обычно не содержит договоры, заявки или тексты документов.
Риск связан не с содержимым шрифта. Он связан с техническими данными и контекстом запроса. По ним внешний сервис может понять, кто обращается к ресурсу и какую страницу открывает.
Проблема становится заметнее на сервисах с формами, личными кабинетами и документами. Внешний ресурс может видеть URL страницы. Если URL содержит идентификатор договора или другой служебный параметр, он тоже становится частью запроса.
Что сделать сейчас: откройте главную страницу и личный кабинет в браузере. Составьте список всех доменов, к которым обращается страница.
🧭 Как проходит запрос к внешнему шрифту
Пользователь открывает страницу корпоративного сайта. Браузер читает HTML и видит ссылку на таблицу стилей или файл шрифта. Затем он выполняет DNS-запрос и ищет адрес нужного домена.
После этого браузер подключается к CDN. CDN выбирает узел доставки и отдаёт статический файл. Внутри сети могут работать резервные маршруты и разные точки обработки.
Упрощённая цепочка выглядит так: браузер — DNS — CDN — сервер-источник. На каждом участке появляются технические записи. Их состав зависит от настроек сервиса и журнала доступа.
- DNS видит обращение к домену ресурса.
- CDN получает сетевой адрес клиента.
- Веб-сервер может получить User-Agent и Referer.
- Журнал фиксирует время и частоту запросов.
- URL может раскрыть название страницы или служебный идентификатор.
TLS защищает трафик от перехвата по пути. Но TLS не скрывает сам запрос от CDN. Внешний сервис всё равно видит соединение и может записывать его параметры.
Что сделать сейчас: зафиксируйте маршрут одного шрифта в инструментах разработчика. Сохраните домен, тип ресурса, Referer и параметры запроса.
⚠️ Какие сведения покидают корпоративный контур
Первый элемент — IP-адрес. Он не всегда позволяет напрямую установить личность. Но вместе с cookie, браузером и историей посещений он помогает отличать одного человека от другого.
Второй элемент — User-Agent. Он описывает браузер, операционную систему и часть технических настроек клиента. Такой набор помогает формировать профиль устройства.
Третий элемент — Referer. Это адрес страницы, с которой браузер пришёл за ресурсом. На публичной странице он раскрывает раздел сайта. На закрытом сервисе он может показать чувствительный путь.
Четвёртый элемент — URL и его параметры. Разработчики иногда помещают в адрес идентификаторы сессии, записи или документа. Внешний сервер получает такой адрес в рамках обычного запроса.
Важна и частота обращений. Повторяющиеся запросы показывают активность страницы или функции. Это не раскрывает текст документа, но даёт внешней стороне техническую картину использования сайта.
Нельзя автоматически считать каждый IP-адрес персональными данными. Вопрос зависит от контекста. Но широкое толкование учитывает IP вместе с cookie, браузером и историей посещений.
Что сделать сейчас: проверьте URL всех страниц с документами. Уберите из адресов имена файлов, номера договоров, токены и другие служебные значения.
🌍 Где появляется трансграничная передача
Внешний сервис может находиться за пределами России. В таком случае запрос клиента уходит иностранному лицу. Это происходит даже тогда, когда основной сервер приложения и документы находятся в России.
Внешний хостинг, библиотека, шрифт и аналитика создают разные каналы. Каждый канал имеет собственный регион обработки. У CDN нужно учитывать не только основной узел, но и резервные маршруты, журналы и резервные копии.
Проверка одного сервера не показывает всю географию обработки. Запрос может попасть на другой узел доставки. Записи могут храниться в другом регионе по правилам внешнего поставщика.
Закон определяет трансграничную передачу как передачу персональных данных на территорию другого государства иностранному лицу. Для этого не обязательно отправлять файл с договором.
С 1 марта 2023 года до начала трансграничной передачи нужно подать в Роскомнадзор отдельное уведомление. Оно отличается от уведомления о начале обработки персональных данных.
Что сделать сейчас: добавьте в реестр каждого внешнего поставщика. Укажите страну компании, регион узла, место журналирования и место хранения резервных копий.
🧩 Чем отличаются шрифты, CDN и аналитика
Шрифт — это статический файл. Браузер загружает его, чтобы правильно отобразить текст. Такой файл не получает содержимое открытого договора или заполненной формы.
CDN доставляет статические файлы. К ним относятся шрифты, таблицы стилей и библиотеки. CDN видит технический запрос клиента и может сохранять его в журнале.
Аналитический скрипт работает иначе. Он может собирать события, сведения о переходах и идентификаторы. Поэтому нельзя оценивать его как обычный файл шрифта.
Пиксель также создаёт отдельный запрос. CSS-зависимость может подтянуть внешний ресурс без явного уведомления пользователя. Список подключений нужно смотреть не только в HTML.
На практике один сайт может использовать сразу несколько иностранных компаний. В одном проверенном случае хостинг работал через Vercel. Шрифты загружались из Google Fonts на всех 33 страницах. Библиотеки для чтения PDF и Word приходили с cdnjs, который связан с Cloudflare.
Договоры через библиотеки не проходили. Внешние сервисы получали технические сведения посетителей. Но для оценки передачи данных важен сам факт получения этих сведений.
Что сделать сейчас: разделите ресурсы на четыре группы: шрифты, библиотеки, аналитика и пиксели. Назначьте для каждой группы отдельное правило контроля.
📋 Как проверить сайт без доступа к исходному коду
Начните с инструментов разработчика браузера. Откройте вкладку сетевых запросов и обновите страницу. Список покажет домены, типы ресурсов и порядок загрузки.
Отдельно найдите запросы к шрифтам. Проверьте адрес файла, домен, статус и заголовок Referer. Не копируйте в отчёт реальные идентификаторы пользователей или документов.
Затем повторите проверку на странице формы. Сравните запросы до ввода данных и после отправки. Это помогает отделить обычную загрузку ресурса от передачи данных формы.
- Сохраните перечень внешних доменов.
- Отметьте страну владельца ресурса.
- Проверьте, есть ли параметры в URL.
- Сравните Referer для публичной и закрытой страниц.
- Проверьте, какие запросы выполняются до согласия пользователя.
- Сверьте данные браузера с журналами DNS.
Следующий слой проверки — корпоративный прокси и межсетевой экран. Их журналы показывают исходящие соединения. DNS-журналы помогают увидеть обращения, которые не заметил владелец страницы.
Проверка должна проходить с разных ролей. Гость, сотрудник и администратор могут загружать разные ресурсы. Одна проверка главной страницы не даёт полной картины.
Что сделать сейчас: проведите тест на трёх страницах. Возьмите главную страницу, форму и раздел с документами.
🔐 Варианты размещения шрифтов
Самохостинг хранит файлы шрифтов на собственном сервере. Браузер обращается к домену организации. Это уменьшает число внешних запросов и упрощает контроль журналов.
У самохостинга есть своя цена. Команда отвечает за обновление файлов, доступность и контроль изменений. Устаревший или подменённый файл становится риском цепочки поставки.
Корпоративный CDN может ускорять доставку. Организация задаёт правила, домены и срок хранения журналов. Но нужно проверить, где реально работают узлы и где поставщик хранит резервные копии.
Обратный прокси принимает запрос на корпоративном домене и получает файл от внешнего источника. Браузер не обращается к внешнему домену напрямую. Однако сервер организации всё равно устанавливает связь с поставщиком.
Прямая загрузка с внешнего сервиса проще для разработки. Она требует меньше настроек. Зато внешний сервис сразу видит клиентский запрос и его технические сведения.
- Самохостинг: больше контроля, но обновления выполняет организация.
- Корпоративный CDN: выше гибкость доставки, но нужна проверка географии.
- Обратный прокси: клиентский запрос идёт через свой домен, но серверный канал остаётся.
- Внешний сервис: простое подключение, но больше данных уходит третьей стороне.
Что сделать сейчас: выберите модель для каждой группы ресурсов. Для страниц с документами уберите прямые внешние зависимости.
🛡️ Какие настройки снижают риск
Начните с политики Content-Security-Policy. Она задаёт разрешённые источники для шрифтов, стилей и скриптов. Политика помогает заметить неожиданное подключение.
Ограничьте домены для шрифтов. Не оставляйте широкие разрешения без причины. Каждое исключение заносите в реестр и проверяйте после изменений.
Контролируйте DNS. Внешние домены могут меняться без изменения HTML. Мониторинг помогает заметить новый адрес или неожиданный маршрут.
Настройте исходящий трафик. Серверы и рабочие места не должны свободно обращаться к любому внешнему ресурсу. Разрешайте только нужные домены и порты.
Фильтруйте Referer там, где это возможно и безопасно. Не передавайте внешним ресурсам закрытые пути. Не размещайте секреты в URL.
Сократите срок хранения журналов. Доступ к ним ограничьте ролями. Отдельно определите, кто просматривает записи CDN и DNS.
Проверяйте хеши и происхождение файлов. Изменение шрифта или библиотеки должно проходить через согласованный процесс. Храните сведения о версии и дате проверки.
Что сделать сейчас: включите режим отчётов Content-Security-Policy. Сначала соберите нарушения, затем удалите ненужные внешние источники.
⚖️ Что учитывать по 152-ФЗ
Закон рассматривает трансграничную передачу как передачу персональных данных иностранному лицу. Для этого не требуется передавать содержание корпоративного документа. Достаточно оценить, какие сведения получает внешний сервис.
IP-адрес сам по себе остаётся спорным признаком. Но вместе с cookie, браузером и историей посещений он может отличать одного человека от другого. Поэтому технические данные нельзя заранее исключать из проверки.
С 1 марта 2023 года организация до начала трансграничной передачи подаёт отдельное уведомление в Роскомнадзор. Речь идёт не об уведомлении о начале обработки.
США и Евросоюза нет в перечне стран с адекватной защитой. Для такой передачи нужно ждать десять рабочих дней. За это время регулятор может запретить или ограничить передачу.
Отдельного штрафа именно за передачу без уведомления нет. Нарушение квалифицируют по части 1 статьи 13.11 КоАП. Для юридического лица источник указывает диапазон от 150 до 300 тысяч рублей.
Если иностранный сервис принимает данные из формы, риск становится выше. К таким данным относятся заявка, телефон и электронная почта. Для них действует отдельное требование о сборе персональных данных россиян.
Юридическая оценка зависит от роли сервиса, состава данных и договоров. Нельзя делать вывод только по названию CDN. Нужно сопоставить маршрут, журнал, договор и правовое основание.
Что сделать сейчас: передайте юристу реестр внешних ресурсов. Приложите список данных, регион обработки, срок хранения и основание передачи.
✅ Чек-лист инвентаризации внешних ресурсов
Инвентаризацию проводит не только разработчик. В процесс входят владелец сайта, специалист по защите данных и администратор сети. Каждый отвечает за свою часть маршрута.
- Соберите все домены из HTML, CSS и скриптов.
- Найдите внешние шрифты и библиотеки.
- Проверьте пиксели и аналитические сценарии.
- Отметьте регион компании и узла доставки.
- Запишите IP-адрес, User-Agent и Referer.
- Проверьте параметры URL и идентификаторы.
- Уточните место хранения журналов.
- Уточните место хранения резервных копий.
- Проверьте наличие поручения обработки данных.
- Определите срок хранения технических записей.
- Назначьте владельца каждого внешнего ресурса.
- Поставьте дату повторной проверки после изменений.
Удобно вести реестр в формате «ресурс — регион обработки — передаваемые сведения — основание — мера контроля». Такой формат показывает пробелы без сложной терминологии.
Для каждого ресурса задайте решение. Его оставляют, заменяют на самохостинг, проксируют через корпоративный домен или удаляют. Решение фиксируют в журнале изменений.
Проверяйте сайт после обновления шаблона. Новая библиотека может добавить внешний запрос. Разработчик может подключить шрифт одной строкой, не заметив последствий.
Что сделать сейчас: создайте пять колонок реестра. Заполните их для всех ресурсов, которые видит браузер на странице с документами.
📌 Как не перепутать риск с утечкой документа
Внешний запрос к шрифту не означает, что договор покидает сервер организации. Браузер получает файл шрифта и применяет его к тексту страницы. Содержимое документа не входит в такой запрос автоматически.
Реальная передача документа требует другого события. Например, страница сама отправляет файл, текст формы или данные API. Такой трафик нужно проверять отдельно.
Ошибочный вывод создаёт две проблемы. Он мешает правильно оценить технический риск. Он также отвлекает от более опасных каналов, где внешние скрипты получают данные форм.
Разделяйте три вопроса. Куда уходит запрос? Какие сведения он содержит? Может ли внешний сервис получить содержимое бизнеса? Ответы часто отличаются.
При расследовании сохраняйте сетевой журнал без лишних персональных данных. Скрывайте реальные адреса, токены и идентификаторы в рабочих отчётах. Для анализа достаточно обезличенного примера.
Такой подход помогает принять точное решение. Одни ресурсы нужно удалить. Другие достаточно перенести на свой домен или ограничить политикой безопасности.
Что сделать сейчас: для каждого найденного запроса составьте два вывода. Укажите передаваемые метаданные и отдельно подтвердите, передаётся ли содержимое документа.
📚 Читайте также
- Bandwidth-амплификация x783 через HTTP/2: новая угроза для корпоративных CDN
- Подмена интернет-банка: как распознать домен-двойник и атаку
- Токен в URL после Referer: новые каналы утечки и защита веб-приложений
- Как провайдеры обрубают инфраструктуру трояна: меры защиты
- Телеметрия умного дома без утечек: DNS и локальные сервисы
📖 Термины
DNS · TLS · Персональные данные · Приватность · Трекеры