Как хакеры готовят атаки на банки Ч3 Выявление уязвимостей

Продолжение. Часть 1, часть 2.

ВСЯ ИНФОРМАЦИЯ ПРЕДСТАВЛЕНА В ОЗНАКОМИТЕЛЬНЫХ ЦЕЛЯХ. Автор не несёт ответственности за последствия использования материалов.

Шаг 1. Выявление доступных сервисов.

Пассивная разведка дала нам список IP-сетей. Теперь нужно понять, какие сервисы на этих IP открыты для всего мира. Инструмент — Shodan (или Censys). Это «теневое зеркало» интернета: оно сканирует весь IPv4-диапазон и хранит баннеры всех открытых портов. Мы выбрали Shodan — он удобнее и не требует специальных разрешений.

Как работает: Через веб-интерфейс или API мы отправляем запрос по каждому IP. Shodan возвращает: порт, протокол, название сервиса, версию ПО, баннер, операционную систему. Всё это — без единого запроса к цели. Мы не касаемся их сети. Мы просто читаем то, что они сами выставили наружу.

Автоматизация: Ручная проверка 100 000 IP невозможна. Мы написали сборщик на Python (библиотека Shodan). Программа работала неделю. Результат — полная карта доступных сервисов финансового сектора.

Что мы нашли (самое «ужасное»): СУБД (иногда с записью «доступ запрещён» — но сам факт открытости порта уже риск). Службы каталогов (LDAP) — потенциальная утечка учётных записей. Файловые сервисы (SMB, FTP) — доступ к внутренним документам. Принтеры на периметре. Да, принтеры. Они практически никогда не обновляются и полны старых уязвимостей. Telnet, RDP — удалённое управление без шифрования. Системы виртуализации и мультимедийные сервисы (?!).

Распределение: чем крупнее организация, тем больше сервисов на периметре, а значит — больше вероятность ошибки. Это закон: власть (размер) порождает уязвимости.

Шаг 2. Определение уязвимых сервисов

Имея баннеры (название сервиса и версию), мы сопоставили их с базами уязвимостей. Использовали:

SecurityLab.ru (российская база, включая БДУ ФСТЭК) NVD (nvd.nist.gov) — международный стандарт Vulners.com, CVE details, SecurityFocus

Автоматизация: простой скрипт прогнал все сервисы по нашей внутренней базе (аналогично можно использовать любой открытый источник). Результат: уязвимости найдены в 5% сервисов.

Почему так мало? Это не потому, что защита хороша. Это потому, что Shodan не проводит активное сканирование (как Nmap -sV). Он фиксирует только то, что сервер сам отдаёт. При активном сканировании процент уязвимостей обычно 20-50%. То есть реальная картина хуже.

Как увеличить точность:

Использовать CPE (Common Platform Enumeration) вместо связки Product+Version — так больше совпадений. Добавить активное сканирование (но это уже заметно для защитных систем). Или просто заказать профессиональный аудит. Что это значит для вас Любая организация, даже из топ-100 банков, оставляет на периметре сервисы, которые можно увидеть и проанализировать. А увидев — найти уязвимость. Это не требует спецсредств. Только терпение и знание.

Ваш контроль: Вы не можете спрятать все порты. Но вы можете регулярно проверять себя через Shodan и базы уязвимостей — так же, как это делает злоумышленник. И закрывать то, что не должно быть открыто.

Практический совет:

Раз в месяц запускайте скрипт, который собирает баннеры ваших IP из Shodan и прогоняет через CVE-базы. Это займёт час, но сэкономит миллионы. В следующей части — как автоматизировать защиту и построить систему мониторинга периметра без бюджета. Подписывайтесь.

Цены: экспресс-аудит — от 50 000 ₽, полный пентест — от 100 000 ₽.

Контакты: Telegram.