Spring4Shell RCE — критичная уязвимость в Java Spring Framework

890c9a2a0fd0e57676a445fdf8f4513f.png

Не успел мир отойти от Apache Log4j2 (CVE-2021–44228), как в сети появились сообщения о новых 0-day уязвимостях. В Spring Framework для Java обнаружено сразу несколько уязвимостей «нулевого дня», позволяющих, в том числе, выполнять произвольный код (RCE).

На данный момент выявлено 3 недостатка:

  • RCE в библиотеке Spring Cloud Function (CVE-2022–22963) — уязвимость актуальна для версии библиотеки до 3.2.3;

  • Уязвимость среднего уровня, которая может вызвать состояние DoS (CVE-2022–22950) — затрагивает версии Spring Framework с 5.3.0 по 5.3.16;

  • Spring4Shell в Spring Core — уязвимость внедрения классов для эксплуатации RCE (еще не присвоен идентификатор CVE).

Информация представлена в ознакомительных целях, не нарушайте законодательство.

Spring4Shell в Spring Core

Клиенты, использующие JDK версии 9 и новее, уязвимы для атаки удаленного выполнения кода из-за обхода CVE-2010–1622. Уязвимости подвержены все версии Spring Core (исправление еще не выпущено). Уязвимость затрагивает функции, использующие RequestMapping и параметры POJO (Plain Old Java Object).

Работа эксплоита сводится к отправке запроса с параметрами class.module.classLoader.resources.context.parent.pipeline.first.*, обработка которых при использовании WebappClassLoaderBase приводит к обращению к классу AccessLogValve. Указанный класс позволяет настроить логгер для создания произвольного jsp-файла в корневом окружении Apache Tomcat и записи в этот файл указанного атакующим кода. Созданный файл становится доступным для прямых запросов.

Результатом эксплуатации будет созданный shell.jsp, при обращении к которому можно выполнять произвольные команды на сервере, например:

# curl http://example.com/shell.jsp?cmd=whoami

Эксплойт уже доступен в паблике, но по этическим соображениям мы пока не будем публиковать PoC.

Разработчики еще не выпустили патч, но вы можете использовать Nemesida WAF, блокирующий попытки эксплуатации этой и других уязвимостей, включая техники обхода. Оставайтесь защищенными.

© Habrahabr.ru