Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
struts2-rce — CVE-2017-5638에 대한 익스플로잇 가능 대상 | Kitploit
도구/GitHubGitHub/sonatype-workshops/struts2-rce
Container SecurityVulnerability AnalysisExploitationWeb Application ExploitationLearning & EducationLabs & Practice
GitHubsonatype-workshops/struts2-rce

struts2-rce

CVE-2017-5638에 대한 익스플로잇 가능 대상

저장소 보기
4년 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2017-5638 익스플로잇 데모

전적으로 https://github.com/piesecurity/apache-struts2-CVE-2017-5638 기반입니다.

프레임워크의 참조 프로젝트가 컨테이너에 배포되지만 끔찍한 결과를 초래하는 현실적인 시나리오입니다. 익숙해지려면 코드를 살펴보고 컴파일하세요. 또한 dockerfile을 조사해 보세요 - 우리의 주의를 끌 만한 특별한 것이 있나요?

일상적인 결정과 체인으로 연결된 여러 취약점이 얼마나 쉽게 악용될 수 있는지 보여줍니다.

사용법:

전제 조건:

  1. JDK가 설치되어 있어야 합니다.
  2. Docker가 설치되어 있어야 합니다 (Mac 또는 Win용 Docker Desktop).
  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.
도구 다운로드