У плагіні Forminator Forms для WordPress виявлено критичну вразливість довільного завантаження файлів, яка дає змогу неавтентифікованому зловмиснику завантажити на сервер шкідливий PHP-файл і досягти віддаленого виконання коду. Вразливість відстежується як CVE-2026-15748 з оцінкою CVSS 9,8 із 10. Плагін установлено більш ніж на 600 000 сайтів і, за даними статистики WordPress.org, близько половини з них — приблизно 300 000 ресурсів — досі працюють на вразливих версіях. Виправлення доступне у версії 1.56.2, тож адміністраторам слід оновитися негайно.
Технічні деталі вразливості
За даними дослідження Wordfence, вразливість виявлена дослідником під псевдонімом daroo й охоплює всі версії Forminator Forms аж до 1.56.1 включно. Причина проблеми — у функції handle_file_upload(), яка недостатньо строго валідовує типи завантажуваних файлів.
Механізм обходу захисту, як повідомляється, ґрунтується на двох слабких місцях:
- Обхід чорного списку розширень. Фільтрація небезпечних розширень файлів спирається на точний збіг ключів. Однак у записах MIME-типів альтернативні значення можуть розділятися символом «|», що дає змогу обійти перевірку та завантажити файл з виконуваним розширенням.
- Маніпуляція параметрами форми. Публічний обробник надсилання форм довіряє налаштуванням полів завантаження, які надходять із боку клієнта. Зловмисник може підмінити значення поля Select і передати власні параметри для поля File Upload, змусивши сервер прийняти довільний файл.
Унаслідок успішної експлуатації може відбутися встановлення вебшелу, виконання довільних команд на сервері та повна компрометація сайту.
Умови експлуатації та пом’якшувальні чинники
Попри критичну оцінку CVSS, реальна можливість експлуатації залежить від конфігурації конкретного сайту. Для успішної атаки необхідне виконання кількох умов:
- На цільовому сайті має існувати форма, яка одночасно містить поля File Upload і Select. Форми без такої комбінації полів не піддаються цій атаці.
- Типово завантажені файли потрапляють до директорії, захищеної файлом .htaccess, який блокує виконання PHP-скриптів. Це суттєво знижує ризик за стандартної конфігурації.
Однак небезпека значно зростає, якщо адміністратор налаштував власний каталог для зберігання завантажень через функцію Custom File Upload Storage. За даними дослідників, у такому каталозі захисний .htaccess може не створюватися, оскільки відповідний механізм WordPress недоступний під час першого запиту з фронтенду. У цьому сценарії зловмиснику достатньо безпосередньо звернутися за URL до завантаженого PHP-файлу, і вебсервер виконає шкідливий код.
Статус активної експлуатації вразливості на момент публікації не підтверджено — CVE-2026-15748 не внесено до каталогу CISA KEV, а інформація про використання у реальних атаках відсутня. Втім, простота експлуатації та широке поширення плагіна роблять появу експлойтів питанням часу.
Оцінка впливу
Forminator Forms — один із найпопулярніших конструкторів форм для WordPress, який використовується на сайтах найрізноманітнішого профілю: від корпоративних порталів до інтернет-магазинів та освітніх платформ. Найбільшому ризику піддаються сайти, на яких:
- форми приймають завантаження файлів від неавтентифікованих користувачів;
- налаштовано користувацьке сховище завантажень;
- відсутній додатковий захист на рівні вебсервера (наприклад, правила Nginx, що забороняють виконання PHP у каталогах завантажень).
Компрометація через завантаження вебшелу надає зловмиснику повний контроль над сервером, що може призвести до викрадення даних, дефейсу, розсилання спаму, розміщення шкідливого ПЗ для відвідувачів сайту та використання сервера як плацдарму для подальших атак.
Рекомендації
- Негайно оновіть Forminator Forms до версії 1.56.2 або новішої. Патч було випущено 31 липня 2026 року й він доступний через стандартний механізм оновлення WordPress.
- Перевірте конфігурацію сховища завантажень. Якщо використовується Custom File Upload Storage, переконайтеся, що в каталозі є файл .htaccess (або аналогічна конфігурація для Nginx), який забороняє виконання PHP-скриптів.
- Проведіть аудит завантажених файлів. Перевірте каталоги завантажень на наявність підозрілих PHP-файлів, особливо якщо форми з полями File Upload і Select були публічно доступні в період використання вразливих версій.
- Обмежте типи завантажуваних файлів на рівні вебсервера незалежно від логіки плагіна — це забезпечить захист у глибину.
- Розгляньте використання WAF із правилами, які блокують завантаження файлів з виконуваними розширеннями через форми.
З огляду на те, що понад 300 000 сайтів імовірно залишаються без патча, а для експлуатації не потрібна автентифікація, оновлення до Forminator Forms 1.56.2 має бути пріоритетним завданням для кожного адміністратора WordPress, який використовує цей плагін. Паралельно з оновленням варто перевірити каталоги завантажень на наявність нетипових PHP-файлів — це дасть змогу виявити можливу компрометацію, що сталася до встановлення патча.