В Apache Struts 2 исправили RCE-уязвимость CVE-2018-11776, представлявшую опасность для версий от Struts 2.3 до 2.3.34, от Struts 2.5 до 2.5.16, а также, возможно, для более старых вариаций фреймворка.

Патчи представлены с версиями Struts 2.3.35 и 2.5.17. Также существуют временные способы решения проблемы, однако разработчики называют их ненадежными и настоятельно рекомендуют пользователям обновиться. Стоит сказать, что эксперты компании Semmle, обнаружившие баг, уже опубликовали PoC-эксплоит на GitHub и детальное техническое описание проблемы, так что к разработчикам лучше прислушаться.

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

Чтобы RCE-уязвимость представляла угрозу, необходимо соблюдение следующих условий:

  • флаг alwaysSelectFullNamespace должен быть установлен на значение true;
  • файл конфигурации должен содержать теги action или url, для которых не определен атрибут с пространством имен или указаны подстановочные символы пространства имен.

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

Напомню, что именно благодаря другой уязвимости в составе Apache Struts (CVE-2017-5638) произошел взлом бюро кредитных историй Equifax, в результате которого случилась масштабная утечка данных, затронувшая более 150 млн человек.

  • Подпишись на наc в Telegram!

    Только важные новости и лучшие статьи

    Подписаться

  • Подписаться
    Уведомить о
    0 комментариев
    Межтекстовые Отзывы
    Посмотреть все комментарии