Spring Framework RCE 취약점(CVE-2022-22965)이 2022년 3월 31일에 발표되었습니다.
취약점
Spring Framework는 IOC, AOP, MVC 및 기타 기능을 제공하는 오픈 소스 경량 J2EE 애플리케이션 개발 프레임워크입니다. Spring Framework는 프로그래머 개발에서 발생하는 일반적인 문제를 해결하고 응용 프로그램 개발의 편의성과 소프트웨어 시스템 구축 효율성을 향상시킬 수 있습니다.
이 취약점은 JDK 9+에서 실행되는 Spring MVC 및 Spring WebFlux 애플리케이션에 영향을 미칩니다. 특정 악용을 위해서는 응용 프로그램이 WAR 배포로 Tomcat에서 실행되어야 합니다. 응용 프로그램이 Spring Boot 실행 가능 jar, 즉 기본값으로 배포되는 경우 익스플로잇에 취약하지 않습니다.
다음은 보고서의 특정 시나리오에 대한 요구 사항입니다.
- JDK 9 이상
- Servlet 컨테이너로서의 Apache Tomcat
- 기존 WAR로 패키징됨(Spring Boot 실행 가능 jar와 달리)
- spring-webmvc 또는 spring-webflux 종속성
- Spring Framework 버전 5.3.0~5.3.17, 5.2.0~5.2.19 및 이전 버전
그러나 취약점의 특성은 보다 일반적이며 아직 보고되지 않은 다른 악용 방법이 있을 수 있습니다.
취약점 세부 정보:
- 취약성 수준: 위험
- 영향을 받는 버전:
스프링 프레임워크 5.3.x < 5.3.18
스프링 프레임워크 5.2.x < 5.2.20
- 보안 버전:
스프링 프레임워크 = 5.3.18
스프링 프레임워크 = 5.2.20
제안된 해결 방법
Spring Framework를 5.3.18, 5.2.20 이상 버전으로 업그레이드
CDNetworks는 Spring Framework RCE를 완화하기 위해 새로운 규칙을 배포했습니다.
CDNetworks 보안 팀은 이 고위험 취약점에 즉시 대응하고 2022년 3월 31일 제로 데이 CVE를 완화하기 위해 CDNetworks의 시스템 및 제품에 대한 새로운 WAF 규칙(9801,9802,9803)을 배포했습니다.
현재 사용중인 모든 고객 Application Shield 또는 WAF (웹 애플리케이션 방화벽) 새로운 규칙(9801,9802,9803)의 업데이트를 수신하고 CDNetworks의 포털에서 차단 모드를 활성화하여 CVE-2022-22965 익스플로잇 시도를 탐지하고 이 Zero Day CVE를 완화합니다.
규칙 ID | 규칙 이름 | 공격 유형 | 행동 |
9803 |
Spring4shell_3 |
타사 구성 요소 악용 |
차단하다 |
9802 |
Spring4shell_2 |
타사 구성 요소 악용 |
차단하다 |
9801 |
Sping4shell_1 |
타사 구성 요소 악용 |
차단하다 |
참조: https://spring.io/blog/2022/03/31/spring-framework-rce-early-announcement