Вирусы-майнеры: от обнаружения до полной санации — краткое руководство

Как попадают — реальные вектора заражения
Ни одного мистического хакера с красной шапкой — всё прозаичнее: • Открытые RDP/SSH с простыми паролями — классика жанра. • Устаревшие панели управления майнерами и их веб-интерфейсы (если доступны в сеть) — часто без MFA. • Фишинговые ссылки и вредоносные скрипты на машинах админов. • Заражённые USB и переносные накопители — да, встречается не только в кино. • Уязвимости в ПО оборудования и сторонних интеграциях (пулы, мониторинг). • Скомпрометированные CI/CD или автоматизация: контейнер с майнером попал в релиз.
Если коротко: злоумышленник идёт за «входной дверью», которую вы оставили незапертой. Поэтому первый урок банален — ставьте замок там, где можно.
Признаки и первичные меры
Признаки: скачок CPU/GPU, неизвестные процессы, странные outbound-соединения, падение хэша, резкий рост счета за электричество. Иногда — просто «что-то не так» в мониторинге.
Выполняем быстро и чётко:
- ИЗОЛЯЦИЯ. Отключаем поражённый хост от сети. Немедленно — физический пул Ethernet или VLAN-удаление. Не перезагружаем без плана: volatile-артефакты и логи могут исчезнуть.
- Фиксация. Снимаем скриншоты процессов, делаем ps aux, netstat/ss, логи майнера, делаем дамп памяти (если умеете). Фото панелей и показаний — пригодится.
- Оповещение. Три контакта: SOC/админ, руководитель площадки, менеджер по инцидентам. Коммуникация короткая, факты — по делу.
- Переключение нагрузки. Переносим задачи на резервные площадки/оборудование. Не оставляем рабочую нагрузку висеть.
Что нельзя делать: пытаться «очистить» процесс антивирусом на продакшн-майнере и тут же включать назад. Не рубите питание всей площадки, если можно обезопасить секцию — вы потеряете логи и усложните расследование.
Форензика и восстановление
После изоляции приходит время решения: реиновалидировать систему (reinstall) или восстановиться из бэкапа (restore)?
Reinstall — чистый старт, самый надёжный, но требует времени: • Полная переустановка ОС и прошивки. • Новые ключи SSH, новые пароли, заново настроенные агенты и мониторинг. • Проверка целостности образов и подписей. Рекомендуется, если уязвимость требует уверенного удаления скрытых бэкдоров.
Restore — быстрее, но рискованно: • Подходит, когда у вас проверенная и недавняя «чистая» резервная копия. • Перед восстановлением — офлайн-аудит бэкапа (скан на вредоносный код). Если бэкап сделан на автоматическом CI без аудита — лучше reinstall.
Процесс форензики:
- Сбор доказательств: дампы памяти, сетевые трассы, логи. Храним отдельно, с контрольной суммой.
- Анализ: кто/когда/каким пользователем/из какого IP. Ищем lateral movement.
- Закрытие векторов: патчим уязвимости, меняем ключи, усиливаем политики доступа.
- Пост-инцидентный отчёт: root cause, timeline, меры.
Политики, которые предотвращают повтор
Ни один инструмент не заменит дисциплины. Сформулируйте и внедрите: • Политика доступа: только jumpbox с MFA, запрет прямого SSH из интернета, ротация ключей. • Сегментация сети: management-net отдельно от mining-net, минимальные ACL. • Патч-менеджмент: расписание и проверка обновлений прошивок и ОС. • Контроль целостности: мониторинг процессов, hmac подписей бинов, EDR на управляющих нодах. • Бэкап-политика: регулярные, проверяемые, offline-копии; тест восстановления раз в квартал. • Инцидент-план и тренировки: раз в полгода прогон сценариев — «table-top» и «live drill». • Логирование и ретеншн: центральный лог-сервер, immutable storage, роль-бэйзд доступ.
И маленькое человеческое: обучайте персонал. Часто векторы — это человеческая ошибка: неосторожно открытый вложенный PDF, имя пользователя с паролем «admin123». Скучно? Да. Работает? Абсолютно.
Быстрый чек-лист для оператора
• Обнаружил скачок CPU/GPU — изолируй и зафиксируй.
•Не перезагружай, сделай дамп и логи.
• Решение: reinstall (безопасно) или restore (быстро, но проверенно).
• Поменять ключи, пароли, замкнуть векторы.
• Провести RCA и обновить политики.