December 22, 2018

Как вычисляют скрытые майнеры?

Ну или хотя бы поспотыкаются.

С начала 2017 года наш Центр мониторинга информационной безопасности видит попытки майнить криптовалюты на корпоративных ИТ-ресурсах, подключённых на мониторинг. Ну видит и видит, чего вам, битка жалко, что ли?

Действительно, а какой вред наносят майнеры в корпоративной сети? Какие угрозы для бизнеса это несёт? Давайте попробуем разобраться и понять, как искать майнеров и бороться с ними (если, конечно, решим это делать).

Marco Krohn, Creative Commons Attribution-Share Alike 4.0 International

А надо ли вообще их ловить

Майнинг — странная угроза ИБ. На первый взгляд даже непонятно, почему он — угроза. Майнерские клиенты не трогают ваши данные, и майнерам-злоумышленникам они тоже, как правило, не очень нужны.

Для анализа ущерба, который наносят майнеры, я предлагаю воспользоваться моделью «Куб МакКамбера». C осени 2017 года Джон МакКамбер отвечает за пропаганду ИБ по Северной Америке в (ISC)² (проводят сертификацию на CISSP, SSCP, CCSP, CSSLP и другие непонятные аббревиатуры). До этого Джон работал в ВВС США и Gartner.

МакКамбер предложил модель, отражающую три основных направления обеспечения ИБ.

Цели безопасности (Desired goals)

  • Конфиденциальность
  • Целостность
  • Доступность

Состояние информации (Information states)

  • Передача
  • Хранение
  • Обработка

Гарантии безопасности или защитные меры (Safeguards)

  • Человеческий фактор
  • Политики и практики
  • Технологии

Давайте пробежимся по граням куба и посмотрим, как майнинг влияет на каждую.

Как-то слишком много потенциальных проблем, чтобы можно было просто игнорировать добычу на своей инфраструктуре. Значит, всё-таки будем ловить.

Как искать

На хостах

Обычно, подозрения у пользователя появляются тогда, когда компьютер вдруг начинает тормозить. В первую очередь проверим, что у нас с процессами.

Для Windows это можно сделать с помощью Диспетчера задач (Ctrl+Alt+Del или Ctrl+Shift+Esc), для Mac — Activity monitor, для «UNIX, Unix-подобных и других POSIX-совместимых операционных систем» — ps.

Реальный ДЗ, после которого и появилась идея написать статью. Но тогда обошлось, оказалось, что несколько ресурсоёмких легитимных процессов запустились одновременно.

Проблема в том, что некоторые майнеры научились отслеживать запуск Диспетчера задач. Они прекращают работать, пока открыт ДЗ, и потом перезапускают себя. Как вариант — попробовать альтернативы:

Если видим незнакомый или подозрительный процесс, гуглим название. Если это что-то плохое, почти наверняка там же будет инструкция, как его удалить, и что сделать, чтобы не повторилось.

В этом нелёгком деле, как ни странно, могут помочь и сами создатели майнеров. Поскольку для них главной целью является вычислительные ресурсы компьютера, то им не хочется за них конкурировать с другими майнерами. В самом конце марта консультант по безопасности Xavier Mertens (xmeобнаружил код, который «гасит» конкурирующие процессы добычи и некритичные для нормальной работы процессы ОС, чтобы освободить ресурсы для себя. В коде указаны названия процессов-майнеров:

Если какой из этих процессов запущен на машине, поздравляю! Скорее всего, вы майните для кого-то. Вот так создатель малвари сделал за нас часть исследовательской работы.

Не стоит забывать и про системы защиты конечных точек. Хорошие антивирусы научились ловить майнеров. Главное не забыть в Настройках указать антивирусу, что их надо блокировать. Это не всегда включено по умолчанию, потому что пользователь может осознанно скачать, установить и запустить это ПО.

Идём на сайт антивирусного вендора, скачиваем образ диска восстановления, записываем на носитель, грузимся с него и проверяем систему. Долго, но не особо сложно.

Всё, что было написано выше, относится к тому случаю, когда пользователю не хочется иметь на своём ПК программу-майнера. Он сознательный, заметил и сообщил. Но что делать, если пользователь сам хочет майнить и не собирается никому об этом говорить?

В сети

Конечно, есть что половить и в сети! Мне попалась вот такая занятная картинка:

Наблюдение за сетью — способ найти «несознательных» пользователей и вредоносное майнинговое ПО.

Что нас должно насторожить:

  • Посещение сайтов, форумов, борд про майнинг. Аналитики нашего Центра мониторинга и рядом сидящие коллеги на меня уже косо поглядывают).
  • Скачивание ПО для майнинга, а с последними новостями про множественные форки популярных продуктов на гитхабе с последующим встраиванием туда дропперов — вообще любого ПО. Либо принудительно проверять всё, что прилетело (есть коммерческие решения, которые не отправляют проверяемые файлы в «облако»), либо просить пользователей отправлять дистрибутивы программ, вложения или исполняемые файлы на Virustotal.
  • Сетевое взаимодействие узлов с пулами для обмена информацией о полученных блоках и хешах.

К сожалению, последний способ работает только для известных майнеров, доменов и IP-адресов при условии корректной настройки и своевременного обновления межсетевых экранов и сетевых IDS / IPS. Блокирование портов — так себе метод, потому что на этих портах может быть и легальная активность.

Возникает вопрос: а где брать данные для детектирования? Пару лет назад я делал большое внутреннее исследование по Threat Intelligence и один из типов источников назвал Community Open Source Threat Exchange (COSTE). В таблице ниже приведён их список, ссылки на момент написания этой статьи были рабочими. Также я удалил из этого списка источники против спама, фишинга и общедоступные базы уязвимостей.

Если есть, чем дополнить, пишите в комментариях или в личку.

Хорошо, мы:

  • нашли подозрительное в трафике;
  • пришли на конкретный узел и убедились, что работает майнер;
  • удалили его, используя нагугленные для конкретного ВПО рекомендации;
  • уволили сотрудника, который майнил на наших серверах;
  • и даже отправили образец ВПО и дамп трафика на анализ в Virustotal или своему любимому вендору.

Но чаше всего наличие майнера в инфраструктуре говорит, что проблема у нас не в майнере. Проблема шире — в людях, в управлении уязвимостями, в настройке оборудования и СЗИ. Удаляя ПО, мы решаем только конкретную проблему с этим экземпляром ПО. А что делать, чтобы ситуация не повторялась?

Как защищаться?

Бекаптесь и обновляйтесь!

Все данные ниже рекомендации будут работать только при условии регулярного обновления узлов. Иначе все усилия будут похожи на картинку из одной из предыдущих наших статей.

Сеть

Благодаря средствам сетевой безопасности мы найдём следы работы ПО для добычи в нашей инфраструктуре. Даже если эти инструменты работают в режиме детектирования, мы получим достаточно информации для дальнейшего расследования.

Многие ИТ и ИБ администраторы не любят включать защиту сети в режим блокирования, на это у них есть веские и понятные причины, связанные с доступностью сервисов. Поэтому и рекомендовать блокирование по репутационным спискам сходу не получится. Майнер, как правило, не угрожает вашим данным прямо в момент обнаружения, есть время разобраться.

В качестве ещё одной превентивной меры можно сегментировать сеть, для предотвращения «горизонтального» распространения вредоносного ПО.

IaaS

У кого много вычислительных мощностей? У облачных провайдеров! Кто заплатит за виртуалочки? Клиент провайдера! Вот захватывающая история почти-попадания на 12 000 долларов на дружественном сайте.

Во избежание проблем:

  1. Используйте сложные и уникальные пароли.
  2. Настройте 2-FA.
  3. Сведите к необходимому минимуму количество админских учёток.
  4. Если платите по фактическому потреблению ресурсов, постоянно мониторьте активность и настройте оповещения на каждый чих.

Сайты

Скорее всего, вы сами не будете страдать от того, что на вашем сайте будет размещён вредоносный код, заставляющий машины посетителей добывать криптовалюту для злоумышленников. Во всяком случае, какое-то время. Потом есть риск получить это

и пессимизацию в поисковой выдаче и снижение посещаемости.

Для каждой популярной CMS и платформы есть руководства по безопасности. Хорошо бы им следовать, если возможно.

Также стои�� проверить, не заражены ли уже ваши сайты. Рекомендовать какой-то конкретный антивирус было бы некорректно, читайте отзывы и советы. Я находил темы и на Тостере, и на Stackoverflow.

Есть хорошая статья про майнинг на машинах посетителей сайтов.

Пользовательские АРМ

Как обычно, человеки — самая большая проблема. Если честно, я не знаю способов, как надёжно поймать сисадмина или безопасника, если он захочет (ну вот прям сильно захочет, решительно!) майнить на работе. Все способы напоминают костыли.

  • А чего у нас счёт за электричество больше? — Ну так весна, кондиционеры включили.
  • А что это за новая коробка в стойке? — Спецоборудование для комплаенса. Не задавайте больше таких глупых вопросов.
  • Давайте будем вести логи всех действий администраторов! — А просматривать их будут те же администраторы?

Но несколько рекомендаций всё-таки можно дать.

Во-первых, стоит объяснить вред майнинга для компании. В качестве шпаргалки можно использовать раздел про Куб МакКамбера.

Во-вторых, в трудовом договоре нужно прописать запрет использования корпоративных ИТ-ресурсов в личных целях. Будет хоть какой-то аргумент в споре с нерадивым сотрудником.

В-третьих, если всё-таки факт майнинга был подтверждён, следует понять мотивы человека. Мало денег? Не знал, что могут наказать? Было просто интересно попробовать? Это может и не разрешит мирно конкретную ситуацию, но покажет, на что стоит обратить внимание в будущем.

А ещё можно просто решить, что майнинг — вполне себе бизнес и начать добывать крипту в промышленных масштабах. Не можешь бороться — возглавь!

И напоследок держите майндкарту про всё написанное.

Оригинальный размер.

Бонус

Коллеги рассказали ещё один абсолютно не технический способ выявления майнеров-сотрудников — «В серверной вдруг стало чисто». Админы достаточно долго «прохладно» относились к порядку в серверной, и вдруг она засияла чистотой. Никаких видимых причин для такой резкой смены настроения не было. А мониторинг нескольких серверов показал ровную почти стопроцентную загрузку.

by t.me/it_ha