Вредоносные PHP-пакеты Packagist
Специалисты по кибербезопасности обнаружили на Packagist вредоносные PHP-пакеты, которые имитируют легитимные вспомогательные библиотеки Laravel, скрытно развертывая кроссплатформенный троян удаленного доступа (RAT). Вредоносное ПО беспрепятственно работает в средах Windows, macOS и Linux, создавая значительный риск для затронутых систем.
В число выявленных пакетов входят:
- nhattuanbl/lara-helper (37 загрузок)
- nhattuanbl/simple-queue (29 загрузок)
- nhattuanbl/lara-swagger (49 загрузок)
Хотя пакет nhattuanbl/lara-swagger напрямую не содержит вредоносного кода, он указывает nhattuanbl/lara-helper в качестве зависимости Composer, что приводит к установке встроенного RAT-программы. Несмотря на публичное раскрытие информации, эти пакеты остаются доступными в репозитории и должны быть немедленно удалены из любой затронутой среды.
Оглавление
Тактика сокрытия злонамеренных намерений
Детальный анализ кода показывает, что как lara-helper, так и simple-queue содержат файл src/helper.php, специально разработанный для обхода обнаружения. Вредоносная программа использует сложные стратегии обфускации, включая манипулирование потоком управления, закодированные доменные имена и командные строки, скрытые пути к файлам, а также случайные идентификаторы переменных и функций.
Эти методы значительно усложняют статический анализ и помогают вредоносной программе обходить традиционные инструменты проверки кода и автоматизированного сканирования безопасности.
Инфраструктура управления и контроля обеспечивает полный захват хоста.
После запуска RAT устанавливает соединение с сервером управления и контроля (C2) по адресу helper.leuleu.net на порту 2096. Он передает данные системной разведки и переходит в состояние постоянного прослушивания, ожидая дальнейших инструкций. Связь осуществляется по протоколу TCP с использованием функции stream_socket_client() из PHP.
Бэкдор поддерживает широкий спектр команд, отдаваемых оператором, обеспечивая полный контроль над системой. Возможности включают в себя:
- Автоматическая отправка сигналов о сердцебиении каждые 60 секунд посредством пинга.
- Передача данных профилирования системы через info.
- Выполнение команд оболочки (cmd).
- Выполнение команд PowerShell (powershell).
- Выполнение команды в фоновом режиме (запуск).
- Скриншот, полученный с помощью функции imagegrabscreen().
- Эксфильтрация файлов (скачивание).
- Произвольная загрузка файлов с предоставлением всем пользователям прав на чтение, запись и выполнение (загрузка).
- Завершение соединения и выход (остановка).
Для обеспечения максимальной надежности RAT проверяет конфигурацию `disable_functions` в PHP и выбирает первый доступный метод выполнения из следующих: `popen`, `proc_open`, `exec`, `shell_exec`, `system` или `passthru`. Такой адаптивный подход позволяет обходить распространенные меры защиты PHP.
Постоянное использование механизма повторного соединения повышает риск.
Несмотря на то, что обнаруженный сервер управления и контроля в данный момент не отвечает, вредоносная программа запрограммирована на повторные попытки подключения каждые 15 секунд в непрерывном цикле. Этот механизм обеспечения устойчивости гарантирует, что скомпрометированные системы останутся уязвимыми, если злоумышленник восстановит доступность сервера.
Любое приложение Laravel, в котором установлены lara-helper или simple-queue, фактически работает со встроенным RAT (удалённым доступом к командной оболочке). Злоумышленник получает полный удалённый доступ к командной оболочке, возможность читать и изменять произвольные файлы, а также постоянный доступ к системным данным каждого заражённого хоста.
Контекст выполнения усиливает эффект
Активация происходит автоматически при загрузке приложения через поставщика услуг или посредством автозагрузки классов в случае простой очереди. В результате RAT выполняется в том же процессе, что и веб-приложение, наследуя идентичные права доступа к файловой системе и переменные среды.
Этот контекст выполнения предоставляет злоумышленнику доступ к конфиденциальным данным, таким как учетные данные базы данных, ключи API и содержимое файла .env. Таким образом, компрометация выходит за рамки контроля на системном уровне и приводит к полной утечке секретов приложения и доступу к инфраструктуре.
Стратегия повышения доверия за счет качественной упаковки.
Дальнейшее расследование показало, что тот же издатель выпустил дополнительные пакеты — nhattuanbl/lara-media, nhattuanbl/snooze и nhattuanbl/syslog, — которые не содержат вредоносного кода. По всей видимости, они служат для повышения репутации и укрепления доверия, а также для стимулирования распространения вредоносных пакетов.
Меры немедленного смягчения последствий и реагирования
Организации, установившие какой-либо из вредоносных пакетов, должны исходить из предположения о компрометации. Необходимые ответные действия включают немедленное удаление затронутых библиотек, смену всех учетных данных, доступных из среды приложений, и тщательный аудит исходящего сетевого трафика на предмет попыток подключения к выявленной инфраструктуре управления и контроля.
Неспособность принять решительные меры может сделать системы уязвимыми для повторного доступа злоумышленников, если инфраструктура управления и контроля снова начнет функционировать.