Критична уразливість WPvivid Backup & Migration (CVE-2026-1357): від бекапів до повної компрометації WordPress

CyberSecureFox 🦊

У популярному плагіні WPvivid Backup & Migration для WordPress виявлено критичну уразливість, що дозволяє завантаження довільних файлів і віддалене виконання коду (RCE) без автентифікації. Під потенційною загрозою опинилося понад 900 000 сайтів, які використовують цей інструмент для резервного копіювання та міграції WordPress.

Короткий огляд уразливості WPvivid Backup & Migration (CVE-2026-1357)

Уразливість отримала ідентифікатор CVE-2026-1357 і оцінку 9,8 за шкалою CVSS, що відповідає критичному рівню ризику та означає можливість повної компрометації сайту. Проблема стосується всіх версій плагіна до 0.9.123 включно, тобто практично всіх актуальних встановлень на момент виявлення.

Дослідник безпеки Лукас Монтес (Lucas Montes), відомий під псевдонімом NiRoX, повідомив про уразливість компанії Defiant 12 січня 2026 року. Розробники WPVividPlugins отримали офіційне сповіщення 22 січня, після чого оперативно випустили виправлення у версії 0.9.124 від 28 січня 2026 року. Саме на цій версії починається захищена гілка плагіна.

Хто реально під загрозою: умови експлуатації CVE-2026-1357

Попри максимальний CVSS-бал, експерти Defiant підкреслюють, що уразливість не є автоматично експлуатованою на кожному сайті з WPvivid. Ключовим фактором ризику є активована опція «receive backup from another site» (отримувати резервні копії з іншого сайту), яка відкриває канал прийому бекапів.

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

На практиці плагіни резервного копіювання й міграції WordPress, зокрема WPvivid Backup & Migration, часто застосовуються саме під час перенесення сайтів між хостингами. Адміністратори нерідко тимчасово активують опцію прийому бекапів і при цьому забувають її вимкнути після завершення міграції, суттєво розширюючи реальну поверхню атаки.

Технічний аналіз: як криптографічна помилка перетворила імпорт бекапів на RCE

Некоректне оброблення помилок RSA та передбачуваний AES-ключ

Корінь уразливості пов’язаний із тим, як плагін обробляє помилки під час RSA-дешифрування у поєднанні з подальшим використанням AES (Rijndael) для розшифрування даних бекапу. У коді застосовується функція openssl_private_decrypt(), яка у разі збою повертає значення false. Однак логіка плагіна не перевіряла результат і продовжувала виконання, передаючи це значення в AES-рутину.

Криптобібліотека трактувала false як послідовність нулевих байтів, що фактично перетворювало ключ шифрування на фіксоване та передбачуване значення. Розуміючи таку поведінку, зловмисник міг згенерувати «правдоподібний» шифрований бекап з шкідливим вмістом, який плагін приймав як легітимний та розпаковував без помилок.

Directory traversal: запис файлів поза каталогом бекапів

Друга критична складова уразливості стосувалася відсутності коректної фільтрації імен файлів під час імпорту резервних копій. Це відкривало шлях до атак типу directory traversal, коли за допомогою спеціальних послідовностей на кшталт ../ можна вийти за межі призначеного каталогу для запису файлів.

У результаті зловмисник отримував можливість записувати довільні файли за межами директорії бекапів, зокрема у веб-доступні каталоги на зразок кореня сайту або wp-content/uploads. Розмістивши там PHP-скрипт або іншу шкідливу веб-оболонку, атакуючий міг викликати його через звичайний HTTP-запит і досягти повноцінного віддаленого виконання коду на сервері.

Комбінація передбачуваного ключа шифрування та можливості directory traversal фактично перетворювала механізм імпорту бекапів WPvivid на канал обходу автентифікації та інсталяції веб-оболонок (web shells), що дозволяють повний контроль над зламаним сайтом WordPress.

Що змінено у версії 0.9.124 та які кроки повинні зробити адміністратори

У релізі WPvivid Backup & Migration 0.9.124 розробники реалізували низку змін, які закривають уразливість CVE-2026-1357 і значно звужують вектор атаки. По-перше, додано жорстку перевірку результату openssl_private_decrypt() з негайним припиненням подальшої обробки у випадку невдалого RSA-дешифрування.

По-друге, впроваджено строгу очистку та валідацію імен файлів, що блокує спроби directory traversal і не дозволяє виходити за межі відведеного каталогу для бекапів. По-третє, завантаження обмежено лише дозволеними типами файлів (ZIP, GZ, TAR, SQL), що зменшує ймовірність завантаження й виконання шкідливих скриптів.

Адміністраторам сайтів на WordPress настійно рекомендується негайно оновити WPvivid Backup & Migration до версії 0.9.124 або новішої. Використання версій до 0.9.123 є вкрай ризикованим, особливо якщо раніше активувалася опція прийому бекапів з інших сайтів або залишалася увімкненою після міграції.

Окрім оновлення плагіна, варто переглянути загальні практики безпеки WordPress: за можливості вимикати непотрібні функції віддаленого імпорту, обмежувати доступ до адмін-панелі за IP або через VPN, застосовувати WAF для фільтрації підозрілих HTTP-запитів і впроваджувати моніторинг цілісності файлів. Такий багаторівневий підхід помітно знижує ризик успішної експлуатації як відомих, так і ще не виявлених уразливостей, а також допомагає своєчасно виявити компрометацію ресурсу.

Залишити коментар

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