21 жовтня 2026 року було опубліковано подробиці двох критичних вразливостей PHP — CVE-2026-109618 та CVE-2026-109619, відомих під спільною назвою PHP2Shell. Обидві отримали оцінку 9,2 із 10 за шкалою CVSS v4.0. За певних умов вони дозволяють зловмисникам віддалено виконувати код на сервері без авторизації.
Проблеми пов’язані з обробкою пам’яті в самому PHP — середовищі, на якому працюють WordPress, Drupal, Joomla та багато інших систем керування сайтами й вебзастосунків. Тому навіть актуальна CMS з оновленими плагінами може залишатися під загрозою, якщо сервер використовує PHP без відповідних виправлень.
Успішна експлуатація вразливостей може призвести до викрадення даних, зміни файлів сайту або порушення його роботи. Можливості зловмисника залежать від конфігурації сервера та прав процесу, який виконує PHP.
Детальний опис вразливостей, перелік уражених версій PHP та рекомендації щодо захисту опубліковані в офіційному повідомленні CERT-EU.
Щойно стало відомо про загрозу, ми обмежили роботу частини функціоналу, щоб зменшити ризики для клієнтів. Масового вимкнення сайтів не застосовували. Після появи виправлених пакетів ми встановили необхідні оновлення.
Наразі на серверах віртуального хостингу Cityhost встановлено виправлення для всіх доступних версій PHP — від 5.2 до 8.5. Клієнтам віртуального хостингу не потрібно самостійно встановлювати ці серверні оновлення.
На наших серверах використовується CloudLinux, який переносить виправлення безпеки до наявних версій PHP. Завдяки цьому можна усунути вразливості без примусового переведення сайтів на іншу гілку інтерпретатора.
Тому номер PHP у панелі керування може відрізнятися від номера виправленого релізу, зазначеного на сайті PHP. Це не означає, що виправлення відсутні: вони містяться в оновленому пакеті CloudLinux, хоча основний номер версії залишається попереднім.
ЗВЕРНІТЬ УВАГУ! Власникам VPS/VDS і виділених серверів необхідно подбати про оновлення самостійно або доручити його адміністратору. Оновлення серверів віртуального хостингу не поширюється на ці послуги. Нижче наводимо порядок дій для Linux-серверів.
Що потрібно зробити власникам VPS/VDS і виділених серверів
На VPS/VDS і виділених серверах оновлення програмного забезпечення виконує власник або адміністратор сервера. Якщо ваші сайти використовують PHP, необхідно перевірити наявність виправлень для CVE-2026-109618 та CVE-2026-109619, встановити їх і перезапустити відповідні служби.
Нижче наведено порядок дій для Linux-серверів, на яких PHP встановлений через системний менеджер пакетів. Для PHP у контейнерах, установленого вручну або через окремі репозиторії панелі керування, потрібно додатково перевірити процедуру оновлення його постачальника.

1. Створіть резервну копію
Перед оновленням збережіть резервні копії файлів сайтів, баз даних і конфігурацій сервера. Переконайтеся, що копіювання завершилося без помилок, а резервні копії доступні для відновлення.
2. Підключіться до сервера через SSH
Відкрийте термінал і виконайте:
ssh USER@SERVER_IP
Замість USER вкажіть свій логін, а замість SERVER_IP — IP-адресу сервера. Для підключення через нестандартний порт:
ssh -p PORT USER@SERVER_IP
Замініть PORT номером SSH-порту.
Для встановлення оновлень потрібні права root або sudo. Якщо ви працюєте під root, префікс sudo в наступних командах можна не додавати.
3. Перевірте операційну систему та версію PHP
Щоб визначити дистрибутив Linux, виконайте:
cat /etc/os-release
Поточну консольну версію PHP можна перевірити командою:
php -v
Зверніть увагу: PHP у консолі та PHP, який обслуговує сайт, можуть відрізнятися. Якщо на сервері встановлено кілька версій, перевірити потрібно всі, що використовуються сайтами.
4. Встановіть доступні оновлення
Виберіть команди відповідно до операційної системи.
Для Ubuntu або Debian спочатку оновіть інформацію про доступні пакети:
sudo apt update
Потім встановіть оновлення:
sudo apt upgrade
Для AlmaLinux, Rocky Linux або RHEL:
sudo dnf upgrade --refresh
Ці команди оновлюють не лише PHP, а й інші системні пакети. Перегляньте запропонований список і підтвердьте встановлення. Дочекайтеся завершення операції. Якщо з’явилися помилки репозиторіїв, залежностей або встановлення пакетів, спочатку потрібно усунути їх.
5. Перезавантажте сервер
Після успішного встановлення оновлень необхідно перезапустити процеси, які використовують PHP. Простий спосіб охопити всі системні служби — перезавантажити сервер:
sudo reboot
SSH-з’єднання закриється, а сайти будуть тимчасово недоступні. Дочекайтеся запуску сервера та підключіться повторно.
Замість повного перезавантаження адміністратор може перезапустити відповідні PHP-FPM, Apache або інші служби — залежно від конфігурації сервера.
6. Перевірте встановлені пакети та роботу сайтів
Для Ubuntu/Debian перегляньте повні версії встановлених PHP-пакетів:
dpkg -l | grep -E '^ii[[:space:]]+(php|libapache2-mod-php)'
Для AlmaLinux/Rocky Linux/RHEL:
rpm -qa | grep -E '^php'
Зіставте отримані версії з повідомленням про виправлення від постачальника пакетів. Відсутність доступних оновлень сама по собі не підтверджує усунення вразливостей.
Дистрибутиви Linux можуть додавати виправлення безпеки до наявних версій PHP. Тому основний номер інтерпретатора може залишитися попереднім — значення має повна версія пакета та підтвердження наявності патчів.
Після оновлення відкрийте сайти й перевірте їхні основні функції: вхід до адміністративної частини, форми, завантаження файлів, роботу з базою даних та оформлення замовлень.
Якщо виправлення для вашої версії PHP недоступне, зверніться до адміністратора сервера, щоб організувати перехід на підтримувану версію або отримати виправлений пакет від постачальника. Не відкладайте усунення цих вразливостей.
Зверніть увагу: інструкція містить загальний порядок оновлення. Команди, назви пакетів і служб можуть відрізнятися залежно від операційної системи, способу встановлення PHP та конфігурації сервера.



