Ядро WordPress майже недоторкане. 91% дір – у плагінах, і у вас п’ять годин

Є розмова, яка повторюється щоразу після зламу. Клієнт запитує, як таке сталося, якщо є абонплата на підтримку. Підрядник відповідає, що оновлення ставили щомісяця. Обидва мають рацію, і сайт усе одно зламали. Причина в тому, що обидва вважали швидкість оновлень достатнім захистом, а цифри за 2025 рік кажуть, що вона перестала бути достатньою.

25 лютого 2026 року Patchstack опублікував звіт State of WordPress Security in 2026. З нього варто запам’ятати дві цифри. За 2025 рік в екосистемі WordPress зафіксували 11 334 нові вразливості, на 42% більше, ніж роком раніше. І зважена медіана часу від публічного розкриття до масової експлуатації склала п’ять годин.

П’ять годин – це менше за один робочий день. Менше, ніж триває погодження робіт із клієнтом. Менше, ніж інтервал між двома заходами в адмінку. Далі про те, що ця цифра змушує змінити насправді.

Що саме показав звіт

Розподіл вразливостей за компонентами – та частина, яка перевертає всю дискусію. Ламають не платформу.

Показник за 2025 рікЗначенняЩо це означає на практиці
Нові вразливості в екосистемі11 334, зростання на 42%Проблема в обсязі, а не в екзотичних техніках
Частка в плагінах91%Поверхня атаки – це рішення про закупівлю, а не про платформу
Частка в темах9%Конструктори сторінок і універсальні теми важать тут чимало
Знайдено в ядрі WordPress6, усі з низьким пріоритетомЯдро фактично не є вашим ризиком
Медіана часу до масової експлуатації5 годинЛюдський темп оновлень цю гонку не виграє
Розкрито без готового патча46%Майже в половині випадків оновлювати просто нема на що
Критичні нульові дні в платних компонентах33 проти 12 у безкоштовнихОплата дає підтримку, а не безпеку
Специфічні для WordPress атаки, які зупинив хостинг12%Периметр тонший, ніж здається за рахунком

Одне застереження, перш ніж цитувати це в презентації. Patchstack веде комерційну базу вразливостей і продає засоби захисту, тобто звітує про ринок, у якому сам працює. Дані зібрані з власного потоку розкриттів: це найповніше публічне джерело по цій екосистемі і водночас погляд одного постачальника. Напрямок можна вважати надійним, а десяті частки – наближенням, як і в будь-якому галузевому бенчмарку.

Чому ядро можна прибрати зі списку тривог

Шість проблем низького пріоритету за цілий рік у програмному забезпеченні такого масштабу – це дуже добрий результат. У ядра є команда безпеки, регламент розкриття, фонові оновлення для мінорних релізів увімкнені за замовчуванням і достатньо уваги дослідників, щоб серйозні речі спливали рано.

У плагінів нічого з цього не гарантовано. Плагін може бути написаний двома людьми, проданий, покинутий, перепроданий і залишений у каталозі з п’ятдесятьма тисячами активних встановлень і без супроводу. Рекомендації з безпеки в довіднику розробника WordPress існують і вони непогані, але ніщо не змушує їх читати. Ця асиметрія і є повним поясненням цифри 91%.

Звідси незручний висновок: кількість плагінів на сайті – це метрика безпеки. Не швидкодії й не охайності. Кожен наступний плагін – це ще один незалежний постачальник, чию дисципліну релізів ви прийняли, не перевіривши. Ми вже розбирали, як насправді зламують сайти на WordPress, і картина реальних інцидентів збігається зі статистикою майже точно.

Чому п’ять годин руйнують ручну модель

Уявіть типовий регламент підтримки. Вразливість оприлюднили у вівторок після обіду. Хтось прочитав бюлетень у середу вранці. Створили задачу, оновили стейджинг, прогнали перевірку, узгодили вікно робіт, у четвер зміна доїхала на бойовий сайт. Це грамотний, акуратний, професійний процес. І він приблизно в тридцять разів повільніший за вікно експлуатації.

Автоматичне сканування не зважає на ваш робочий графік. Щойно виправлення з’являється в публічному репозиторії, сам діф описує вразливість, і масові спроби починаються за години. Розрив між розкриттям і атакою стискається роками, і зараз він виглядає як п’ять годин.

Далі йде та сама цифра 46%. Майже половина розкритих вразливостей на момент публікації не мала виправлення, тобто стратегія «швидко ставити оновлення» в цих випадках не має жодного ходу. Не можна встановити патч, якого не існує. Інтервал має закривати щось інше.

Платне не означає безпечніше

Це висновок, який найчастіше суперечить наявній політиці закупівель. Patchstack зафіксував 33 критичні вразливості нульового дня в платних і умовно-безкоштовних компонентах проти 12 у безкоштовних, а частка компонентів із підтвердженою експлуатацією серед платних була приблизно втричі вищою.

Механіка тут проста. Платні плагіни мають більше функцій, більший обсяг коду, власні сервери ліцензій та оновлень і вбудовані сторонні бібліотеки. Вони розповсюджуються поза каталогом wordpress.org, тобто поза автоматичною перевіркою, поза механізмом примусового оновлення, який каталог може запустити, і часто взагалі поза каналом оновлень самого сайту. Класичний випадок – платний слайдер, вшитий у куплену тему: він на три версії позаду, про нього ніхто не пам’ятає, і шляху оновлення в нього немає.

Правильний висновок не в тому, що безкоштовне безпечніше. Він у тому, що ціна не є показником якості супроводу і не повинна фігурувати у критеріях вибору так, ніби є. Прогнозує щось інше: частота релізів, історія швидкості випуску патчів, наявність опублікованого контакту з питань безпеки та присутність компонента в базі вразливостей із записами про оперативні виправлення. Наш чек-лист оцінки постачальника перед інтеграцією сервісу описує ту саму логіку для сервісів, і вона переноситься на плагіни без змін.

Що насправді роблять хостинг і WAF

Найнезручніша для хостинг-індустрії цифра звіту: традиційні засоби захисту зупинили лише 12% специфічних для WordPress вразливостей, тоді як із загальним потоком атак вони справлялися помітно краще.

Саме ця різниця і важлива. Загальні правила ловлять загальні атаки: шаблони SQL-ін’єкцій, відомі шкідливі навантаження, очевидні сканери. Специфічна для WordPress вразливість зазвичай виглядає як легітимний запит до легітимного маршруту з параметрами, які автор плагіна забув перевірити. У пакеті немає нічого підозрілого, якщо правило не знає конкретний плагін, конкретний маршрут і конкретний параметр. Універсальний фільтр цього знати не може.

Це не робить керований хостинг марним. Ізоляція, жорсткі налаштування PHP, незмінні резервні копії та швидкий відкат варті своїх грошей, і ми окремо писали, на чому в хостингу для бізнесу не варто економити. Просто не купуйте його з вірою, що рядок «WAF» у тарифі закриває вразливості плагінів. За даними звіту він закриває приблизно одну з восьми.

Заходи, які справді змінюють результат

За вікна у п’ять годин, 46% розкриттів без патча і 12% перехоплення на периметрі стратегія перестає бути «оновлювати швидше» і стає «мати менше того, що треба оновлювати, і закривати інтервал, коли оновлення неможливе».

ЗахідНа яку цифру відповідаєВитратиЩо залишається відкритим
Скоротити кількість плагінів, зняти неактивні91% у плагінахОдин аудит, далі щокварталуНічого не змінює для тих, що лишились
Правила відбору нових плагінівНульові дні в платних компонентахПолітика плюс десять хвилин на рішенняУсе, що вже встановлено
Віртуальне патчення на рівні застосунку5 годин, 46% без патчаПідписка і налаштуванняТе, що ще не оприлюднено
Автоматичні мінорні й безпекові оновленняВікно у 5 годинЛише конфігураціяМажорні версії і ризик поганого релізу
Мажорні оновлення через копію бойового сайтуРизик поламати автоматикоюОкреме середовищеДодає затримку, тож потрібне разом із віртуальним патченням
Контроль цілісності файлів і вихідних запитівВиявлення, коли профілактика не спрацювалаНалаштування і людина, яка читає сповіщенняВиявляє, але не запобігає
Перевірене відновлення, а не просто бекапиЧас повернення до роботи після зламуОдне навчання на кварталДані, записані між зламом і виявленням

Три пункти варті пояснення.

Віртуальне патчення – це прямий відповідник тим 46%. Правило, написане під одну відому вразливість у відомому компоненті, блокує саме ту форму запиту, якою її експлуатують, не торкаючись коду плагіна. Воно купує вам інтервал між розкриттям і появою справжнього виправлення, тобто рівно той інтервал, у якому втрачають сайти. Такі правила будують на публічних трекерах на кшталт бази вразливостей Patchstack і каталогу відомих експлуатованих вразливостей CISA, і на них варто підписатися напряму, якщо ви ведете більше кількох сайтів.

Поетапні автооновлення означають розділити потік оновлень, а не вибирати між «усе вручну» і «усе автоматично». Безпекові й мінорні релізи їдуть автоматично, бо очікувані втрати від рідкісного зламаного блоку значно менші за очікувані втрати від п’ятигодинної відкритості. Мажорні версії проходять через стейджинг. WordPress підтримує такий поділ штатно через константи фонових оновлень, і більшість команд ніколи їх не налаштовує, бо саму розмову ведуть у форматі «все або нічого».

Моніторинг потрібен тому, що перші три заходи колись не спрацюють. Після цього значення має лише час. Компрометація, знайдена за годину, – це інцидент; та сама компрометація за три місяці – це вже проблема з даними, репутацією і, можливо, з регулятором. Базовий набір для невеликих команд ми зібрали в матеріалі про кібербезпеку для малого бізнесу.

Чого ці цифри не виправдовують

  • Відмови від WordPress. Шість проблем низького пріоритету в ядрі за рік – сильний результат. Перехід на іншу платформу веде до іншого набору залежностей із меншою публічною увагою, а не до меншої поверхні атаки.
  • Вимкнення всіх автооновлень після одного невдалого релізу. Такий обмін замінює рідкісну помітну аварію на часту непомітну. Порахуйте обидві сторони, перш ніж вирішувати.
  • Купівлі плагіна безпеки з відчуттям, що питання закрите. Більшість того, що змінює результат, – це дисципліна інвентаризації та політика оновлень, а вони не встановлюються з каталогу.
  • Паніки через зростання на 42%. Частина приросту пояснюється більшою кількістю дослідників і кращою звітністю. Операційно серйозні висновки – це п’ять годин і 46% без патча, а не сам обсяг.

Коротко

Ядро WordPress дало за 2025 рік шість вразливостей низького пріоритету, плагіни – 91% від 11 334. Медіана часу від розкриття до масової експлуатації – п’ять годин, 46% розкриттів вийшли без готового виправлення, платні компоненти дали майже втричі більше критичних нульових днів, ніж безкоштовні, а захист на рівні хостингу зупинив приблизно одну з восьми специфічних для WordPress атак. Разом це означає, що важіль – не швидкість оновлень. Важелі – кількість плагінів, походження плагінів, віртуальне патчення, розділена політика оновлень і перевірений шлях відновлення.

Якщо сайт за кілька років накопичив тридцять чи сорок плагінів, ніхто не має опису того, що вони роблять, а в темі вшиті компоненти, які неможливо оновити, чесне рішення зазвичай структурне, а не процедурне. Саме з такими ситуаціями ми найчастіше маємо справу під час міграції та перезбирання сайту, де сенс роботи в тому, щоб на виході отримати перелік залежностей, який реально тримати оновленим, а не обіцяти це на словах.

Latest News

Жовта тактильна плитка з опуклими круглими елементами

Рік Європейського акта про доступність: Carrefour під щоденною астрентою, німецькі претензії, шведські перевірки

Що насправді вирішив суд у Кані щодо Carrefour, чому астрента не є штрафом, як по-різному працює примус у Німеччині та Швеції і на якому етапі стандарти EN 301 549 та WCAG.

Панорама центру Софії з висоти пташиного польоту надвечір

Болгарський інтернет-магазин у 2026 році: євро, болгарська мова, Наредба Н-18 і Safety Gate

Коли саме завершується подвійне зазначення цін у левах і євро, які насправді санкції за законом про євро, що змінилося в законі про захист споживачів з 3 лютого 2026 року і коли потрібен додаток 33.

View all news