Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
struts2-rce — Эксплуатируемая цель для CVE-2017-5638 | Kitploit
Инструменты/GitHubGitHub/sonatype-workshops/struts2-rce
Безопасность контейнеровАнализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийОбучение и ОбразованиеЛаборатории и Практика
GitHubsonatype-workshops/struts2-rce

struts2-rce

Эксплуатируемая цель для CVE-2017-5638

Репозиторий
54 лет назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

Эксплойт-демо для CVE-2017-5638

Полностью основан на https://github.com/piesecurity/apache-struts2-CVE-2017-5638

Реалистичный сценарий, в котором эталонный проект для фреймворка развернут на контейнере, но с ужасными последствиями. Чтобы ознакомиться, посмотрите на код и скомпилируйте его. Также изучите dockerfile — есть ли что-то конкретное, что привлекает наше внимание?

Показывает, как легко можно использовать повседневные решения и множественные уязвимости в цепочке.

Использование:

Предварительные требования:

  1. установлен JDK,
  2. установлен Docker, Docker Desktop для Mac или Win,
  3. желательно установлен Python (можно заменить на Jython).

Для подготовки:

  1. клонируйте этот репозиторий
  2. выполните ./mvnw clean package в корне проекта
  3. выполните docker build -t hackme \.
  4. выполните docker run -d -p 9080:8080 hackme
  5. после запуска контейнера проверьте, открыв в браузере http://localhost:9080

Примечание: если Docker не установлен, можно выполнить ./mvnw jetty:run

Чтобы начать тестирование RCE — запустите файл exploit.py:

  • выполните python exploit.py http://localhost:9080/orders/3 "CMD"
  • Если Python не установлен, используйте Jython Standalone и
    выполните java -jar jython*.jar exploit.py http://localhost:9080/orders/3 "CMD"

Попробуйте различные CMD, например:

  • pwd - где мы находимся?
  • whomai - под каким пользователем это выполняется?
  • ls -la - что в моей директории?
  • ls / - что представляет собой моя машина
  • ls /etc - что еще можно найти?

Как исправить!

Используйте панель информации о компонентах Nexus Lifecycle для определения не уязвимой версии struts2-core. Обновите POM до этой версии и пересоберите. Также можно пересобрать Docker-образ и запустить его, чтобы повторить атаку.

Также посмотрите Issues здесь, чтобы увидеть результаты DepShield

Оригинальный readme

https://github.com/apache/struts/tree/master/apps/rest-showcase

root@kitploit:~
README.txt - Rest Showcase Webapp

Rest Showcase is a simple example of REST app build with the REST plugin.

For more on getting started with Struts, see 

* http://cwiki.apache.org/WW/home.html

I18N:
=====
Please note that this project was created with the assumption that it will be run
in an environment where the default locale is set to English. This means that
the default messages defined in package.properties are in English. If the default
locale for your server is different, then rename package.properties to package_en.properties
and create a new package.properties with proper values for your default locale.
Скачать инструмент