Практика обеспечения безопасности личного домена
Categories:
Введение
В эпоху интернета сетевые атаки стали нормой. Каждый день бесчисленные автоматизированные инструменты сканируют каждый уголок интернета в поисках возможных уязвимостей. Многие считают, что жертвами атак становятся только крупные корпорации, но на самом деле, из-за снижения стоимости атак и распространенности инструментов, любой сервис, выставленный в интернет, может стать целью.
Анализ реальных кейсов
Пример атаки сканированием
Мой небольшой демонстрационный сайт, развернутый на Cloudflare, имеет только два действующих URL:

Но он все равно подвергается постоянным атакам сканирования.
Сначала все остальные URL возвращали 404, но в день запуска хосты из Гонконга начали сканировать, исходный IP менялся каждый день, но большинство были из Гонконга. Поскольку некоторые пользователи заходят с IP-адресов из Гонконга, нельзя просто заблокировать регион.

Все эти URL — это попытки с различными целями, мой worker обрабатывает только / и /logs-collector, эти настойчивые попытки в основном направлены на поиск уязвимостей.
Но такое сканирование тратит бесплатный лимит запросов CF, засоряет мои логи, и это не есть хорошо.
Позже я сделал так, что все остальные запросы возвращают 200, добавив текст Host on Cloudflare Worker, don't waste your time

Так сканировать стало немного меньше, хотя я не знаю, есть ли причинно-следственная связь.
Если это сервис работает на собственном хосте, его так сканируют каждый день, а если сервис не обновляется в плане безопасности, рано или поздно найдут уязвимость.
Для злоумышленников это просто ежедневные бесконечные попытки: где взломают — там и хорошо, в основном все автоматизировано, затраты на оборудование и время невелики.
Анализ угроз безопасности
Особенности злоумышленников
- Широко распространены трансграничные преступления, что снижает возможность привлечения к ответственности.
- Широкое использование автоматизированных инструментов, включая инструменты сканирования портов, такие как Nmap, Masscan.
- Постоянные атаки с низкой себестоимостью.
- Достаточно ресурсов “зомби”-устройств (botnet), частая смена IP-адресов.
- Время атаки обычно выбирают глубокой ночью или в праздничные дни.
Распространенные методы атак
- Сканирование портов
- Массовое сканирование открытых портов.
- Идентификация распространенных сервисов (SSH, RDP, MySQL и др.).
- Сканирование уязвимостей
- Сканирование устаревшего ПО с известными уязвимостями.
- Идентификация по признакам путей и имен файлов.
- Самостоятельное создание ввода для эксплуатации уязвимостей проверки ввода.
Практика безопасности
Используйте VPN, а не обратный прокси
Большинство людей не обновляют ПО вовремя, поэтому лучше не раскрывать свой домен. Сканирование может конструировать как постфикс, так и префикс, перебирая всевозможные поддомены.
Например, проблемные поддомены:
nas.example.comhome.example.comdev.example.comtest.example.comblog.example.comwork.example.comwebdav.example.comfrp.example.comproxy.example.com- …
Это лишь примеры, но для автоматической атаки наверняка используется словарь поддоменов для автоматического тестирования.
Можно настроить DNS-сервер локальной сети, например AdGuardHome, настроить разрешение доменных имен на нем, а устройства внутренней сети обеспечить доступом по фиксированному IP.
DDNS также можно реализовать через API AdGuardHome. Поскольку это локальная сеть, домен можно выбирать любой.
Использование сервисов безопасности на периферии
О “Кибербудде” Cloudflare много говорить не буду, пока энтузиасты не найдут действительно ценный коммерческий проект, он наверняка останется бесплатным.
В Китае это ESA от Alibaba Cloud (Aliyun), я пользуюсь обоими. У Aliyun бесплатный период составляет 3 месяца, обычно это 10 юаней в месяц за корневой домен с лимитом 50G трафика. На фоне того, что CF полностью бесплатен, я много рассказывать не буду.
Сервисы безопасности обычно дорогие: без защиты убытки от атаки могут быть огромными, а если платить за защиту, то каждый день видишь прямые “потери”.
Сервисы безопасности на периферии — это своего рода страховка: очень дешевая, с высокой рентабельностью, типичный случай, когда профессионалы делают свое дело.
Основная цель безопасности на периферии — скрыть свой реальный IP. Пользователь заходит на пограничный узел, а пограничный узел вычисляет решение, нужно ли идти к источнику для доступа к реальному IP.
Его суть — это предварительный обратный прокси, интегрирующий кэширование, WAF, CDN, защиту от DDoS и другие функции. Поскольку между пользователем и сервисом вставляется третья сторона, существует вероятность некоторого снижения пользовательского опыта.
Я использую и CF, и ESA. Если резюмировать: это делает опыт небольшой части пользователей с лучшим подключением немного хуже, но улучшает опыт пользователей в большем количестве регионов. В целом это того стоит.
Заключение
Если сервис только для личного использования, в приоритете VPN. Tailscale или ZeroTier — отличный выбор. Если нужен DNS-сервис, можно поднять AdGuardHome во внутренней сети, а для публичной сети можно использовать AdGuardPrivate.
Если сервис публичный, для доступа широкой публики, лучше всего использовать Cloudflare. Если вы заботитесь о скорости доступа в материковом Китае, используйте Aliyun ESA.
Эта практика безопасности приведена только для справки, очень приветствуются предложения от опытных пользователей с V-станции.