OrBit: новый скрытный Linux-бэкдор с необычным угоном потока выполнения

OrBit: новый скрытный Linux-бэкдор с необычным угоном потока выполнения

OrBit: новый скрытный Linux-бэкдор с необычным угоном потока выполнения

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

Зловред с кодовым именем OrBit устанавливается в систему как временный либо постоянный имплант. Стойкость ему придает возможность перехвата ключевых функций; основными задачами новобранца являются кража учетных данных, регистрация tty-команд и обеспечение удаленного доступа к зараженной машине по SSH.

Атака начинается с ELF-файла — дроппера с полезной нагрузкой (libdl.so), которая извлекается и добавляется к библиотекам общего пользования, загружаемым линкером. (Уровень детектирования на VirusTotal в обоих случаях 11/60, по состоянию на 7 июля.)

Вредонос умеет перехватывать функции трех библиотек — libc, libcap и PAM (подключаемый модуль аутентификации). Загрузка вредоносного разделяемого объекта в память при этом может осуществляться двумя способами: через добавление его в конфигурационный файл, используемый загрузчиком, или патчинг самого бинарника.

Для кражи данных вредонос ставит хуки на функции чтения/записи и регистрирует все, что записывается в рамках запущенных процессов, в том числе команды bash и sh. Результаты сохраняются во временных файлах, которые OrBit создает в зараженной системе, притом в гораздо большем количестве, чем аналогичные зловреды.

Перехват функций — хорошо известный прием бесфайловых вредоносных программ, но для подмены разделяемого объекта в памяти они обычно модифицируют переменную окружения LD_PRELOAD. Такую технику используют, например, Linux-бэкдоры HiddenWasp, BPFDoor, Symbiote. Новобранца OrBit отличает от них новаторский способ хукинга — по словам Intezer, почти «непроницаемый» (hermetic), который позволяет зловреду закрепиться в системе и уклоняться от обнаружения, параллельно воруя информацию и открывая SSH-дверь.

Критическая уязвимость в 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