The Struts 1 plugin in Apache Struts 2.1.x and 2.3.x might allow remote code execution via a malicious field value passed in a raw message t
The Struts 1 plugin in Apache Struts 2.1.x and 2.3.x might allow remote code execution via a malicious field value passed in a raw message to the ActionMessage.
- Опубликовано
- 10 июл. 2017 г.
- Обновлено
- 16 июн. 2026 г.
- EPSS
- 98,9 % · 100-й процентиль
- CWE
- CWE-20
Войдите, чтобы следить · Вы получите уведомление, если запись попадёт в KEV, получит эксплойт или обновится.
Инструменты для отчёта
Оценка срочности
99
Срочно
Установите исправление сегодня или закройте доступ.
- CVSS
- 39 / 40 · 9.8 / 10
- CISA KEV
- 30 / 30 · В списке
- EPSS
- 30 / 30 · 98,9 %
Решение CISA SSVC
- Эксплуатация
- активная
- Автоматизируемо
- да
- Техническое влияние
- полное
Vulnrichment: входные данные дерева решений CISA.
Активно эксплуатируется
CISA добавило это в каталог активно эксплуатируемых уязвимостей (KEV) 10 февр. 2022 г.. Это указывает на реальные атаки, а не теорию.
Срок устранения для госорганов: 10 авг. 2022 г..
Затронутые системы
| Вендор | Продукт | CPE |
|---|---|---|
| apache | struts | cpe:2.3:a:apache:struts |
Затронутые версии
Диапазоны версий NVD (для продуктов из каталога). Добавьте продукт в стек с версией, и сопоставление будет по ним.
- apache struts2.3.1
- apache struts2.3.1.1
- apache struts2.3.1.2
- apache struts2.3.12
- apache struts2.3.14
- apache struts2.3.14.1
- apache struts2.3.14.2
- apache struts2.3.14.3
- apache struts2.3.15
- apache struts2.3.15.1
- apache struts2.3.15.2
- apache struts2.3.15.3
- apache struts2.3.16
- apache struts2.3.16.1
- apache struts2.3.16.2
- apache struts2.3.16.3
- apache struts2.3.20
- apache struts2.3.20.1
- apache struts2.3.20.3
- apache struts2.3.24
Версии, заявленные вендором
Диапазоны затронутых версий, заявленные назначающей организацией (apache). Не зависят от анализа CPE в NVD и обычно опережают его.
Apache Software Foundation Apache Struts
- 2.1.x series, 2.3.x seriesзатронута
Затронутые пакеты
Данные OSV и GitHub Advisory: экосистема, пакет и диапазон. Сопоставление SBOM использует эту таблицу.
| Экосистема | Пакет | Затронутый диапазон | Исправление |
|---|---|---|---|
| Maven | org.apache.struts:struts2-struts1-plugin | до 2.3.37 включительно | — |
Тот же продукт
apache: все записиДругие записи с наивысшей оценкой для того же основного продукта.
- CVE-2017-5638The Jakarta Multipart parser in Apache Struts 2 2.3.x before 2.3.32 and 2.5.x before 2.5.10.1 has incorrect exception handling and error-mesKEV99Срочно
- CVE-2020-17530Forced OGNL evaluation, when evaluated on raw user input in tag attributes, may lead to remote code execution.KEV98Срочно
- CVE-2018-11776Apache Struts versions 2.3 to 2.3.34 and 2.5 to 2.5.16 suffer from possible Remote Code Execution when alwaysSelectFullNamespace is true (eiKEV92Срочно
- CVE-2017-9805The REST Plugin in Apache Struts 2.1.1 through 2.3.x before 2.3.34 and 2.5.x before 2.5.13 uses an XStreamHandler with an instance of XStreaKEV92Срочно
- CVE-2012-0391The ExceptionDelegator component in Apache Struts before 2.2.3.1 interprets parameter values as OGNL expressions during certain exception haKEV92Срочно
- CVE-2006-1547ActionForm in Apache Software Foundation (ASF) Struts before 1.2.9 with BeanUtils 1.7 allows remote attackers to cause a denial of service vKEV76На этой неделе
Исправление
На какую версию обновиться
Версии с исправлением по данным вендора, реестров пакетов и Microsoft. Перед обновлением сверьтесь с бюллетенем вендора.
Для этой записи не зафиксирована версия с исправлением. Смотрите бюллетени вендора в источниках.
Статус эксплойта
Готовый эксплойт
Известен готовый инструмент или активное использование в реальных атаках. Это должно быть высшим приоритетом.
Доказательство
- Модуль Metasploit ×1
- Запись Exploit-DB ×3
- Шаблон обнаружения Nuclei ×1
- Репозиторий PoC на GitHub ×3
Noroxi не размещает код эксплойтов и не даёт на них ссылок. Показываются имена модулей Metasploit и идентификаторы шаблонов Nuclei (имена, не код); записи Exploit-DB и репозитории PoC даются только числом.
| Источник | Тип | Дата |
|---|---|---|
| Запись Exploit-DB | remote | 2018-05-17 |
| Запись Exploit-DB | remote | 2018-05-17 |
| Запись Exploit-DB | webapps | 2017-07-07 |
| Модуль Metasploit | exploit/multi/http/struts2_code_exec_showcaseApache Struts 2 Struts 1 Plugin Showcase OGNL Code Executionexploit | 2017-07-07 |
| Шаблон обнаружения Nuclei | Шаблон Nuclei CVE-2017-9791 | — |
| Репозиторий PoC на GitHub | stars:2 | 2017-07-07 |
| Репозиторий PoC на GitHub | stars:27 | 2017-07-07 |
| Репозиторий PoC на GitHub | stars:0 | 2017-09-23 |
Контекст для исследователя
Для пентестеров и исследователей: профиль атаки, расхождение оценок, хронология, коммиты исправлений, авторы, кандидаты в варианты и цепочки, охват bug bounty. Всё выводится из имеющихся данных; без кода эксплойтов.
Хронология
От публикации до сегодня: proof of concept, модуль Metasploit, CISA KEV и запись об исправлении. Даты — как сообщают источники.
- Первый PoC-4 дн.
- Metasploit-4 дн.
- Публикация
- CISA KEV+1675 дн.
- Сегодня30 сент. 2026 г.+3369 дн.
Ежедневная оценка FIRST EPSS; записываются только изменения от 0,01 (ступенчатый график).
Ссылки на патчи и коммиты
Коммиты, PR и diff среди источников. Отправная точка для patch-diff и поиска вариантов; это исправления, не эксплойты.
Среди источников нет ссылок на коммит или PR.
Авторы
Все исследователиНашедшие, сообщившие и аналитики, названные в записи CNA. Нажмите имя, чтобы увидеть другие записи исследователя.
В записи CNA нет авторов.
Кандидаты в варианты
Тот же продукт, тот же класс уязвимости, в пределах 18 месяцев. Если патч не закрыл первопричину, родственная ошибка здесь.
Ночной расчёт связей ничего не нашёл.
Кандидаты в цепочки
Обход аутентификации и уязвимость, требующая привилегий, в одном продукте и близко по времени: вместе они могут дать путь без аутентификации.
—
Охват bug bounty
Известной публичной программы нет.
Источник: bounty-targets-data (публичные списки HackerOne, Bugcrowd, Intigriti, YesWeHack).
Технические детали
Условия атаки
- Может быть вызвана любым, у кого есть доступ через интернет.
- Учётная запись или пароль не требуются.
- Действия пользователя не требуются.
- Особые условия не требуются; воспроизводится стабильно.
В случае успеха
- Конфиденциальность
- высокое · данные могут быть прочитаны
- Целостность
- высокое · данные или конфигурация могут быть изменены
- Доступность
- высокое · работа сервиса может быть нарушена
- Вектор атаки
- Сеть
- Сложность атаки
- Низкая
- Требуемые привилегии
- Не требуются
- Взаимодействие с пользователем
- Не требуется
- Область действия
- Не изменяется
- Влияние на конфиденциальность
- Высокое
- Влияние на целостность
- Высокое
- Влияние на доступность
- Высокое
Класс уязвимости (CWE)
CWE-20 · Improper Input ValidationВектор CVSS
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
nvd-primary
Контекст атаки
Шаблоны атак MITRE CAPEC и техники ATT&CK для этого класса уязвимости (CWE). Отправная точка для правил обнаружения и threat hunting.
Шаблоны атак (CAPEC)
- Buffer Overflow via Environment VariablesCAPEC-10вероятность: High · High
- Server Side Include (SSI) InjectionCAPEC-101вероятность: High · High
- Cross Zone ScriptingCAPEC-104вероятность: Medium · High
- Command Line Execution through SQL InjectionCAPEC-108вероятность: Low · Very High
- Object Relational Mapping InjectionCAPEC-109вероятность: Low · High
- SQL Injection through SOAP Parameter TamperingCAPEC-110вероятность: High · Very High
- Double EncodingCAPEC-120вероятность: Low · Medium
- Subverting Environment Variable ValuesCAPEC-13вероятность: High · Very High
Техники ATT&CK
- Obfuscated Files or InformationT1027
- Masquerading: Invalid Code SignatureT1036.001
- Steal Web Session CookieT1539
- Subvert Trust Controls: Code SigningT1553.002
- Impair Defenses:Impair Command History LoggingT1562.003
- Hijack Execution Flow:Dynamic Linker HijackingT1574.006
- Hijack Execution Flow:Path Interception by PATH Environment VariableT1574.007
Анализ Noroxi
Анализа Noroxi для этой записи пока нет
Мы не пишем анализ вручную для всех 385 000+ уязвимостей; это было бы нечестно. Для значимых уязвимостей с реальным влиянием наша команда описывает механизм, обнаружение и устранение.
Мы используем этот продукт, нужна помощьЖурнал изменений
Изменений отслеживаемых полей пока нет. Здесь появятся изменения оценки, KEV, зрелости эксплойта и статуса исправления.
Источники
- struts.apache.org/docs/s2-048.html
- www.oracle.com/technetwork/security-advisory/alert-cve-2017-9805-3889403.html
- www.securityfocus.com/bid/99484
- www.securitytracker.com/id/1038838
- security.netapp.com/advisory/ntap-20180706-0002/
- www.exploit-db.com/exploits/42324/
- www.exploit-db.com/exploits/44643/
- www.cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2017-9791
Рекомендации вендоров и официальные записи. Ссылки на эксплойты/PoC намеренно исключены.