Розбір #1

PHP2Shell: критичні діри в PHP, через які зламують сайти. Що робити власнику сайту прямо зараз

PHP2Shell — дві критичні вразливості PHP (CVE-2026-109618 і CVE-2026-109619), які дають виконати код на сервері без пароля. Хто під загрозою, до якої версії оновлюватись і як перевірити свій сайт.

Відкрити на YouTube

Коротко

  • PHP2Shell — дві критичні вразливості в самому PHP з оцінкою 9.2 з 10: CVE-2026-109618 і CVE-2026-109619.
  • Вони дозволяють виконати код на сервері без входу в систему — тобто фактично зламати сайт.
  • Виправлення вийшли 21 жовтня: PHP 8.2.35, 8.3.36, 8.4.27 і 8.5.12. Версії 8.1 і старші оновлень не отримують.
  • Атаки почалися ще до виходу патчів, тож оновлюватись треба негайно.

Якщо в тебе є сайт, інтернет-магазин чи лендинг — з великою ймовірністю він працює на PHP. На ньому тримається WordPress і величезна частина вебу. І саме в PHP 20–21 жовтня знайшли дві діри, через які сервер можна захопити, навіть не знаючи жодного пароля. Інтернет вже назвав це PHP2Shell — «від PHP до командного рядка».

Що сталося: хронологія

  • 20 жовтня. Деталі двох критичних вразливостей витекли в мережу ще до запланованого розкриття. Того ж дня команда безпеки PHP оголосила екстрений реліз, а CERT-EU порадив готуватися до негайного оновлення.
  • 21 жовтня, ще до патчів. Cloudflare повідомила, що вже бачить перші атаки, і розгорнула правила захисту для своїх клієнтів.
  • 21 жовтня, 14:00 UTC. Вийшли виправлення і технічні деталі.

Обидві вразливості мають оцінку 9.2 з 10 за шкалою CVSS v4 — це рівень «критично».

Що це за вразливості — простими словами

CVE-2026-109618. Коли PHP-у бракує пам'яті посеред обробки запиту, він зупиняється, не встигнувши все «прибрати». Потім напівготові дані сприймаються як нормальні — і через ланцюжок таких збоїв атакувальник може запустити свій код.

CVE-2026-109619. Дані одного запиту можуть «пережити» звільнення пам'яті й потрапити в наступний. Це класична помилка use-after-free: програма звертається до пам'яті, яка вже їй не належить. Результат той самий — витік даних і виконання чужого коду.

В обох випадках код запускається з правами вебсервера. Для сайту це означає: можна підмінити сторінки, вкрасти базу даних клієнтів, підсадити шкідливий код для відвідувачів.

Хто під загрозою

Вразливі всі гілки PHP, починаючи з п'ятої. За оцінками компаній з кібербезпеки, PHP так чи інакше стоїть за приблизно 70% сайтів в інтернеті — це їхня оцінка масштабу, але порядок цифр зрозумілий.

Найгірша новина для старих сайтів: PHP 8.1 і старші версії більше не отримують оновлень. Якщо твій сайт досі на 7.4 чи 8.0, латки для нього не буде — лише перехід на новішу версію.

Що робити прямо зараз

Твоя версія PHP Що робити
8.2 оновити до 8.2.35 або новішої
8.3 оновити до 8.3.36 або новішої
8.4 оновити до 8.4.27 або новішої
8.5 оновити до 8.5.12 або новішої
8.1 і старші переходити на підтримувану версію — патчів не буде

Якщо в тебе звичайний хостинг: 1. Відкрий панель хостингу і знайди розділ з версією PHP (часто він називається «Налаштування PHP» або «Версія PHP»). 2. Якщо там стара гілка — перемкни на 8.2 чи новішу, але спершу зроби резервну копію: старі плагіни можуть не дружити з новим PHP. 3. Напиши хостеру й запитай прямо: «Чи встановлені патчі PHP від 21 жовтня 2026 року?»

Якщо в тебе свій сервер: 1. Онови PHP з офіційних пакетів і переконайся, що версія справді змінилась — простий апгрейд пакетів не завжди підтягує потрібну збірку. 2. Перезапусти PHP-процеси: у випадку другої вразливості це стирає небезпечний стан у пам'яті (але патч усе одно обов'язковий). 3. Переглянь журнали з дати раніше 20 жовтня — атаки могли початися ще до публікації. 4. Якщо сервер стояв без патчів після 20 жовтня і дивиться в інтернет — заміни паролі, ключі доступу й токени.

Чого не робити

  • Не розраховуй лише на тимчасові налаштування. Розробник ядра PHP Gina Peter Banyard прямо попередила: жодні обхідні заходи не блокують атаки повністю.
  • Не думай, що оновлення WordPress вирішить проблему. Діра в самому PHP, а не в CMS.
  • Не відкладай «на вихідні». Масове сканування інтернету на вразливі сайти почалося одразу.

Вердикт Байта

Дев'ять з десяти — за масштабом і терміновістю. Це той випадок, коли п'ять хвилин у панелі хостингу сьогодні можуть зберегти тобі сайт, клієнтську базу і репутацію.

Хочеш розуміти, як ще ШІ та автоматизація змінюють безпеку? Почитай, як ШІ-агенти OpenAI вимкнули нагляд за собою.

9з 10

Вердикт Байта

Плюс: патчі вийшли швидко, а великі захисні сервіси закрили відомі атаки ще до релізу

Мінус: мільйони сайтів на старих версіях PHP не оновляться ніколи — і стануть легкою здобиччю

Часті питання

Як дізнатися, чи вразливий мій сайт?

Подивись версію PHP у панелі хостингу або попроси хостера. Безпечні версії — 8.2.35, 8.3.36, 8.4.27, 8.5.12 і новіші. Усе, що старше, зокрема будь-яка 8.1 чи 7.x, — під загрозою.

Чи стосується це сайтів на WordPress?

Так, якщо сервер працює на вразливій версії PHP. Вразливість у самому PHP, а не в WordPress чи плагінах, тому оновлення WordPress тут не допоможе — потрібне оновлення PHP.

Чи достатньо тимчасових налаштувань без оновлення?

Ні. Розробники PHP наголошують, що жодні тимчасові заходи не блокують атаки повністю — єдиний надійний захист — офіційні патчі.

Обговорення

Обговорюємо новини в Telegram — заходь, там Байт відповідає на питання.

Обговорити в Telegram