За месяц NullMixer поразил 8000 Windows-устройств, включая IoT

За месяц NullMixer поразил 8000 Windows-устройств, включая IoT

За месяц NullMixer поразил 8000 Windows-устройств, включая IoT

Известный ИБ-эксперт из Болоньи Лука Мелла (Luca Mella) рассказал о текущей вредоносной кампании с участием дроппера NullMixer. За последний месяц злоумышленникам удалось с его помощью внедрить инфостилеров, шпионов и зловредных загрузчиков более чем в 8 тыс. компьютеров, серверов и даже IoT-устройств под управлением Windows, расположенных в различных регионах.

Новая NullMixer–кампания, как и в прошлом году, использует вредоносную рекламу, черный SEO и социальную инженерию. Первичная полезная нагрузка выдается за кряки популярного софта техобслуживания (EaseUS Partition Master, Driver Easy Pro и т. п.), продвигаемые с помощью видеороликов на Youtube.

Чтобы уберечь от обнаружения хост с вредоносным кодом (в облаке Mega.nz), злоумышленники используют короткие ссылки Bit.ly и страницу-редирект, созданную на BlogSpot. Формат отдаваемого файла с NullMixer остался прежним — WinRAR.exe.

В архиве содержится также множество бинарников, автоматически запускаемых по клику:

  • Crack.exe — загрузчик PseudoManuscrypt;
  • Brg.exe — инфостилер Raccon, командный сервер которого поднят в сетях российского хостинг-провайдера VDSina;
  • Lower.exe — шпион GCleaner с функциями загрузчика;
  • Sqlcmd.exe — загрузчик интересного бота-стилера, использующего криптографию на основе эллиптических кривых (ECC) для защиты C2-коммуникаций;
  • KiffAppE2.exe— загрузчик с кодовым именем Crashtech/CrashedTech, появившийся в поле зрения ИБ-экспертов в ноябре прошлого года;
  • ss29.exe — дроппер потрошителя криптокошельков Fabookie (спрятан в .jpeg), использующий PAC-файлы с Google Cloud для настройки перехвата трафика через внешний HTTP-прокси.

Анализ KiffAppE2.exe (Crashtech) показал, что это .NET-бинарник, запускающий код загрузчика. Вредонос ищет в системном реестре ключ KiffAppApi: по всей видимости, его используют в рамках схемы PPI (Pay Per Install, оплата за каждую установку), и проверка помогает исключить повторное заражение.

Код Crashtech незамысловат; он отсылает системные данные (юзернейм, версия ОС, внешний IP) на C2-сервер, парсит ответ, чтобы извлечь информацию о месте сохранения целевой, а затем загружает пейлоад и запускает его на исполнение (с помощью API Process.Start). В этом месяце данный загрузчик использовался в основном для доставки инфостилера RedLine с C2-сервером в сетях украинского провайдера Timehost.

Исполняемый файл Sqlcmd.exe представляет собой 32-битный бинарник среды выполнения Microsoft C и C++ (MSVC). Зловред упорно пытается загрузить с заданного адреса множество файлов, имена которых отвечают шаблонам ab[число].php и ab[число].exe. Он также запускает выполнение встроенной PowerShell-команды на загрузку дополнительного кода.

Имена скриптов, загружаемых с взломанного пакистанского WordPress-сайта, схожи: debug2.ps1, debug20.ps1, debug4.ps1 и т. п. После расшифровки (XOR) итоговые байты включаются в состав .NET-сборки. Примечательно, что ключ для расшифровки вредонос получает с внешнего C2-сервиса, реализующего многоступенчатую схему полиморфной защиты. Оттуда же отдаются дополнительные конфигурационные данные: ID участника партнерки и адреса C2.

В этом месяце финальный .NET-файл защищен с помощью ConfuseEx v1.0.0. После распаковки высвобождается модуль с именем koi, реализующий функции инфостилера:

  • кража паролей из FileZilla, Chrome, Discord;
  • кража данных из криптокошельков, проверка наличия аппаратного кошелька Trezor;
  • кража данных из папки Telegram;
  • кража конфигурационных данных VPN;
  • кража 2FA-кодов из локального хранилища Twilio Authy.

Прежде чем приступить к сбору данных, koi выполняет функцию checkVal, чтобы избежать повторной инфекции, а также выявить наличие песочницы или эмулятора антивируса. Стилер также откатывает заражение, если местоположение жертвы — одна из стран бывшего СНГ (определяется по дефолтному языку ОС).

Центр управления koi расположен в Латвии; связь осуществляется нестандартным образом: зловред перенаправляет конкретные потоки в памяти непосредственно на удаленный сервер, чтобы не оставлять следов на диске. При этом используется HTTP, но сообщения отследить трудно, так как они шифруются с использованием кастомного протокола на основе ECC-криптографии. Последнее отправленное сообщение содержит произвольно сгенерированный публичный ключ, что открывает возможность для детектирования.

Заражения в рамках запущенной в январе NullMixer-кампании зафиксированы в 87 странах. В этом месяце злоумышленники значительно расширили свою географию, выйдя за пределы Северной Америки.

 

Большинство атакуемых хостов используют клиентскую ОС Microsoft — Windows 10 Pro или Windows 10 Home. Заражений на предприятиях крупного и среднего бизнеса заметно меньше (версия Enterprise — 5,3% хостов, Windows Server — 71 хост). Пять инфицированных устройств используют Windows Embedded, то есть относятся к классу IoT.

 

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

Критическая уязвимость в TLP позволяет обойти защиту Linux

В популярной утилите TLP, которую многие владельцы ноутбуков на Linux используют для управления энергопотреблением, обнаружили критическую уязвимость. Причём проблема нашлась во время обычной проверки пакета командой SUSE Security Team и располагается во вполне штатном коде.

Брешь получила идентификатор CVE-2025-67859 и затрагивает версию TLP 1.9.0, где появился новый profiles daemon.

Этот демон работает с root-правами и управляет профилями питания через D-Bus. Задумка хорошая, но реализация подвела: в механизме аутентификации Polkit нашлась логическая ошибка, которая фактически позволяет обойти проверку прав.

Как объясняют исследователи, демон должен был строго проверять, кто именно отправляет команды. Но из-за ошибки любой локальный пользователь мог взаимодействовать с ним без должной аутентификации — а значит, менять системные настройки питания от имени root.

На этом сюрпризы не закончились. В ходе анализа специалисты SUSE нашли ещё несколько проблем, уже связанных с исчерпанием ресурсов. В частности, механизм profile hold, который позволяет временно «зафиксировать» профиль питания, оказался совершенно без валидации. Локальный пользователь мог создавать неограниченное количество таких блокировок, причём без прав администратора.

В итоге это открывает прямую дорогу к DoS-атаке: демон начинает захлёбываться от бесконечных записей в структуре данных, куда попадают числа, строки с причиной и идентификаторы приложений — всё это полностью контролируется клиентом.

Любопытно, что SUSE вспомнила похожую историю с демоном управления питанием в GNOME: аналогичную проблему находили ещё несколько лет назад. Отдельно исследователи отметили вопросы к механизму «куки», которыми отслеживаются profile hold. Формально речь шла о предсказуемости значений, но в сочетании с отсутствием лимитов это лишь расширяло поверхность атаки.

К счастью, реакция была быстрой. SUSE сообщила об уязвимостях разработчикам ещё в декабре, и в версии TLP 1.9.1 проблема уже закрыта. В частности, число одновременных profile hold теперь жёстко ограничено числом 16, что убирает риск истощения ресурсов.

RSS: Новости на портале Anti-Malware.ru