За три месяца наблюдений сенсор-приманка DShield зафиксировал повторяющуюся картину. Больше 3130 разных сетевых адресов после успешного входа в систему выполняли почти одинаковый набор команд. Каждый источник добавлял в планировщик задач пять однотипных заданий. Совпадение действий у тысяч независимых адресов указывает на общий автоматизированный инструмент, а не на ручную работу.
Описание
Сенсор DShield - намеренно открытая для посторонних система, которая фиксирует всё происходящее внутри. Основу составляет приманка Cowrie, имитирующая обычный сервер с доступом по SSH (защищённый протокол удалённого управления). Любую команду нарушителя среда записывает в журнал терминальной сессии - текстовый слепок того, что человек или программа вводили в консоль. Раз в сутки эти записи передают в SIEM-систему (комплекс для сбора и корреляции событий безопасности). Там журналы сопоставляют с миллионами других событий за тот же период.
Открытый сервер замечают быстро. Сканеры круглосуточно перебирают диапазоны адресов и ищут отклик на стандартном порту удалённого доступа. Ответ приходит в течение часов после появления машины в сети. Поэтому забытый тестовый сервер превращается в цель почти мгновенно. Дальше в ход идут словарные пароли и подбор учётных данных по спискам утечек.
Корреляция опирается на содержимое команд. Одинаковые действия дают одинаковый цифровой отпечаток. Сессии, разнесённые по времени и по разным адресам, удаётся связать в единую историю. Такой подход превращает разрозненные попытки входа в измеримую кампанию.
По данным проекта DShield, один цифровой отпечаток объединил пять похожих заданий планировщика, а число выполнивших их источников превысило 3130. Адреса относятся к десяткам сетей и операторов связи - от Южной и Юго-Восточной Азии до Восточной Европы и Африки. Заметная доля приходится на арендованные облачные машины. Похожие наборы команд встречались и в других отпечатках, структура действий оставалась той же.
Задания планировщика запускаются по расписанию и без участия человека. Для владельца заражённой машины это удобный способ удержаться в системе. Обычно такие задания периодически загружают дополнительный код, поддерживают связь с управляющим сервером или перезапускают вредоносный процесс после сбоя. Повторный запуск каждые несколько минут затрудняет удаление: даже если один файл убрать, следующий появится вновь. Пять заданий подряд говорят о заготовленном сценарии, который применяют массово.
Совпадение команд не всегда означает одного и того же оператора. Схему могли скопировать, продать или переиспользовать разные группы. Аренда серверов ещё сильнее запутывает картину: за одним адресом стоит клиент хостинга, а не конкретный человек. Впрочем, масштаб в тысячи источников говорит о промышленном подходе. Такие кампании не нацелены на конкретную компанию - они идут по всей сети подряд, выбирая тех, кто оставил дверь приоткрытой.
Опасность касается прежде всего серверов с открытым удалённым доступом. Слабый или повторно используемый пароль открывает дорогу внутрь за считаные минуты. Атака полным перебором (брутфорс) остаётся основным способом подбора: программы перебирают словарные пароли круглосуточно. Заражённый узел затем включают в ботнет для рассылок, сетевых атак или добычи криптовалюты. Компания рискует не только простоем, но и репутацией, если с её адресов пойдут атаки на партнёров. Утечка внутренних данных тоже возможна, ведь доступ получен от имени реальной учётной записи.
Отдельная статья расходов - облачная инфраструктура. Захваченная машина жжёт вычислительные ресурсы, а счёт за трафик растёт без ведома владельца. Провайдеры в ответ блокируют учётные записи и вносят адреса в чёрные списки. Восстановление репутации сети занимает недели и требует переписки с десятками сервисов. Для небольшой компании такой простой ощутимее, чем сам факт взлома.
Защита начинается с отказа от паролей в пользу ключей доступа. Двухфакторная аутентификация закрывает вход даже при утечке пароля. Полезно ограничить круг адресов, которым разрешено подключение, и сменить стандартный сетевой порт. Регулярное обновление серверного ПО убирает известные уязвимости. Стоит отключить вход для служебных и гостевых учётных записей, если ими никто не пользуется. Отдельного внимания требует мониторинг: неожиданные задания в планировщике и новые сетевые соединения видны в журналах. Проверять их стоит не реже раза в неделю, а лучше автоматически.
Собранная статистика показывает масштаб явления. Несколько тысяч адресов, повторяющих один сценарий, - это не разрозненные попытки одиночек. За одинаковыми командами стоит отлаженный конвейер: один инструмент, тиражируемый по чужим машинам. Приманки вроде DShield дают редкую возможность наблюдать его работу изнутри. Полученные журналы помогают заранее предупреждать владельцев уязвимых систем и уточнять, какие именно приёмы востребованы у атакующих сейчас.