Баг в WordPress-плагине Forminator позволяет заливать любые файлы на сервер

Баг в WordPress-плагине Forminator позволяет заливать любые файлы на сервер

Баг в WordPress-плагине Forminator позволяет заливать любые файлы на сервер

WordPress-плагин Forminator, установленный более чем на 500 000 сайтов, содержит уязвимость, с помощью которой злоумышленники могут без ограничений загружать файлы на сервер.

Forminator, разрабатываемый WPMU DEV, предоставляет функциональность билдера форм для контактов, обратной связи, опросов, платежей и т. п. Forminator удобен реализацией функции «перетаскивания» (Drag-and-drop) и возможностью интеграции со сторонним софтом.

Однако недавно в WordPress-плагине нашли уязвимость, получившую идентификатор CVE-2024-28890. В случае эксплуатации брешь позволяет удалённому атакующему загрузить вредоносные файлы на сервер. По шкале CVSS проблеме присвоили 9,8 балла.

«Условный удалённый злоумышленник может получить доступ к конфиденциальной информации на сервере, изменить внешний вид сайта и даже вызвать DoS», — сказано в уведомлении на площадке JVN.

Помимо CVE-2024-28890 (затрагивает версию Forminator 1.29.0), корень которой кроется в недостаточной валидации файлов в процессе загрузки, специалисты выделили ещё две уязвимости:

  • CVE-2024-31077 — возможность SQL-инъекции, позволяющая злоумышленникам с правами администратора выполнять SQL-запросы к базе данных (затрагивает Forminator 1.29.3 и более ранние версии плагина).
  • CVE-2024-31857 — межсайтовый скриптинг, позволяющий выполнить HTML или скрипт в браузере посетителя уязвимого ресурса (затрагивает Forminator 1.15.4 и более старые версии).

Разработчики выпустили версию плагина 1.29.3, которую стоит незамедлительно установить всем администраторам сайтов с Forminator.

Атакующие взломали популярный сканер Trivy через GitHub-теги

Одна из самых неприятных историй последних дней развернулась вокруг Trivy — популярного сканера уязвимостей от Aqua Security, который используют разработчики и DevOps-команды по всему миру. Атакующие смогли скомпрометировать почти все версии инструмента в рамках атаки на цепочку поставок, и последствия здесь могут быть действительно серьёзными.

О проблеме публично сообщил мейнтейнер Trivy Итай Шакури. По его словам, если есть хоть малейшее подозрение, что в пайплайне запускалась скомпрометированная версия, все секреты нужно считать утёкшими и срочно ротировать.

Исследователи из Socket и Wiz выяснили, что внедрённый зловред не просто подменял работу Trivy, а параллельно запускал настоящий сканер и свою вредоносную нагрузку. То есть внешне всё могло выглядеть вполне штатно, пока внутри шёл сбор конфиденциальных данных.

По данным исследователей, зловред прочёсывал CI/CD-пайплайны, машины разработчиков и окружение в поисках GitHub-токенов, облачных учётных данных, SSH-ключей, Kubernetes-токенов и других секретов. Всё найденное он архивировал, шифровал и отправлял на сервер, контролируемый атакующими.

Особенно неприятно то, как именно была проведена атака. Вместо привычного сценария с добавлением нового коммита или релиза злоумышленники использовали украденные учётные данные, чтобы привязать уже существующие теги к вредоносным коммитам.

Под удар попали 75 тегов в trivy-action и ещё семь тегов setup-trivy. Среди затронутых версий оказались и очень распространённые варианты вроде @0.34.2, @0.33 и @0.18.0. По имеющейся информации, незатронутой осталась только версия @0.35.0.

Именно это делает инцидент особенно опасным. Если воркфлоу в GitHub Actions ссылался на один из таких тегов, при запуске Trivy он автоматически подтягивал уже не легитимный код, а вредоносную подмену. Компрометация могла произойти просто в момент очередного штатного сканирования.

По данным Wiz, у атакующих был и запасной канал вывода данных. Сначала зловред пытался отправить собранную информацию на домен scan.aquasecurtiy[.]org. Если это не удавалось, он пробовал использовать украденный GITHUB_TOKEN, чтобы создать репозиторий tpcp-docs и выгрузить данные туда.

Если же зловред понимал, что работает не в пайплайне, а на машине разработчика, он дополнительно записывал кодированный base64 дроппер на Python для закрепления.

Отдельно настораживает и предыстория атаки. Массовая компрометация началась в четверг, но, как пояснил Итай Шакури, её корни уходят в более ранний инцидент — взлом расширения VS Code Aqua Trivy, произошедший ещё в прошлом месяце. Тогда атакующие получили учётные данные с правами записи в GitHub-аккаунт Trivy.

После того случая мейнтейнеры ротировали токены и другие секреты, но процесс, как выяснилось, не устранил все остаточные артефакты доступа. Именно это, по версии исследователей, и позволило атакующим продолжить аутентифицированные операции без необходимости взламывать сам GitHub.

При этом интересно, что атакующие аккуратно подменяли ссылки тегов на новые коммиты, копируя метаданные старых коммитов: автора, почту, дату и даже текст сообщения. За счёт этого компрометация выглядела максимально правдоподобно.

RSS: Новости на портале Anti-Malware.ru