[PLURA V5] Spring Java 프레임워크 원격 코드 실행 공격 탐지 및 차단 필터 업데이트 제공 안내

  • 웹 방화벽 / 웹 / 시스템
    – 시스템 그룹별 사용자 필터 등록 후 차단 및 탐지 가능

[사진 1] 메뉴>필터>등록>웹방화벽 or 웹>등록

[사진 2] 메뉴>필터>등록>시스템>등록

  • Rule
    1. CVE-2022-22965
      • (?i:class\.module\.classloader\.resources\.context\.parent\.pipeline\.)
    2. CVE-2022-22963
      • (?i:.*\/functionrouter$)

[사진 3] 웹 방화벽 CVE-2022-22965 사용자 필터 등록 (Post-body, Request)

[사진 4] 웹 방화벽 CVE-2022-22963 사용자 필터 등록

  • Exploit
    1. CVE-2022-22965 [1]
      • curl -v -d “class.module.classLoader.resources.context.parent.pipeline.first.pattern=%{c2}i if(“j”.equals(request.getParameter(“pwd”))){ java.io.InputStream in = %{c1}i.getRuntime().exec(request.getParameter(“cmd”)) …… fileDateFormat=” http://localhost
    2. CVE-2022-22963 [2]
      • curl -i -s -k -X $’POST’ -H $’Host: 192.168.1.2:8080′ -H $’spring.cloud.function.routing-expression:T(java.lang.Runtime).getRuntime().exec(\”touch /tmp/test”)’ …… $’http://192.168.1.2:8080/functionRouter’
      • HTTP 요청 헤더에 주입 및 실행. 헤더 변조 로깅 가능한 경우, [spring.cloud.function.routing-expression] AND [functionRouter] 탐지 규칙 사용 권고
  • 영향을 받는 버전 [3]
    1. CVE-2022-22965(Spring4Shell)
      – 1) JDK 9 이상의 2) Spring 프레임워크 사용하는 경우
      – Spring Framework 5.3.0 ~ 5.3.17, 5.2.0 ~ 5.2.19 및 이전 버전
      ※ JDK 8 이하의 경우 취약점의 영향을 받지 않음
    2. CVE-2022-22963
      – Spring Cloud Function 3.1.6 ~ 3.2.2 버전
      ※ 취약점이 해결된 버전 제외(3.1.7, 3.2.3 업데이트 버전 제외
  • Spring4Shell 버전 확인 방법
    1. JDK 버전 확인
      – “java -version” 명령 입력
    2. Spring 프레임워크 사용 유무 확인
      – 프로젝트가 jar, war 패키지로 돼 있는 경우 zip 확장자로 변경하여 압축풀기
      이후 아래와 같이 “spring-beans-.jar”, “spring.jar”, “CachedIntrospectionResuLts.class” 로 검색find . -name spring-beans*.ja
  •  대응방안
    – 제조사 홈페이지를 통해 최신버전으로 업데이트 적용
    ※ 제조사 홈페이지에 신규버전이 계속 업데이트되고 있어 확인 후 업데이트 적용 필요
    1. CVE-2022-22965(Spring4Shell)
      Spring Framework 5.3.18, 5.2.20 버전으로 업데이트
    2. CVE-2022-22963
      Spring Cloud Function 3.1.7, 3.2.3 버전으로 업데이트

참고[1] https://www.haproxy.com/blog/april-2022-cve-2022-22965-spring4shell-remote-code-execution-mitigation/[2] https://sysdig.com/blog/cve-2022-22963-spring-cloud/[3] https://www.krcert.or.kr/data/secNoticeView.do?bulletin_writing_sequence=66592