Зловред BPFDoor использует давнюю уязвимость в Solaris для получения root

Зловред BPFDoor использует давнюю уязвимость в Solaris для получения root

Зловред BPFDoor использует давнюю уязвимость в Solaris для получения root

Компания CrowdStrike опубликовала результаты анализа атак на Solaris и Linux с целью внедрения импланта BPFDoor. Как оказалось, в первом случае злоумышленники пытаются закрепиться в системе через эксплойт уязвимости, опубликованной в 2019 году.

Кастомный бэкдор BPFDoor отличает умение мастерски избегать обнаружения: его с 2018 года используют в целевых атаках, а заметили только в прошлом году. Кибергруппа, владеющая этим зловредом (известна как Red Menshen, в CrowdStrike ее нарекли DecisiveArchitect), предположительно имеет китайские корни и выбирает мишенями телеком-провайдеров, правительственные ведомства, учебные заведения и логистические компании.

Командный трафик BPFDoor (JustForFun в версии CrowdStrike) тщательно скрывается: управление осуществляется с использованием VPS-серверов и прокси на взломанных роутерах Тайваня. При такой схеме вредонос может получать команды с любого IP-адреса, к тому же ему не нужно с этой целью открывать какие-либо порты — только сырой сокет.

Новое исследование показало, что после получения доступа к Solaris злоумышленники пытаются применить эксплойт CVE-2019-3010 — PoC-код, опубликованный три года назад. Соответствующая уязвимость привязана к компоненту XScreenSaver и позволяет рядовому юзеру повысить привилегии до root; патч вышел в октябре 2019 года.

Необходимые для эксплойта бинарники обычно загружаются через пару минут после развертывания бэкдора. Последний при исполнении перезаписывает командную строку в рабочей среде своего процесса, выбирая невинную альтернативу из десяти возможных, вшитых в код. Этот прием призван скрыть взаимодействие BPFDoor с оператором; так, при проверке состояния процессов (команда –ps) создание интерактивного шелла будет выглядеть, например, как запуск менеджера очередей Postfix.

В случае с Linux такой спуфинг спокойно проходит; в Solaris нужный механизм отсутствует, поэтому для достижения искомого эффекта DecisiveArchitect использует переменную окружения LD_PRELOAD. По данным CrowdStrike, в апреле этого года хакеры обновили свои техники и тактики и стали таким же образом прятать своего зловреда на Linux-машинах (при загрузке импланта в легитимный процесс /sbin/agetty).

Обнаружить BPFDoor в Linux нелегко: для обеспечения постоянного доступа к системе авторы атаки модифицируют доступные скрипты SysVinit — внедряют ссылку на небольшой файл сценария, который, в свою очередь, указывает на имплант. Более того, они используют разные имена файлов и пути поиска для BPFDoor и связанных с ним скриптов.

В результате простой просмотр кодов SysVinit вряд ли поможет найти бэкдор, его можно выявить, только отыскав все умышленно созданные привязки — а они в зараженных системах неодинаковы. Эксперты советуют с этой целью использовать EDR со средствами машинного обучения и функциями мониторинга админ-утилит и процессов Linux.

В отсутствие такого решения можно с помощью команды lsof поискать процессы с отрытым сырым сокетом. В стандартных установках Solaris эта утилита отсутствует, поэтому придется использовать другие команды, позволяющие получить дополнительную информацию о запущенных процессах (см. блог-запись CrowdStrike).

Исследователи также обнаружили в атаках DecisiveArchitect два скрипта, заточенных под Windows. Их назначение пока неизвестно, хотя хакеры взаимодействуют с Windows-машинами — на начальных этапах атаки. Кастомных имплантов при этом не выявлено.

Linux 7.1 может наконец сделать NTFS по-настоящему родной файловой системой

В Linux 7.1 намечается заметное обновление, которое особенно оценят те, кто живёт на два мира — Linux и Windows. В ядро уже влит новый драйвер NTFS, и это одна из самых важных, хотя и не самых громких, перемен в файловой подсистеме за последние годы. Сам Линус Торвальдс назвал это воскрешением NTFS.

Вся соль в том, что Linux наконец получает более современную встроенную поддержку NTFS — файловой системы, на которой по умолчанию живёт Windows.

До сих пор с ней всё было либо терпимо, либо просто неудобно: старый драйвер в ядре долгое время умел в основном читать NTFS-разделы, NTFS-3G работал через FUSE и проигрывал по скорости, а более новый NTFS3, хотя и был быстрее, за последние годы успел заработать репутацию решения без слишком активного развития.

Новый драйвер делает ставку не просто на поддержку NTFS, а на более нативную работу внутри самого ядра Linux. В документации ядра прямо сказано, что он обеспечивает полноценную поддержку чтения и записи, рассчитан на высокую производительность и использует современные механизмы вроде iomap и folio.

За разработкой стоит Намджэ Чон — тот же девелопер, который раньше занимался драйвером exFAT для Linux. По данным LKML, он работал над этим направлением около четырёх лет.

На бумаге всё выглядит очень бодро. В обсуждении патчей и публикациях о слиянии упоминается, что однопоточная запись стала быстрее примерно на 3–5%, многопоточная — на 35–110%, а монтирование 4-терабайтного диска ускорилось примерно в четыре раза по сравнению с NTFS3. Кроме того, новый драйвер уже проходит больше тестов xfstests, чем NTFS3: 326 против 273.

Правда, без оговорок тут не обошлось. Это всё-таки новый код, так что в первых релизах вполне возможны шероховатости, особенно в каких-то менее популярных особенностях NTFS. Да и сама NTFS остаётся файловой системой из мира Windows, так что полностью вести себя как ext4 или XFS под Linux она всё равно не начнёт. Но сам вектор выглядит приятным: в ядре Linux эту тему наконец решили делать всерьёз, а не по остаточному принципу.

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