← Усі статті Блог

Вразливості сайтів за травень 2026: шар за шаром

Коротко: візьмімо один звичайний місяць, травень 2026 року, і пройдімо знизу вгору по всіх шарах, з яких зібраний будь-який сайт. CMS, фреймворк, мова, рушій магазину, вебсервер, панель керування, пакети, які ставить ваш розробник: за цей один місяць у кожному з цих шарів знайшлася серйозна діра. Частина — критичні й без жодного входу; три вже атакували. І справа не у WordPress: діра може опинитися в будь-якому з цих шарів, а «у мене не WordPress» від неї не рятує. Нижче — весь місяць, шар за шаром, і кожне твердження звірене з офіційним записом про діру.

Ми тримаємо хостинг з обслуговуванням і стежимо за такими зведеннями по всіх платформах, які хостимо. Тож це повна картина одного місяця за всіма стеками — зібрана з NVD, бюлетенів самих розробників і каталогу експлуатованих вразливостей CISA, а не із заголовків.

Місяць одним поглядом

ШарДе була діраCVEНебезпекаЩо дозволяєАтакували?
CMS — DrupalЯдро, на PostgreSQLCVE-2026-90829,8Анонімна SQL-інʼєкція у вашу базутак, у реальних атаках
CMS — WordPressПлагін Burst Statistics (200 000+)CVE-2026-81819,8Обхід входу → права адміністраторане підтверджено
CMS — JoomlaЯдро, двофакторна автентифікаціяCVE-2026-488967,5Обхід двофакторної автентифікації, без пароляне підтверджено
Фреймворк — Next.jsНа своєму серверіCVE-2026-445788,6SSRF: сервер тягне внутрішні ресурсине підтверджено
Фреймворк — Next.jsПеревірка прав (прошарок)CVE-2026-445757,5Захищені сторінки в обхід перевіркине підтверджено
Мова — PHPРозширення SOAPCVE-2026-67229,8Доступ до звільненої памʼяті → виконання кодуне підтверджено
Магазин — PrestaShopАдмінка, через форму контактівCVE-2026-442129,3Збережена XSS без входу → захоплення адмінкине підтверджено
Магазин — MagentoAdobe Commerce (APSB26-49, 15 виправлень)CVE-2026-346868,7Збережена XSS → код в адмінці; плюс запис без входуне підтверджено
Вебсервер — nginxМодуль перезапису (rewrite)CVE-2026-429458,1Падіння без входу, можливо виконання кодуексплойт опубліковано
Вебсервер — Apache/nginxHTTP/2 «бомба»CVE-2026-499757,5Відмова в обслуговуванні (памʼять кінчається)не підтверджено
Панель — cPanelПлагін LiteSpeed для cPanelCVE-2026-481729,8Підвищення прав (можливо, до root)так, у реальних атаках
Ланцюг — npmПакети @tanstack/*розбір TanStack84 заражені версії, крадіжка доступівтак, жива атака
Ланцюг — npm45 шкідливих пакетівMicrosoft SecurityРозвідка по машинах і секретах CIтак, жива атака

Два пояснення. Небезпека — це галузева оцінка від 0 до 10 (шкала CVSS); 9,8 — майже межа, гірше лише рівно десятка. «Без входу» означає, що атакувальнику не потрібні ні обліковий запис, ні пароль, і не треба, щоб жертва на щось натиснула, — він просто надсилає запит. Тепер за шарами.

Системи керування сайтом: WordPress, Drupal, Joomla

Drupal — діру вже використовували в атаках. 20 травня в ядрі Drupal вийшло критичне виправлення, CVE-2026-9082 (небезпека 9,8): анонімна SQL-інʼєкція на сайтах із PostgreSQL — команди надсилають прямо у вашу базу через звичайний запит. Американське агентство CISA внесло її до каталогу експлуатованих вразливостей за два дні — тобто її вже застосовували в реальних атаках, поки більшість власників навіть не прочитали зведення.

WordPress — це ціла екосистема: сотні плагінів, і в травні серйозні діри виринали одна за одною. Ось критичні й високонебезпечні діри в плагінах за місяць, кожною можна скористатися без входу:

Плагін (що робить)Активних сайтівДіраНебезпека
Burst Statistics — приватна аналітика200 000+Обхід входу → права адміністратора (CVE-2026-8181)9,8
Kirki — конструктор тем (customizer)500 000+Захоплення облікового запису через зламане скидання пароля (CVE-2026-8206)9,8
WP Maps Pro — картикомерційний плагінСтворює підроблений обліковий запис адміністратора → повне захоплення (CVE-2026-8732)9,8
Avada Builder — конструктор темблизько 1 000 000SQL-інʼєкція читає прямо з вашої бази (CVE-2026-4798)7,5
Form Maker by 10Web — формишироко використовуєтьсяSQL-інʼєкція читає прямо з вашої бази (CVE-2026-3359)7,5

Найіронічніша — Burst Statistics: плагін приватної аналітики, який дозволяв сторонньому діяти від імені адміна. (Запис по Kirki NVD доповнив 2 червня, але розкриття й патч були в травні.) Закономірність та сама, що в нашому окремому розборі по WordPress: відоме ядро в порядку, небезпечні — десяток прикручених до нього плагінів. І ці пʼять — лише критичні й високі; Patchstack і Wordfence щомісяця ведуть ще десятки менших зведень.

Joomla випустила 26 травня відразу десять зведень, усі закриті в 5.4.6 / 6.1.1. Серйозні: підвищення прав (звичайний користувач доростає до адміністратора) через пакетне завдання com_users (CVE-2026-48898, єдина High), ще два підвищення прав / обходи доступу (CVE-2026-48904, CVE-2026-48899) і два різні обходи двофакторної автентифікації (2FA) (CVE-2026-48896, CVE-2026-48897) — саме той захист, який ви ввімкнули, щоб спати спокійно. Решта слабші: дві XSS (міжсайтовий скриптинг — чужий скрипт виконується в браузері вашого відвідувача) у фільтрах (CVE-2026-48905, CVE-2026-48903), зниження захисту посилання скидання пароля (CVE-2026-48902), діра в ключі кешу (CVE-2026-48901) і обхід доступу в планувальнику (CVE-2026-48900).

Фреймворк і мова: Next.js, React, PHP

У «сучасного» стека, який обирають, щоб піти від каші з плагінами, місяць вийшов щільнішим, ніж у WordPress. 7 травня Vercel випустив один реліз безпеки Next.js відразу на 13 вразливостей (плюс виправлення в React), усі закриті в 15.5.18 / 16.2.6. Що важливо власнику сайту: SSRF (сервер обманом змушують слати запити за зловмисника) — вона змушує розгорнутий на своєму сервері Next.js тягнути внутрішні ресурси, до яких ззовні доступу бути не повинно (CVE-2026-44578, 8,6); обхід перевірки прав — спеціально зібрані запити доходять до захищених сторінок повз вашу перевірку входу (CVE-2026-44575, 7,5); ще два обходи захисного прошарку між запитом і застосунком (CVE-2026-44574, CVE-2026-44573); і відмова в обслуговуванні через вичерпання зʼєднань. Решта з тринадцяти дрібніші, але з того самого набору: отруєння кешу (відвідувачу підсовують підмінену збережену копію сторінки, ×2), відмова в обслуговуванні в обробнику картинок і міжсайтовий скриптинг (×2), плюс відмова в обслуговуванні в React Server Components — серверній частині React (CVE-2026-23870). Сучасна платформа — а урок той самий: код є код, і діри в ньому бувають.

А ось PHP — мова, на якій працює сайт, — підніс сюрприз. У релізі 7 травня (8.2.31 / 8.3.31 / 8.4.21 / 8.5.6) закрили критичну (9,8) use-after-free (помилка роботи з памʼяттю: програма звертається до памʼяті, яку вже звільнила) у розширенні SOAP — CVE-2026-6722: хто керує тілом SOAP-запиту, може виконати код на сервері, де відкрито SOAP-вебсервіс. Тим самим релізом виправили XSS на службовій сторінці статусу PHP-FPM (CVE-2026-6735, 6,1) і ще кілька менш небезпечних дір у SOAP, DOM і розбірнику HTML. Навіть у мови, на якій працює сайт, виходять критичні діри, виправлення яких треба реально ставити.

Інтернет-магазини: PrestaShop, Magento

Магазини — це де гроші, тому саме там і атакувальники. PrestaShop розкрив неприємнішу діру 14 травня: CVE-2026-44212 з оцінкою 9,3. Атакувальник без входу надсилає шкідливий лист через публічну форму «Контакти»; скрипт спрацьовує пізніше, уже всередині привілейованої адмінки, коли ваш співробітник відкриває це повідомлення, — прямий шлях до перехоплення сесії і повного захоплення адмінки. Виправлення: 8.2.6 / 9.1.1.

Magento / Adobe Commerce 12 травня випустив бюлетень APSB26-49 — 15 виправлень. Найнебезпечніша — збережена XSS на 8,7 із 10, яка може виконати код в адмінці (CVE-2026-34686, потрібен низькопривілейований обліковий запис). Ще дві — без входу обходять перевірку прав і дають доступ на запис (CVE-2026-34645, CVE-2026-34646, 7,5); а в магазині «доступ на запис, якого бути не повинно» — це і є спосіб підсадити перехоплювач карток або підроблену сторінку оплати. Ще пʼять поспіль (з CVE-2026-34648 по CVE-2026-34652, усі на 7,5) — відмова в обслуговуванні через вичерпання ресурсів; решта — запис файлів і обхід захисту. Adobe пише, що експлуатації в реальних атаках поки не бачив.

Самі вебсервери: nginx, Apache

Це шар, про який власник сайту не думає ніколи, бо до його сайту він стосунку не має, — це програма, що віддає всі сайти на машині. 13 травня в nginx розкрили CVE-2026-42945 (8,1; за новою шкалою CVSS 4.0 — 9,2): переповнення буфера в памʼяті (програма пише дані за межі відведеної їй ділянки) в модулі перезапису, яке без входу можна викликати спеціальними запитами, поваливши робочі процеси, а за вдалих умов — і виконати код. Готовий експлойт зʼявився публічно за лічені дні.

І nginx, і Apache httpd — серед серверів, по яких бʼє «HTTP/2-бомба», CVE-2026-49975 (7,5), розкрита в самому кінці травня: один шкідливий запит вичерпує памʼять сервера і кладе його. (NVD доповнив запис 8 червня; узгоджене розкриття було 27 травня.)

Панель керування: cPanel — аж до root

Чотири шари вище були в сайті. Цей — у панелі керування, тій самій адмінпанелі, яку ставлять на сервер, щоб ним було зручніше керувати. Плагін LiteSpeed для cPanel до версії 2.4.7 ніс діру підвищення прав з оцінкою 9,8, і запис NVD каже прямо: у травні 2026 року її застосовували в реальних атаках, з підвищенням «можливо, аж до root». Root — це повний контроль над усім сервером: кожним сайтом, кожною базою, кожною копією. Не один сайт — усі відразу. Це одна з причин, чому наш стек не використовує cPanel: кожна прикручена панель — це зайвий код, зайві входи, зайва поверхня атаки, і коли вона ламається, падає не сторінка, а вся машина.

Ланцюг постачання: пакети, з яких зібраний ваш сайт

Нарешті, шар, який узагалі не діра у вашому коді, — це отрута в коді, який ви встановлюєте (готові пакети, які розробник підключає до сайту). Травень для нього видався жорстоким. 11 травня атакувальники за шість хвилин опублікували 84 заражені версії в 42 пакетах @tanstack/* у реєстрі npm; код крав доступи (AWS, GCP, Kubernetes, Vault, GitHub, npm, SSH) і переопубліковував сам себе через пакети інших розробників — спіймали приблизно за 20 хвилин, за власним розбором TanStack. У кінці місяця (28–29 травня) Microsoft виявив 45 шкідливих пакетів npm із трьох акаунтів, які тихо знімали відбиток з машин розробників під майбутню атаку. Не оминуло й світ PHP: у кінці травня атакувальники переписали git-мітки пакетів laravel-lang (Composer), щоб красти секрети збірки (про це повідомила StepSecurity). Якщо ваш сайт зібраний на Node або Laravel, заражений пакет — це діра, яка входить через ваші ж парадні двері.

Що зрештою атакували

Три діри місяця підтверджено використовували по-справжньому, а не в теорії:

  • Drupal (CVE-2026-9082) — у каталозі експлуатованих у CISA за два дні після патча.
  • cPanel / LiteSpeed (CVE-2026-48172) — NVD пише, що її застосовували в реальних атаках у травні.
  • Хвилі в npm — живі атаки, націлені на доступи.

У діри в nginx за лічені дні зʼявився публічний експлойт — а це крок саме перед масовим скануванням. Це і є нинішній ритм: виправлення виходить, відкрите зведення показує атакувальникам, куди дивитися, а боти прочісують інтернет у пошуках тих, хто не оновився. Небезпека живе в розриві між «виправлення вийшло» і «виправлення стоїть на вашому сайті».

Що спільного: річ ніколи не в одному шарі, на який грішиш

Поверніться до таблиці. CMS, фреймворк, мова, магазин, вебсервер, панель керування, реєстр пакетів — сім зовсім різних шарів, один місяць, і в кожному знайшлося щось серйозне. Діра ніколи не опиняється в тому відомому ядрі, за яке ви переживаєте, — вона в плагіні, у режимі свого сервера, у драйвері бази, у двофакторній автентифікації, в одній перевірці прав, у модулі перезапису, у панелі керування, у пакеті, який ви не писали. І «сучасність» не звільняє: навіть у Astro — статичного по суті фреймворку, який обирають заради безпеки, — була своя критична діра ще на початку 2026 року (CVE-2026-33768, 9,1). Немає такої платформи, яка б вас від цього звільняла. «Ми не на WordPress» не дає нічого, якщо за рештою шести шарів ніхто не стежить.

Що це означає, якщо у вас сайт, а не сервер

  • Безпечного стека немає — є той, за яким стежать. За кожним шаром вище потрібен хтось, хто відстежує його зведення з безпеки. Питання не в тому, яка технологія; питання в тому, чи дивиться хтось одразу за всіма.
  • Менше деталей — менше дверей. Кожен плагін, пакет, доповнення і панель керування — це ще код, який може видати діру на 9,8. Історія з cPanel саме про це: надбудови заради зручності — це теж поверхня атаки.
  • Оновлювати того ж тижня, а не того ж кварталу. Для критичної діри без входу «руки дійдуть пізніше» програє ботам, яким вистачає днів.
  • Резервні копії, які справді розгортаються, — і окремо від сервера. Коли дірою все ж скористаються, перевірена копія осторонь — це різниця між зіпсованим днем і втраченим бізнесом.

Де тут ми

Це і є те, що хостинг з обслуговуванням робить у фоні, — і тому це робота не лише про WordPress. Ми стежимо за зведеннями з безпеки по кожному шару, який тримаємо, — CMS, фреймворк, мова, магазин, вебсервер, пакети, — закриваємо критичні всередині небезпечного вікна, тримаємо число деталей невеликим і працюємо на сервері без cPanel і прикручених до нього панелей, щоб ламатися було нічому. Діра на 9,8 з новин стає для наших клієнтів оновленням на пʼять хвилин, а не розгрібанням вихідних, — хоч би де в стеку вона вилізла.

Щоб безкоштовно подивитися, які відомі діри стосуються саме вашого сайту, почніть звідси: де перевірити, які діри загрожують сайту. Про хвилю саме по WordPress — чотири перевірені плагіни, чотири критичні діри. А якщо сайт зробили й лишили без нагляду — а саме так діри й стоять незакритими місяцями — почніть звідси: розробник зник — хто тепер стежить за сайтом.

Заувага про охоплення

Це помітна картина травня 2026 — критичні й високонебезпечні діри по кожному великому шару вебу плюс те, що підтверджено атакували. Це не кожна CVE місяця: самі лише WordPress і його плагіни дають десятки менших зведень, які цілком ведуть Patchstack і Wordfence, і ми не перелічували кожну. Ми також не брали те, що не стосується травня чи вебу (наприклад, діра в шаблонізаторі OpenCart [CVE-2026-3714] — березнева й потребує прав адміністратора). Кожна цифра вище звірена з офіційним записом NVD або бюлетенем розробника до публікації.

Зв'язатися

Покажіть ваш сайт. Скажемо, що насправді не так.

Безкоштовна 30-хвилинна розмова у WhatsApp, Telegram або дзвінком. Без презентацій, без нав'язування додаткових послуг. Якщо ми не підходимо — підкажемо, хто підійде.

Зв'язатись