На прошлой неделе мы писали о критической уязвимости загрузки файлов в Forminator Forms. Теперь в ту же неприятную компанию попал ещё один конструктор форм WordPress.
На этот раз Elementor Pro.
CVE-2026-32475 позволяет неавторизованному злоумышленнику обойти проверку файлов в форме Elementor Pro, загрузить PHP в общедоступную папку и выполнить его на сервере. Учётная запись WordPress не нужна. Пароль красть не нужно. Администратор не должен переходить по ссылке.
Elementor исправил уязвимость 19 августа в Pro версии 4.2.2. Подвержены все выпуски до 4.2.1 включительно. Если на сайте активен Elementor Pro, сначала проверьте номер версии.
Проблема в Elementor Pro, а не на каждом сайте с Elementor
Сразу уточним один вводящий в заблуждение показатель. Бесплатный Elementor установлен более чем на десяти миллионах сайтов, но уязвимость находится в модуле Forms из Elementor Pro. На сайте только с бесплатной версией этого кода форм нет.
Для риска нужна опубликованная форма Elementor Pro с полем File Upload. Например, анкета соискателя, обращение в поддержку, запрос расчёта с чертежом или контактная форма, куда посетитель прикладывает снимок экрана. Обычные рабочие формы, без экзотических настроек.
Разница между бесплатной и Pro версиями важна, но гадать не надо. Откройте список плагинов. Если там есть Elementor Pro 4.2.1 или старше, обновите его.
Проверка уязвимостей должна заметить старую версию плагина. Но она не покажет, есть ли на опубликованных страницах форма с загрузкой файлов. Это придётся быстро проверить в Elementor.
Одна загрузка, два набора правил
Причина ошибки на удивление будничная. Elementor Pro проверяет загруженный файл в одном цикле, а затем переносит принятые файлы в другом. Эти два участка кода по-разному обрабатывают пустую запись файла.
Специально составленный запрос заставляет цикл проверки завершиться слишком рано. Расширение следующего файла остаётся непроверенным. Код переноса ведёт себя иначе: пропускает пустую запись, продолжает работу и помещает следующий файл в wp-content/uploads/elementor/forms/.
Эта папка доступна из интернета. Если непроверенный файл содержит PHP, обращение к его адресу заставит сервер выполнить код. С этого момента атакующий уже не просто отправляет форму. Он выполняет команды с правами веб-сервера.
Технический разбор опубликован в первичном отчёте Patchstack. Для владельца сайта суть проще: версия 4.2.2 синхронизирует правила проверки и переноса, а затем ещё раз проверяет расширение непосредственно перед сохранением файла.
Elementor и Patchstack по-разному описывают условия
Здесь лучше сказать прямо: два описания не полностью совпадают.
Patchstack считает достаточным условием опубликованную форму Elementor Pro с полем File Upload, у которого выключен параметр Required — это настройка по умолчанию. В уведомлении Elementor для клиентов указано другое, более узкое условие: должна быть включена возможность отправлять несколько файлов, а по умолчанию она выключена.
Возможно, более узкое описание Elementor точно соответствует проверенному ими варианту атаки. Значит ли это, что можно оставить 4.2.1, если переключатель выглядит выключенным? Нет.
Уязвимый код присутствует, исправленная версия уже доступна, а обновление дешевле попытки доказать, какое описание применимо к каждой форме. Любую публичную форму Elementor Pro с загрузкой файлов на версии 4.2.1 или старше разумно считать потенциально подверженной, пока плагин не обновлён, а файлы не проверены.
Подтверждённых атак пока нет — используйте это время
По состоянию на 24 августа подтверждённых случаев эксплуатации CVE-2026-32475 в реальных атаках нет. Это хорошая новость, а не разрешение отложить обновление до следующего месяца.
Исправление и техническое описание уже опубликованы. Сравнение старого и нового кода даёт атакующему достаточно ясную карту. Мы уже не раз видели, как быстро после раскрытия уязвимости WordPress начинается автоматическое сканирование сайтов.
Поэтому регулярное обслуживание WordPress действительно нужно. Платные плагины особенно легко пропустить, когда лицензия истекла или обновление исчезло из консоли. Если Elementor Pro не обновляется автоматически, скачайте свежий архив из аккаунта владельца лицензии и установите вручную. Не оставляйте уязвимую копию активной только потому, что письмо о продлении ушло бывшему сотруднику.
Что сделать сегодня
- Обновите Elementor Pro до 4.2.2 или новее. Обновление одного бесплатного Elementor не исправляет код Pro.
- Найдите все опубликованные формы с File Upload. Проверьте страницы, всплывающие окна, лендинги и шаблоны.
- Просмотрите
wp-content/uploads/elementor/forms/. Ищите.php,.phtmlи любые файлы, которые формы не должны принимать. - Проверьте недавние изменения. Просмотрите администраторов, новые плагины, запланированные задачи и необычные исходящие соединения.
- При подозрении сохраните доказательства. Сделайте снимок сайта до удаления файлов.
Обновление закрывает путь загрузки. Оно не удаляет веб-шелл, который мог попасть на сервер через старую версию. Мониторинг целостности файлов поможет заметить неожиданные добавления, если папка форм Elementor входит в область проверки.
Заодно решите, нужны ли эти поля загрузки до сих пор. Закрытая полгода назад вакансия не должна продолжать принимать файлы от всего интернета. Удалите забытые формы. Чем меньше публичных точек загрузки, тем меньше приходится контролировать.
Если в папке форм обнаружился PHP-файл
Не удаляйте его сразу и не считайте проблему решённой. Сначала сохраните снимок, запишите имя файла и время изменения, затем проверьте журналы доступа за тот же период. После этого ищите другие изменённые файлы, скрытые учётные записи администраторов, незнакомые плагины, содержимое mu-plugins и запланированные задачи.
В статье что делать сразу после подозрения на компрометацию разобраны первые действия без уничтожения полезных следов. Если неизвестный PHP уже выполнялся, одного обновления Elementor недостаточно. Нужна полноценная очистка взломанного WordPress.
Веб-шелл — это точка входа. Постоянный бэкдор злоумышленник может оставить в месте, уже никак не связанном с Elementor. Поэтому удаление одного заметного файла не решает всю проблему.
Коротко
Elementor Pro 4.2.1 и более старые версии содержат критическую уязвимость загрузки файлов без авторизации. Уязвимая публичная форма может позволить поместить PHP в доступную из интернета папку и выполнить его на сервере. Elementor Pro 4.2.2 исправляет ошибку.
Обновите Pro. Проверьте wp-content/uploads/elementor/forms/. Просмотрите все публичные формы с загрузкой файлов. Сделайте это сейчас, пока подтверждённых атак ещё нет.