Недавно исследователи из компании Aqua Security обнаружили кампанию по атаке уязвимых Linux-серверов с помощью скрытого вредоносного ПО под названием perfctl. Главная цель этой программы – использовать ресурсы скомпрометированных серверов для скрытого майнинга криптовалюты и взлома прокси.
Perfctl отличается высокой степенью скрытности и устойчивости благодаря применению ряда продвинутых методов. Как отмечают исследователи Ассаф Мораг и Идан Ревиво, при входе нового пользователя на сервер вредоносное ПО прекращает “шумные” действия и переходит в спящий режим до тех пор, пока сервер не станет неактивным. После запуска оно удаляет свой бинарный файл и продолжает работать в фоновом режиме как системный сервис.
Некоторые аспекты этой атаки ранее уже были выявлены компанией Cado Security, которая обнаружила кампанию по атаке на открытые в интернете экземпляры Selenium Grid для целей майнинга и прокси-угонов.
Особенность perfctl заключается в использовании уязвимости в Polkit ( CVE-2021-4043,также известной как PwnKit), что позволяет повысить права до root и внедрить майнер под названием perfcc. Имя “perfctl” выбрано намеренно, чтобы маскироваться под легитимные системные процессы, так как “perf” ассоциируется с инструментом мониторинга производительности Linux, а “ctl” часто используется в различных командных утилитах.
Атака начинается с взлома Linux-сервера через уязвимый экземпляр Apache RocketMQ, куда загружается вредоносный файл под именем “httpd”. После запуска он копирует себя в новую директорию “/tmp”, удаляет первоначальный бинарный файл и продолжает свою деятельность в новой локации.
Помимо этого, perfctl маскируется под безобидные процессы, создаёт руткит для обхода защитных механизмов и внедряет полезную нагрузку майнера. В ряде случаев происходит загрузка и исполнение ПО для прокси-взлома с удалённого сервера.
Для защиты от perfctl рекомендуется своевременно обновлять системы и программное обеспечение, ограничивать выполнение файлов, отключать неиспользуемые сервисы, применять сетевую сегментацию и использовать модели управления доступом на основе ролей (RBAC) для ограничения доступа к критическим файлам.
Исследователи подчёркивают, что наличие perfctl можно выявить по неожиданным всплескам использования CPU или замедлению работы системы, что особенно характерно при внедрении руткитов и активном майнинге в моменты простоя сервера.