본문 바로가기

java/spring

spring4shell 취약점 내용 정리

spring4Shell

Spring4Shell은 Spring Core 프레임워크에서 발견된 새로운 제로데이 취약점이다.

해당 취약점 이슈는 애플리케이션에서 인증되지 않은 원격 코드 실행(Remote Code Execution, RCE)을 허용하는 것으로 나타났다.

3월 29일 CVE-2022-22963으로 추적된 새로운 Spring Cloud Function 취약성이 공개 되었다.

그러나 더 중요한 Spring Core RCE 취약성에 대한 정보가 중국 사이트에 유포되었다.

발생의 원인은 안전하지 않은 역직렬화에 의해 발생한다고 한다.

해당 이슈에 대해 잘 정리된 포스팅을 첨부한다

https://github.com/lunasec-io/lunasec/blob/master/docs/blog/2022-03-30-spring-core-rce.mdx#spring4shell

취약점 이슈 내용 

22년 3월 29일, CVE-2022-22963

22년 3월 31일, CVE-2022-22965

  • JDK 9+ 에서 실행되는 Spring MVC 또는 Spring WebFlux 애플리케이션은 데이터 바인딩을 통한 원격 코드 실행(RCE)에 취약할 수 있다.
  • 특정 취약점을 이용하려면 Tomcat에서 WAR 배포로 실행해야 한다.
  • Jar 배포의 경우 취약점에 해당하지 않지만 취약점의 특성은 보다 일반적이며 이를 악용하는 다른 방법이 있을 수 있다.
  • 취약점 대상
    • JDK 9 +
    • Apache Tomcat as the Servlet Container
    • Packaged as WAR
    • spring-webmvc or spring-webflux dependency
  • 취약점 내용

대상 버전

  • Spring Framework
    • 5.3.0 ~ 5.3.17
      • 5.2.0 ~ 5.2.19
      • 그 이하 버전

'java > spring' 카테고리의 다른 글

[security] 스프링 시큐리티 기능 정리  (0) 2022.04.14
Spring Scheduler  (0) 2022.03.18