
격리된 환경에서 CVE-2022-22965(Spring4Shell) 취약점을 악용하기 위한 개념 증명(PoC)이며, 원격 코드 실행(RCE)이 시연됩니다.
Apache Tomcat에 배포된 취약한 Spring Framework 애플리케이션을 대상으로 **원격 코드 실행(RCE)**을 유발하는 Spring4Shell(CVE-2022-22965) 악용 과정을 시연하는 완전히 컨테이너화된 **개념 증명(PoC)**입니다.
이 프로젝트는 안전하고 재현 가능한 실험실 환경에서 보안 연구, 침투 테스트 실습, 취약점 분석, 방어 학습을 돕기 위해 완전한 취약 환경을 재현합니다.
면책 조항
이 저장소는 교육, 연구 및 승인된 보안 테스트 목적으로만 제공됩니다. 취약한 환경은 의도적으로 안전하지 않게 구성되어 있으며 반드시 격리된 실험실 조건에서만 실행해야 합니다. 저자는 이 프로젝트의 오용 또는 사용으로 인해 발생하는 어떠한 손상에 대해서도 책임을 지지 않습니다.
Spring4Shell(CVE-2022-22965)은 특정 런타임 조건에서 Apache Tomcat에 배포된 특정 버전의 Spring Framework에 영향을 미치는 치명적인 원격 코드 실행 취약점입니다.
이 저장소는 연구자와 학생이 다음 사항을 이해할 수 있도록 완전히 재현 가능한 실험실 환경을 제공합니다:
애플리케이션은 Docker 컨테이너 내부에 완전히 격리되어 호스트 운영 체제에 영향을 주지 않고 실험할 수 있습니다.
| 구성 요소 | 버전 | 설명 |
|---|---|---|
| Spring Boot | 2.6.2 | 취약한 애플리케이션 |
| Spring Framework | 5.3.14 | 취약한 버전 |
| Apache Tomcat | 9.0.60 | 서블릿 컨테이너 |
| Java | JDK 11 | 필수 런타임 |
| 운영 체제 | Ubuntu 24.04 | Docker 컨테이너 |
.
├── Dockerfile
├── pom.xml
├── src/
│ ├── main/
│ └── test/
├── README.md
└── exploit/
git clone https://github.com/<username>/<repository>.git
cd <repository>
docker build -t spring4shell:2.6.2 .
docker run -p 8080:8080 spring4shell:2.6.2
애플리케이션은 다음 주소에서 사용할 수 있습니다:
http://localhost:8080
이 저장소는 전체 공격 체인을 보여줍니다:
이 프로젝트는 다음과 같은 몇 가지 중요한 공격 보안 개념을 다룹니다:
CVE-2022-22965를 완화하려면:
⭐ 이 프로젝트가 학습이나 보안 연구에 유용하다고 생각되면, 스타를 남겨 주세요 ⭐