Ну или хотя бы поспотыкаются.
С начала 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) обнаружил код, который «гасит» конкурирующие процессы добычи и некритичные для нормальной работы процессы ОС, чтобы освободить ресурсы для себя. В коде указаны названия процессов-майнеров:
Если какой из этих процессов запущен на машине, поздравляю! Скорее всего, вы майните для кого-то. Вот так создатель малвари сделал за нас часть исследовательской работы.
Не стоит забывать и про системы защиты конечных точек. Хорошие антивирусы научились ловить майнеров. Главное не забыть в Настройках указать антивирусу, что их надо блокировать. Это не всегда включено по умолчанию, потому что пользователь может осознанно скачать, установить и запустить это ПО.
Идём на сайт антивирусного вендора, скачиваем образ диска восстановления, записываем на носитель, грузимся с него и проверяем систему. Долго, но не особо сложно.
Всё, что было написано выше, относится к тому случаю, когда пользователю не хочется иметь на своём ПК программу-майнера. Он сознательный, заметил и сообщил. Но что делать, если пользователь сам хочет майнить и не собирается никому об этом говорить?
Конечно, есть что половить и в сети! Мне попалась вот такая занятная картинка:
Наблюдение за сетью — способ найти «несознательных» пользователей и вредоносное майнинговое ПО.
Что нас должно насторожить:
К сожалению, последний способ работает только для известных майнеров, доменов и IP-адресов при условии корректной настройки и своевременного обновления межсетевых экранов и сетевых IDS / IPS. Блокирование портов — так себе метод, потому что на этих портах может быть и легальная активность.
Возникает вопрос: а где брать данные для детектирования? Пару лет назад я делал большое внутреннее исследование по Threat Intelligence и один из типов источников назвал Community Open Source Threat Exchange (COSTE). В таблице ниже приведён их список, ссылки на момент написания этой статьи были рабочими. Также я удалил из этого списка источники против спама, фишинга и общедоступные базы уязвимостей.
Если есть, чем дополнить, пишите в комментариях или в личку.
Хорошо, мы:
Но чаше всего наличие майнера в инфраструктуре говорит, что проблема у нас не в майнере. Проблема шире — в людях, в управлении уязвимостями, в настройке оборудования и СЗИ. Удаляя ПО, мы решаем только конкретную проблему с этим экземпляром ПО. А что делать, чтобы ситуация не повторялась?
Бекаптесь и обновляйтесь!
Все данные ниже рекомендации будут работать только при условии регулярного обновления узлов. Иначе все усилия будут похожи на картинку из одной из предыдущих наших статей.
Благодаря средствам сетевой безопасности мы найдём следы работы ПО для добычи в нашей инфраструктуре. Даже если эти инструменты работают в режиме детектирования, мы получим достаточно информации для дальнейшего расследования.
Многие ИТ и ИБ администраторы не любят включать защиту сети в режим блокирования, на это у них есть веские и понятные причины, связанные с доступностью сервисов. Поэтому и рекомендовать блокирование по репутационным спискам сходу не получится. Майнер, как правило, не угрожает вашим данным прямо в момент обнаружения, есть время разобраться.
В качестве ещё одной превентивной меры можно сегментировать сеть, для предотвращения «горизонтального» распространения вредоносного ПО.
У кого много вычислительных мощностей? У облачных провайдеров! Кто заплатит за виртуалочки? Клиент провайдера! Вот захватывающая история почти-попадания на 12 000 долларов на дружественном сайте.
Во избежание проблем:
Скорее всего, вы сами не будете страдать от того, что на вашем сайте будет размещён вредоносный код, заставляющий машины посетителей добывать криптовалюту для злоумышленников. Во всяком случае, какое-то время. Потом есть риск получить это
и пессимизацию в поисковой выдаче и снижение посещаемости.
Для каждой популярной CMS и платформы есть руководства по безопасности. Хорошо бы им следовать, если возможно.
Также стоит проверить, не заражены ли уже ваши сайты. Рекомендовать какой-то конкретный антивирус было бы некорректно, читайте отзывы и советы. Я находил темы и на Тостере, и на Stackoverflow.
Есть хорошая статья про майнинг на машинах посетителей сайтов.
Как обычно, человеки — самая большая проблема. Если честно, я не знаю способов, как надёжно поймать сисадмина или безопасника, если он захочет (ну вот прям сильно захочет, решительно!) майнить на работе. Все способы напоминают костыли.
Но несколько рекомендаций всё-таки можно дать.
Во-первых, стоит объяснить вред майнинга для компании. В качестве шпаргалки можно использовать раздел про Куб МакКамбера.
Во-вторых, в трудовом договоре нужно прописать запрет использования корпоративных ИТ-ресурсов в личных целях. Будет хоть какой-то аргумент в споре с нерадивым сотрудником.
В-третьих, если всё-таки факт майнинга был подтверждён, следует понять мотивы человека. Мало денег? Не знал, что могут наказать? Было просто интересно попробовать? Это может и не разрешит мирно конкретную ситуацию, но покажет, на что стоит обратить внимание в будущем.
А ещё можно просто решить, что майнинг — вполне себе бизнес и начать добывать крипту в промышленных масштабах. Не можешь бороться — возглавь!
И напоследок держите майндкарту про всё написанное.
Оригинальный размер.
Коллеги рассказали ещё один абсолютно не технический способ выявления майнеров-сотрудников — «В серверной вдруг стало чисто». Админы достаточно долго «прохладно» относились к порядку в серверной, и вдруг она засияла чистотой. Никаких видимых причин для такой резкой смены настроения не было. А мониторинг нескольких серверов показал ровную почти стопроцентную загрузку.
С начала 2017 года наш Центр мониторинга информационной безопасности видит попытки майнить криптовалюты на корпоративных ИТ-ресурсах, подключённых на мониторинг. Ну видит и видит, чего вам, битка жалко, что ли?
Действительно, а какой вред наносят майнеры в корпоративной сети? Какие угрозы для бизнеса это несёт? Давайте попробуем разобраться и понять, как искать майнеров и бороться с ними (если, конечно, решим это делать).
Marco Krohn, Creative Commons Attribution-Share Alike 4.0 International
А надо ли вообще их ловить
Майнинг — странная угроза ИБ. На первый взгляд даже непонятно, почему он — угроза. Майнерские клиенты не трогают ваши данные, и майнерам-злоумышленникам они тоже, как правило, не очень нужны.
Для анализа ущерба, который наносят майнеры, я предлагаю воспользоваться моделью «Куб МакКамбера». C осени 2017 года Джон МакКамбер отвечает за пропаганду ИБ по Северной Америке в (ISC)? (проводят сертификацию на CISSP, SSCP, CCSP, CSSLP и другие непонятные аббревиатуры). До этого Джон работал в ВВС США и Gartner.
МакКамбер предложил модель, отражающую три основных направления обеспечения ИБ.
Цели безопасности (Desired goals)
- Конфиденциальность
- Целостность
- Доступность
Состояние информации (Information states)
- Передача
- Хранение
- Обработка
Гарантии безопасности или защитные меры (Safeguards)
- Человеческий фактор
- Политики и практики
- Технологии
Давайте пробежимся по граням куба и посмотрим, как майнинг влияет на каждую.
Направление | Влияние майнинга |
---|---|
Конфиденциальность | Не нарушает. |
Целостность | Не нарушает. |
Доступность | Нарушает, может замедлить, но не прекратить доступ к информации (в этом пункте мнения рецензентов разделились). |
Хранение | Не нарушает. |
Передача | Сетевое взаимодействие ПО с майнинг-пулами (или C&C-серверами в случае работы вредоносного ПО) грузит канал, а трафик может быть дорогим (для юридических лиц иногда в разы дороже, чем для физических) или лимитированным. |
Обработка | Если майнер полностью утилизирует ресурсы аппаратного обеспечения (а это тревога и подозрительно), пользователи будут наблюдать задержки при работе с данными. Типичная ситуация — «Да что ж ты так тупишь, а?!» |
Политики и практики | Во-первых, кто-то обогащается за счёт компании или учреждения. Для добычи крипты нужна электроэнергия, за которую приходится платить компании. Во-вторых, сотрудники ИТ и ИБ отвлекаются от других задач, им приходится расследовать эти инциденты и реагировать на них. В-третьих — для компании существуют юридические риски, поскольку правовой статус криптовалюты и её добычи в России пока не определён (20 марта 2018 года в Госдуму внесён проект ФЗ «О цифровых финансовых активах»). |
Человеческий фактор | Если не все сотрудники подразделения или коллектива в сговоре, то появляются вопросы, кто поставил майнера? Кто «заложил» коллегу? За ними последуют претензии в стиле «Вася Пупкин постоянно мониторит курсы валют, чтобы добывать самую выгодную, и не занимается основной работой. А мне одному разгребать эту кучу заявок?» К тому же игра на любопытстве и жадности хорошо срабатывает в периоды пика курса криптовалют и информационного шума, поэтому люди больше подвержены атакам социнженеров и фишингу. |
Технологии | У МакКамбера этот пункт посвящён оценке работы средств защиты. Следовательно, если мы нашли майнера, то мы должны понять, как он попал в нашу инфраструктуру? Какое из СЗИ допустило? Что ещё к нам могло попасть таким же способом? Это явно указывает на наличие проблем или уязвимостей, с которыми придётся разбираться. Но я бы не назвал это «ущербом». Скорее аргумент в пользу контроля. |
Как-то слишком много потенциальных проблем, чтобы можно было просто игнорировать добычу на своей инфраструктуре. Значит, всё-таки будем ловить.
Как искать
На хостах
Обычно, подозрения у пользователя появляются тогда, когда компьютер вдруг начинает тормозить. В первую очередь проверим, что у нас с процессами.
Для Windows это можно сделать с помощью Диспетчера задач (Ctrl+Alt+Del или Ctrl+Shift+Esc), для Mac — Activity monitor, для «UNIX, Unix-подобных и других POSIX-совместимых операционных систем» — ps.
Реальный ДЗ, после которого и появилась идея написать статью. Но тогда обошлось, оказалось, что несколько ресурсоёмких легитимных процессов запустились одновременно.
Проблема в том, что некоторые майнеры научились отслеживать запуск Диспетчера задач. Они прекращают работать, пока открыт ДЗ, и потом перезапускают себя. Как вариант — попробовать альтернативы:
- System Explorer
- Process Hacker
- Process Lasso
- Process Explorer (привет, Марк!)
- Process Monitor
Если видим незнакомый или подозрительный процесс, гуглим название. Если это что-то плохое, почти наверняка там же будет инструкция, как его удалить, и что сделать, чтобы не повторилось.
В этом нелёгком деле, как ни странно, могут помочь и сами создатели майнеров. Поскольку для них главной целью является вычислительные ресурсы компьютера, то им не хочется за них конкурировать с другими майнерами. В самом конце марта консультант по безопасности Xavier Mertens (xme) обнаружил код, который «гасит» конкурирующие процессы добычи и некритичные для нормальной работы процессы ОС, чтобы освободить ресурсы для себя. В коде указаны названия процессов-майнеров:
Silence | vshell | taskhots |
Carbon | winlogan | svchostx |
xmrig32 | winlogo | xmr86 |
nscpucnminer64 | logon | xmrig |
mrservicehost | win1nit | xmr |
servisce | wininits | win1ogin |
svchosts3 | winlnlts | win1ogins |
svhosts | taskngr | ccsvchst |
system64 | tasksvr | nscpucnminer64 |
systemiissec | mscl | update_windows |
taskhost | cpuminer | |
vrmserver | sql31 |
Если какой из этих процессов запущен на машине, поздравляю! Скорее всего, вы майните для кого-то. Вот так создатель малвари сделал за нас часть исследовательской работы.
Не стоит забывать и про системы защиты конечных точек. Хорошие антивирусы научились ловить майнеров. Главное не забыть в Настройках указать антивирусу, что их надо блокировать. Это не всегда включено по умолчанию, потому что пользователь может осознанно скачать, установить и запустить это ПО.
Идём на сайт антивирусного вендора, скачиваем образ диска восстановления, записываем на носитель, грузимся с него и проверяем систему. Долго, но не особо сложно.
Всё, что было написано выше, относится к тому случаю, когда пользователю не хочется иметь на своём ПК программу-майнера. Он сознательный, заметил и сообщил. Но что делать, если пользователь сам хочет майнить и не собирается никому об этом говорить?
В сети
Конечно, есть что половить и в сети! Мне попалась вот такая занятная картинка:
Наблюдение за сетью — способ найти «несознательных» пользователей и вредоносное майнинговое ПО.
Что нас должно насторожить:
- Посещение сайтов, форумов, борд про майнинг. Аналитики нашего Центра мониторинга и рядом сидящие коллеги на меня уже косо поглядывают).
- Скачивание ПО для майнинга, а с последними новостями про множественные форки популярных продуктов на гитхабе с последующим встраиванием туда дропперов — вообще любого ПО. Либо принудительно проверять всё, что прилетело (есть коммерческие решения, которые не отправляют проверяемые файлы в «облако»), либо просить пользователей отправлять дистрибутивы программ, вложения или исполняемые файлы на Virustotal.
- Сетевое взаимодействие узлов с пулами для обмена информацией о полученных блоках и хешах.
К сожалению, последний способ работает только для известных майнеров, доменов и IP-адресов при условии корректной настройки и своевременного обновления межсетевых экранов и сетевых IDS / IPS. Блокирование портов — так себе метод, потому что на этих портах может быть и легальная активность.
Возникает вопрос: а где брать данные для детектирования? Пару лет назад я делал большое внутреннее исследование по Threat Intelligence и один из типов источников назвал Community Open Source Threat Exchange (COSTE). В таблице ниже приведён их список, ссылки на момент написания этой статьи были рабочими. Также я удалил из этого списка источники против спама, фишинга и общедоступные базы уязвимостей.
COSTE | Страна |
---|---|
Abuse.ch | Швейцария |
AlienVault Open Threat Exchange | США, Испания |
Blocklist.de | Германия |
CoinBlockerLists | |
Collective Intelligence Framework | США |
ET-open | |
ForensicArtifacts | |
IOCbucket.com | США |
Malwaredomains | |
NoCoin browser extension blocklist | |
Shadowserver | |
Team Cymru | США |
Если есть, чем дополнить, пишите в комментариях или в личку.
Хорошо, мы:
- нашли подозрительное в трафике;
- пришли на конкретный узел и убедились, что работает майнер;
- удалили его, используя нагугленные для конкретного ВПО рекомендации;
- уволили сотрудника, который майнил на наших серверах;
- и даже отправили образец ВПО и дамп трафика на анализ в Virustotal или своему любимому вендору.
Но чаше всего наличие майнера в инфраструктуре говорит, что проблема у нас не в майнере. Проблема шире — в людях, в управлении уязвимостями, в настройке оборудования и СЗИ. Удаляя ПО, мы решаем только конкретную проблему с этим экземпляром ПО. А что делать, чтобы ситуация не повторялась?
Как защищаться?
Бекаптесь и обновляйтесь!
Все данные ниже рекомендации будут работать только при условии регулярного обновления узлов. Иначе все усилия будут похожи на картинку из одной из предыдущих наших статей.
Сеть
Благодаря средствам сетевой безопасности мы найдём следы работы ПО для добычи в нашей инфраструктуре. Даже если эти инструменты работают в режиме детектирования, мы получим достаточно информации для дальнейшего расследования.
Многие ИТ и ИБ администраторы не любят включать защиту сети в режим блокирования, на это у них есть веские и понятные причины, связанные с доступностью сервисов. Поэтому и рекомендовать блокирование по репутационным спискам сходу не получится. Майнер, как правило, не угрожает вашим данным прямо в момент обнаружения, есть время разобраться.
В качестве ещё одной превентивной меры можно сегментировать сеть, для предотвращения «горизонтального» распространения вредоносного ПО.
IaaS
У кого много вычислительных мощностей? У облачных провайдеров! Кто заплатит за виртуалочки? Клиент провайдера! Вот захватывающая история почти-попадания на 12 000 долларов на дружественном сайте.
Во избежание проблем:
- Используйте сложные и уникальные пароли.
- Настройте 2-FA.
- Сведите к необходимому минимуму количество админских учёток.
- Если платите по фактическому потреблению ресурсов, постоянно мониторьте активность и настройте оповещения на каждый чих.
Сайты
Скорее всего, вы сами не будете страдать от того, что на вашем сайте будет размещён вредоносный код, заставляющий машины посетителей добывать криптовалюту для злоумышленников. Во всяком случае, какое-то время. Потом есть риск получить это
и пессимизацию в поисковой выдаче и снижение посещаемости.
Для каждой популярной CMS и платформы есть руководства по безопасности. Хорошо бы им следовать, если возможно.
Также стоит проверить, не заражены ли уже ваши сайты. Рекомендовать какой-то конкретный антивирус было бы некорректно, читайте отзывы и советы. Я находил темы и на Тостере, и на Stackoverflow.
Есть хорошая статья про майнинг на машинах посетителей сайтов.
Пользовательские АРМ
Как обычно, человеки — самая большая проблема. Если честно, я не знаю способов, как надёжно поймать сисадмина или безопасника, если он захочет (ну вот прям сильно захочет, решительно!) майнить на работе. Все способы напоминают костыли.
- А чего у нас счёт за электричество больше? — Ну так весна, кондиционеры включили.
- А что это за новая коробка в стойке? — Спецоборудование для комплаенса. Не задавайте больше таких глупых вопросов.
- Давайте будем вести логи всех действий администраторов! — А просматривать их будут те же администраторы?
Но несколько рекомендаций всё-таки можно дать.
Во-первых, стоит объяснить вред майнинга для компании. В качестве шпаргалки можно использовать раздел про Куб МакКамбера.
Во-вторых, в трудовом договоре нужно прописать запрет использования корпоративных ИТ-ресурсов в личных целях. Будет хоть какой-то аргумент в споре с нерадивым сотрудником.
В-третьих, если всё-таки факт майнинга был подтверждён, следует понять мотивы человека. Мало денег? Не знал, что могут наказать? Было просто интересно попробовать? Это может и не разрешит мирно конкретную ситуацию, но покажет, на что стоит обратить внимание в будущем.
А ещё можно просто решить, что майнинг — вполне себе бизнес и начать добывать крипту в промышленных масштабах. Не можешь бороться — возглавь!
И напоследок держите майндкарту про всё написанное.
Оригинальный размер.
Бонус
Коллеги рассказали ещё один абсолютно не технический способ выявления майнеров-сотрудников — «В серверной вдруг стало чисто». Админы достаточно долго «прохладно» относились к порядку в серверной, и вдруг она засияла чистотой. Никаких видимых причин для такой резкой смены настроения не было. А мониторинг нескольких серверов показал ровную почти стопроцентную загрузку.
Комментарии (7)
KodyWiremane
27.04.2018 17:58Как искать
«Проба Майнера»: запускаешь на хосте какой-нибудь xmrig, если процесс неожиданно завершается — возможно, на машине запущен неизвестный умный майнер.
Интересно, демонстрируют ли подобное поведение майнеры-сотрудники — доносят ли на майнящих коллег, чтобы устранить конкуренцию?Serenevenkiy Автор
27.04.2018 18:07Перенос модели взаимодействия вредоносного ПО на людей — интересная идея. Кстати, может и сработать. Собрался такой помайнить, видишь, что коллега уже. Ты его закладываешь, белый-пушистый-чистенький, весь такой доверенный начинаешь майнить сам. Отвёл подозрения и устранил конкурента.
SagePtr
28.04.2018 00:50Если видим незнакомый или подозрительный процесс, гуглим название.
Множество вредоносных процессов обычно маскируются под svchost или другой компонент Windows, так что совет с проверкой названия далеко не всегда работает.Serenevenkiy Автор
28.04.2018 09:13Это да. Поэтому надо и в сеть смотреть тоже.
Хорошо, что у нас для таких случаев есть xi-tauw
mspain
Помнится лет 10 назад гонял folding@home по ночам на сотне пользовательских пк. Я злой майнер или хороший помощник докторам? :) хотя если бы тогда знал про биткоины и сколько они будут сейчас стоить, я б тогда не f@h гонял наверно и сейчас жил на собственном острове :)
Serenevenkiy Автор
Я тоже гонялна своей машине. Старался даже GPU под это дело прикрутить, но AMDшная карточка не завелась. «Знал бы прикуп, жил бы в Сочи».