Когда компания подключает защиту от парсинга, обычно закрывают то, что в голове называется «наш сайт». Главный домен. Иногда - посадочные страницы. На этом работа считается сделанной.
Но несколько лет назад, когда сайт только разрабатывался, появился второй адрес. test.company.ru. Или staging-company.ru. Или beta.company.ru. Он был нужен, чтобы заказчик мог посмотреть на сайт до запуска, чтобы тестировать правки, чтобы новый подрядчик мог что-то поправить.
Этот домен не удаляли. Просто про него забыли.
И именно по нему системы сбора данных продолжают работать.
Если хотите понять, какие ваши домены сейчас открыты - запросите бесплатный аудит периметра:
Аудит периметра на stopparsing.ru
Как появляется тестовая копия и почему её не удаляют
Коротко: тестовый домен создают при разработке и оставляют работать - даже когда в нём нет нужды.
При разработке сайта всегда нужна «рабочая версия», где можно что-то сломать и никто не заметит. Разработчик поднимает отдельный сервер или поддомен, и сайт живёт там - полностью, с теми же формами и теми же страницами, что будут на основном.
После запуска основного домена тестовый никуда не девается. Причины обычно одинаковые:
- Никто явно не принял решение выключить его
- Подрядчик ещё иногда заходит туда проверить правки
- «На всякий случай - пусть висит, вдруг понадобится»
- DNS-запись просто не удалили
Иногда тестовый домен существует годами после запуска. Он недоступен в навигации - с основного сайта на него не ведут ссылки. Но он работает и отвечает на запросы из интернета. Любые запросы.
Почему парсеры не различают основной сайт и тестовый?
Коротко: системы сбора работают по адресам. Если домен отвечает - его читают.
С точки зрения системы сбора данных не существует «основного» и «тестового» сайта. Есть адрес, который отвечает на запросы. Если на адрес пришёл запрос и получил ответ - есть что читать.
Форма заявки на тестовом сайте работает? Значит, её структуру можно изучить. Телефоны на странице «Контакты» те же, что на основном? Значит, они собираются оттуда. Тестовый домен попал в поисковый индекс? Тогда его найдут в базах данных быстрее основного.
Защита, которую ставят на основной сайт, работает по принципу «закрыть этот конкретный домен». Если тестовый домен в список не попал - он защитой не прикрыт.
Периметр защиты - это список конкретных доменов и номеров. Если тестовый домен туда не включён, он открыт. StopParsing при аудите составляет этот список вместе с вами - и часто обнаруживает именно тестовые и технические домены, про которые компания успела забыть.
Проверить свой периметр на stopparsing.ru
Четыре способа, которыми системы сбора находят тестовый домен
Коротко: тестовые домены сложно скрыть - они оставляют следы в нескольких публично доступных местах.
1. Прозрачность SSL-сертификатов. Когда на тестовый домен ставят HTTPS-сертификат (браузер без него показывает предупреждение), этот факт попадает в публичные реестры Certificate Transparency. Они созданы для безопасности - чтобы проверять поддельные сертификаты. Но заодно через них легко найти все поддомены компании, включая тестовые.
2. DNS-записи. Часть компаний настраивает DNS так, что при запросе одного домена видны связанные записи. Стандартное поведение, не ошибка - но результат тот же: тестовый домен становится виден рядом с основным в публичных DNS-инструментах.
3. Поисковые индексы. Если на тестовом сайте не стоял блок индексации (строчка в robots.txt или мета-тег noindex), поисковик его проиндексировал. Страницы тестового сайта есть в поисковых базах - оттуда они попадают и в другие агрегаторы.
4. Код основного сайта. Комментарии в HTML, ссылки на тестовые ресурсы в скриптах, адреса в конфигурационных файлах - разработчики иногда оставляют следы тестового окружения в коде основного сайта. Автоматический анализ кода их находит.
Что именно видят через тестовую версию?
Коротко: всё то же, что и через основной сайт - формы, структуру, телефоны. Нередко даже больше.
Тестовый сайт - это та же копия основного. Те же страницы, те же формы захвата, те же контакты на странице «О нас». В этом смысле он не менее информативен для сборщика данных, чем основной.
Нередко тестовый сайт информативнее. Разработчики оставляют там служебные страницы и черновики контента. Структура внутренних ссылок выдаёт разделы, которые на основном сайте скрыты за авторизацией или не опубликованы.
Если на тестовом сайте работает форма заявки, её структуру и параметры можно изучить без ограничений, которые стоят на основном. Это упрощает автоматическую отправку запросов - в том числе спама.
Как именно автоматические системы изучают формы захвата и что с этим делать - в отдельном материале: «Как автоматические системы проверяют ваши формы».
Чем это опасно для вашего бизнеса
Коротко: данные уходят через канал, который не попал в защиту. Это касается трафика, форм и телефонов.
Трафик. Если ваш тестовый домен проиндексирован, по нему приходят люди - по старым ссылкам, через поисковую выдачу по устаревшим страницам. Вы вкладываете в рекламу основного сайта, а часть людей находит вас через тестовый и уходит без контакта с отделом продаж. При этом их данные могут уже оказаться в базах конкурентов - без заявки и без предупреждения. Подробнее о том, как конкурент может перехватить посетителя между просмотром сайта и заявкой - в статье «Почему рекламный бюджет может работать на конкурента».
Данные форм. Через тестовый сайт можно изучить, как устроена ваша форма захвата, какие поля обязательны, как работает валидация. Это полезно для тех, кто хочет обойти защиту от автоматических запросов или понять, какую информацию вы собираете.
Телефоны сотрудников. Если на тестовом сайте те же номера менеджеров, что и на основном, они собираются из обоих источников. Закрытие основного домена не даёт нужного эффекта - данные уже собраны с тестового.
Как быстро проверить, открыта ли ваша тестовая версия?
Коротко: несколько публичных инструментов за 5 минут покажут открытые поддомены вашего домена.
Несколько шагов, которые можно сделать прямо сейчас:
Зайдите на crt.sh и введите ваш основной домен. Это публичная база SSL-сертификатов - там видно, для каких поддоменов выпускались сертификаты. Если есть test., staging., beta., dev., old. - это ваши вспомогательные домены.
Попробуйте открыть найденные адреса в браузере. Если видите работающий сайт - он доступен снаружи.
Проверьте robots.txt на каждом найденном поддомене (адрес: поддомен/robots.txt). Если файла нет или он не запрещает индексацию - поисковики этот адрес видели.
Введите адрес тестового поддомена в поисковик. Если страницы индексированы - они есть в базах.
Это ручная проверка. Она даст первое представление, но не заменяет полноценный аудит - часть каналов сбора данных не зависит от индексации и DNS-видимости.
Кто в компании отвечает за тестовые домены?
Коротко: обычно никто. И в этом вся проблема.
На основном сайте есть владелец: маркетинг, ИТ, руководитель. За тестовый поддомен, который поднял подрядчик три года назад, - вопрос зависает.
Типичная картина: ИТ думает, что маркетинг знает об этом домене. Маркетинг думает, что это «техническое». Подрядчик давно сменился. Никто не принимал решения оставить его открытым - но никто не принимал решения закрыть.
Тестовые домены нередко обнаруживаются именно при аудите периметра - когда задаёшь вопрос «какие ещё адреса связаны с вашим бизнесом» и проверяешь их один за другим.
Схожая ситуация с мобильными версиями сайтов - как они попадают под парсинг, разбирали в статье «Как мобильная версия сайта остаётся открытой».
Что делать: тестовые домены как часть периметра
Коротко: тестовые домены должны быть в списке защиты с самого начала, а не добавляться когда вспомнят.
Решение прямое. Тестовые домены - часть периметра, а не опциональная добавка.
Практический порядок:
- Составить полный список доменов компании - основной, тестовые, старые (если переходили с другого адреса), региональные поддомены
- Проверить, какие из них работают - отвечают на HTTP-запросы из интернета
- Те, что не нужны, - выключить или ограничить доступ
- Те, что нужны (подрядчики заходят, тестируете правки), - включить в периметр защиты
В StopParsing аудит периметра начинается именно с этого шага. Составить список всего, что связано с вашим бизнесом, проверить что открыто, и только потом говорить о защите. После аудита понятно, что именно нужно закрывать и в каком порядке. Цена - по результатам аудита, без пакетов вслепую.
Источники
- Публичная база Certificate Transparency для проверки поддоменов: crt.sh
- RFC 1034: принципы работы системы доменных имён (DNS) и публичной видимости записей
- О том, как работает защита от парсинга: stopparsing.ru
Если хотите узнать, что сейчас открыто в вашем периметре - запросите бесплатный аудит. Покажем, какие домены и номера видят системы сбора данных, и что с этим можно сделать.
