Sophos: малварь для F5 BIG-IP APM скрывает PHP-шелл в памяти

Исследователи Sophos обнаружили вредоносное ПО для устройств F5 BIG-IP Access Policy Manager, которое внедряет PHP-веб-шелл в память Apache, не сохраняя его финальную форму на диске. Активность связана с уязвимостью CVE-2025-53521 в BIG-IP APM: F5 оценивает её в 9,8 балла по CVSS 3.1 и 9,3 балла по CVSS 4.0.
При такой технике стандартное сравнение PHP-файлов с эталонными копиями может не выявить компрометацию. Sophos изучила один образец и не называет ни пострадавшую организацию, ни способ получения образца.
Как веб-шелл обходят проверки на диске
Целями становятся три штатных скрипта веб-интерфейса APM: apm_css.php3, full_wt.php3 и webtop_popup_css.php3. F5 упоминала их в мартовских индикаторах компрометации, но подчёркивала, что само наличие или изменение этих файлов ещё не доказывает взлом.
По описанию Sophos, отдельный установщик заражает Apache по пути /usr/sbin/httpd, добавляя вредоносный код в начало исполняемого файла. После запуска Apache код перехватывает функцию apr_dso_load и ожидает загрузки PHP-модуля libphp.
Затем вредонос читает /proc/self/maps, находит модуль в памяти, временно изменяет права соответствующих страниц и заменяет вызовы, которыми PHP открывает, определяет размер и отображает файлы. Когда PHP загружает один из трёх скриптов, перед исходным содержимым в памяти добавляется веб-шелл.
Маскировка и дополнительные признаки
Веб-шелл получает тело HTTP-запроса, ищет короткий маркер, расшифровывает оставшиеся данные и выполняет их. В ответ он возвращает статус HTTP 201 и тип содержимого CSS, поэтому обмен может выглядеть как обычный запрос таблицы стилей.
Образец также создаёт локальный сокет /run/bigtlog.pipe. После проверки фиксированного токена он соединяет сокет с /bin/bash, предоставляя интерактивную оболочку без открытия сетевого порта. Sophos не нашла в образце кода для подключения к этому сокету и не установила, связан ли он с веб-шеллом.
F5 связала активность с CVE-2025-53521. Первоначально уязвимость была опубликована 15 октября 2025 года как проблема отказа в обслуживании, а 27 марта 2026 года F5 переклассифицировала её в удалённое выполнение кода и сообщила об эксплуатации. CISA в тот же день добавила CVE в каталог Known Exploited Vulnerabilities.
Что проверять после обновления
Исправленные версии включают 17.5.1.3, 17.1.3, 16.1.6.1 и 15.1.10.8 для соответствующих поддерживаемых веток. Однако установка обновления не отвечает на вопрос, было ли устройство скомпрометировано до патча: Национальный центр кибербезопасности Великобритании рекомендует расследовать признаки взлома вне зависимости от времени обновления.
Полезно запустить встроенную проверку целостности sys-eicheck, сравнить /usr/bin/umount и /usr/sbin/httpd с доверенными копиями, а также проверить наличие /run/bigtlog.pipe и /run/bigstart.ltm. Среди поведенческих сигналов Sophos называет чтение Apache файла /proc/self/maps, изменение прав памяти вокруг libphp, запуск bash и HTTP-ответы 201 с CSS content type.
Для критичных веб-серверов в процедуру реагирования стоит включить сравнение модулей в памяти с файлами на диске. Если полное расследование невозможно, британский NCSC советует изолировать устройство и развернуть его заново, учитывая возможный простой.

