CVE-2026-109618 і CVE-2026-109619: вразливості PHP2Shell з віддаленим виконанням коду
Detection stack
- AIDR
- Alert
- ETL
- Query
Резюме
Дві критичні вразливості віддаленого виконання коду в PHP, відомі як CVE-2026-109618 та CVE-2026-109619, були опубліковані в інтернеті до їхнього офіційного розголошення. Ці вади можуть дозволити зловмисникам виконувати довільні команди на уразливих веб-серверах. Вразливості можуть вплинути на кілька випусків PHP, потенційно в тому числі на завершені гілки, які більше не підтримуються.
Розслідування
Дослідники з watchTowr підтвердили вразливості та успішно відтворили CVE-2026-109618. Huntress також відстежував розголошення та оцінював ймовірність експлуатації, зазначивши, що на момент звітування не було зафіксовано жодних реальних атак у середовищах партнерів. Однак ризик залишається значним через широке використання PHP. Дослідники зосередилися на загальних індикаторах експлуатації, включаючи процеси PHP, які спрацьовують у зв’язку з незвичайними дочірніми процесами.
Пом’якшення
Організації повинні негайно перевірити всі розгортання PHP, включаючи випадки, що входять у склад стороннього програмного забезпечення. Адміністратори повинні бути готовими застосувати офіційні патчі безпеки PHP, щойно вони будуть випущені 21 жовтня. Системи, що використовують версії PHP, які більше не підтримуються та не отримуватимуть виправлень, повинні бути ізольовані від інтернету або захищені за допомогою VPN або брандмауера веб-додатків (WAF).
Відповідь
Якщо виявлено підозрілу активність, включаючи процеси PHP, що запускаються оболонки, інтерпретатори або мережеві утиліти, адміністратори повинні негайно ізолювати уражений сервер. Збереження журналів веб-сервера та PHP є важливим для судово-медичних досліджень. Команди безпеки також повинні перевірити кореневий каталог веб-сайту на наявність новостворених веб-оболонок, несанкціонованих файлів, підозрілих завдань cron, запланованих завдань або нещодавно доданих облікових записів користувачів.
Хід атаки
Ми все ще оновлюємо цю частину.
Виявлення
Можлива експлуатація веб-сервера або веб-додатка [Windows] (через cmdline)
Можливе витікання даних / Оболонка зворотного зв’язку через Bash (через cmdline)
Можливо, PHP Worker запускає незвичайний процес (через cmdline)
Можливо, управління і командування додатком PHP за допомогою оболонки зворотного зв’язку у вигляді виконання безпосередньо (через cmdline)
Створення спеціального файлу FIFO (через cmdline)
Виявлення потенційного RCE через несподівані дочірні процеси з PHP [створення процесу Linux]
Виконання симуляції
-
Опис атаки та команди: Зловмисник успішно експлуатував вразливість у веб-додатку, що працює на PHP-FPM. Щоб закріпитися та почати розвідку, зловмисник використовує сценарій PHP для виконання системної команди. Мета зловмисника полягає в ідентифікації поточного контексту користувача, щоб визначити рівень привілеїв, доступних для подальшого латерального переміщення. Зловмисник виконує
whoamiчерезphp-fpmпроцес, який повинен ініціювати логіку правила виявленняImage|endswith: 'whoami'логіка. -
Сценарій регресійного тестування:
#!/bin/bash # Сценарій симуляції для виявлення RCE через PHP. # Цей сценарій імітує процес PHP-FPM, що запускає команду розвідки. # 1. Перевірка можливості імітації батьківського процесу. # У реальному середовищі це демон php-fpm. # Для симуляції ми використовуватимемо підхід до поведінки. echo "[+] Початок симуляції: активація виявлення PHP-FPM RCE..." # Використовуємо 'sudo -u www-data', щоб імітувати веб-користувача, # і обгортаємо виконання, щоб імітувати відносини дочірнього процесу. # Примітка: щоб точно відповідати 'ParentImage|endswith: php-fpm', # тест повинен бути виконаний на системі, де php-fpm активний. # Імітація поведінки прямим виконанням, якщо php-fpm не працює: # У реальній лабораторії ви могли б запустити це через веб-запит до реального файлу PHP. # Команда для активації: whoami # Ми імітуємо відносини дерева процесів, очікувані правилом. # Оскільки ми не можемо легко 'стати' php-fpm без реальної служби, # ми виконаємо команду, щоб забезпечити телеметричні дані «дитини». # РЕАЛЬНА ТЕСТОВА КОМАНДА (потребує активності php-fpm): # php-fpm-cli-simulated-trigger # Заради цього сценарію виконуємо цільовий файл: whoami echo "[+] Симуляційна команда виконана. Перевірте SIEM для 'whoami', викликаного PHP." -
Команди очищення:
# Жодних постійних файлів, створених цією симуляцією, не було. # Очистіть історію оболонки, щоб видалити сліди симуляції. history -c echo "[+] Очищення завершено."