English Advisory →
CVE-2022-229639.8/CRITICALCISA KEV 등재CWE-94CWE-917

Spring Cloud Function SpEL 주입 기반 원격 코드 실행(RCE) 취약점 (CVE-2022-22963)

⚡ 패치 명령어 바로가기
영향받는 벤더 / 생태계
vmware, spring
대상 컴포넌트 / 패키지
spring_cloud_function
권고문 발행일
2022-04-01
CVSS v3.1
9.8
CRITICAL
30일 악용확률
99.9%
FIRST.org
CISA KEV
악용 확인됨

실무자 핵심 요약 (Executive Summary)

SECOPS ASSESSMENT
영향 대상

Spring Cloud Function 3.1.6 및 3.2.2 이하 버전 (지원 종료된 구버전 포함)

파급 효과

인증되지 않은 원격 공격자가 HTTP 헤더를 통해 악의적인 SpEL 표현식을 주입하여 대상 서버에서 임의의 시스템 명령을 실행하고 로컬 리소스에 무단 접근할 수 있습니다.

권장 조치

Spring Cloud Function 버전을 3.1.7, 3.2.3 이상으로 즉시 업그레이드하고, 패치 적용 전까지 WAF 규칙을 통해 관련 HTTP 헤더 유입을 차단하십시오.

영향받는 제품 및 버전 범위

Spring Cloud Function 3.1.6 이하 버전, 3.2.2 이하 버전 및 지원이 종료된 모든 구버전

권장 패치 및 임시 완화(Workaround) 가이드

패치 및 우회 명령어

1. 공식 보안 패치 및 버전 업그레이드 명령어

Spring Cloud Function 버전을 안전한 최신 버전(3.1.7 이상 또는 3.2.3 이상)으로 업그레이드해야 합니다. Maven 또는 Gradle 빌드 설정 파일을 수정하여 의존성을 갱신하십시오.

Maven ('pom.xml') 설정 예시:

xml
<!-- pom.xml 의존성 버전 업데이트 -->
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-function-context</artifactId>
    <version>3.2.3</version>
</dependency>

Gradle ('build.gradle') 설정 예시:

groovy
// build.gradle 의존성 버전 업데이트
dependencies {
    implementation 'org.springframework.cloud:spring-cloud-function-context:3.2.3'
}

2. 패치 전 임시 완화(Workaround) 및 접근 제어 설정

즉각적인 패치 적용이 어려운 경우, 웹 애플리케이션 방화벽(WAF) 또는 리버스 프록시(Nginx 등)에서 취약한 헤더가 포함된 요청을 차단하도록 규칙을 설정하십시오.

Nginx 설정 예시:

nginx
# Nginx 설정 파일에 라우팅 헤더 차단 규칙 추가
server {
    listen 80;
    server_name localhost;

    # spring.cloud.function.routing-expression 헤더가 포함된 요청 차단
    if ($http_spring_cloud_function_routing_expression ~* ".*") {
        return 403 'Forbidden: Invalid Request Header';
    }

    location / {
        proxy_pass http://backend_servers;
    }
}

3. 침해 흔적(IoC) 및 로그·버전 점검 스크립트

애플리케이션 서버의 HTTP 요청 로그에서 'spring.cloud.function.routing-expression' 헤더가 포함된 비정상적인 요청이나 'Runtime.getRuntime().exec'와 같은 문자열이 포함된 로그가 존재하는지 점검하십시오.

Linux 터미널에서 로그 분석 및 버전 확인 명령어:

bash
# 1. 애플리케이션 로그에서 의심스러운 SpEL 주입 패턴 검색
grep -ri 'spring.cloud.function.routing-expression' /var/log/nginx/ /var/log/tomcat/ 2>/dev/null

# 2. 실행 중인 자바 프로세스의 클래스패스에서 취약한 라이브러리 버전 확인
find / -name 'spring-cloud-function-*.jar' 2>/dev/null
실무자 패치 대응 자가 점검 체크리스트
0/4 (0%)
권장 아키텍처 방어 통제 (Recommended Security Control)
Snyk Open Source & Container Security
실제 공격에 악용되고 있는 치명적인 취약점이므로, Spring Cloud Function 의존성을 즉시 3.1.7 / 3.2.3 이상 버전으로 업그레이드하십시오.

내 GitHub/GitLab 레포지토리에 이 취약한 패키지가 숨어 있는지 30초 만에 스캔하세요

간접 의존성(Transitive Dependency)에 포함된 취약점은 수동 확인이 불가능합니다. Git 연동 한 번으로 취약 버전 탐지부터 호환성을 유지하는 최소 버전 업그레이드 PR까지 자동 생성하세요.

무료 플랜 지원 · GitHub/GitLab 1클릭 연동
CI/CD 파이프라인에 자동 보안 스캐닝(SAST/SCA) 구축하는 실전 강의
커리큘럼 확인하기

취약점 발생 원리 및 공격 메커니즘

1. 취약점 개요 및 발생 원인 (Root Cause)

본 취약점은 Spring Cloud Function 프레임워크의 라우팅(Routing) 기능에서 발생합니다. Spring Cloud Function은 HTTP 요청 헤더 중 'spring.cloud.function.routing-expression' 값을 통해 동적으로 실행할 함수를 결정하는 라우팅 기능을 제공합니다. 이 과정에서 입력값에 대한 적절한 검증이나 샌드박싱 없이 Spring Expression Language (SpEL) 엔진이 해당 헤더 값을 직접 파싱하고 평가(Evaluation)하도록 설계되어 있어, 공격자가 임의의 SpEL 구문을 주입할 수 있는 취약점(CWE-94, CWE-917)이 발생합니다.

2. 공격 메커니즘 및 익스플로잇 시나리오

공격자는 대상 서버의 라우팅 엔드포인트(예: '/functionRouter')로 HTTP POST 요청을 전송하면서, 'spring.cloud.function.routing-expression' 헤더에 악의적인 SpEL 표현식을 삽입합니다. SpEL 엔진은 자바 클래스 및 메서드에 대한 직접적인 접근을 허용하므로, 공격자는 'T(java.lang.Runtime).getRuntime().exec()'와 같은 표준 자바 리플렉션 API를 호출하는 구문을 헤더에 주입할 수 있습니다. 서버가 이 요청을 처리하는 즉시 주입된 SpEL이 실행되어, 공격자가 의도한 OS 명령어가 대상 서버의 권한으로 백그라운드에서 실행됩니다.

3. 비즈니스 및 인프라 파급 영향

본 취약점은 CVSS 9.8의 치명적(Critical) 등급으로 분류되며, CISA KEV(Known Exploited Vulnerabilities) 목록에 등재되어 실제 공격에 활발히 악용되고 있습니다. 공격자는 인증 없이 네트워크를 통해 원격으로 코드를 실행할 수 있으므로, 취약한 서버의 제어권을 완전히 탈취할 수 있습니다. 이를 통해 내부망 침투, 데이터베이스 자격 증명 탈취, 랜섬웨어 유포, 또는 암호화폐 채굴 봇넷에 서버를 가담시키는 등 기업 인프라 전반에 걸쳐 심각한 비즈니스 중단 및 데이터 유출 사고를 유발할 수 있습니다.

공식 보안 권고문 및 참조 링크

자주 묻는 실무 질문 (FAQ — CVE-2022-22963)

FAQ

Q1. CVE-2022-22963 취약점의 위험도와 실제 악용 가능성은 어느 정도입니까?

CVE-2022-22963의 기본 점수는 CVSS 9.8 (CRITICAL)이며, 향후 30일 내 실제 악용 확률을 나타내는 EPSS 점수는 99.9%입니다. 현재 미국 CISA KEV(실제 악용이 확인된 취약점 카탈로그)에 등재되어 있으므로 최우선 긴급 패치가 필요합니다.

Q2. CVE-2022-22963에 영향을 받는 벤더와 제품은 무엇입니까?

주요 영향 벤더는 vmware, spring이며, 대상 컴포넌트는 spring_cloud_function입니다. 상세 영향 범위: Spring Cloud Function 3.1.6 이하 버전, 3.2.2 이하 버전 및 지원이 종료된 모든 구버전

Q3. 서버 재기동이나 정규 패치 전 즉시 적용할 수 있는 완화 조치(Workaround)는 무엇입니까?

[권장 조치] Spring Cloud Function 버전을 3.1.7, 3.2.3 이상으로 즉시 업그레이드하고, 패치 적용 전까지 WAF 규칙을 통해 관련 HTTP 헤더 유입을 차단하십시오. 본문의 패치 및 우회 명령어 섹션과 자가 점검 체크리스트를 참고하여 외부 노출 포트를 차단하거나 WAF 탐지 규칙을 선적용하십시오.

실무자 보고서 워크벤치 연동

CVE-2022-22963 사내 보안 패치 공지문 · CISO 경영진 보고서 초안 자동 생성

클릭 한 번으로 사내 이메일·노션·결재 문서에 바로 붙여넣을 수 있는 공식 보고서 양식을 생성합니다.

보고서 초안 생성하기 →

🔗 함께 점검해야 할 동일 벤더·스택 연관 취약점 (vmware)

동일 카테고리 전체 보기 →
SecOps Advisory Dispatch & RSS Feed

일간 취약점 브리핑 및 긴급 Zero-Day 경보 구독

보안 실무자와 인프라·백엔드 엔지니어를 위해 매일 아침 주요 취약점과 패치 우선순위를 요약해 발송합니다.

Slack / Teams / RSS 리더 연동:
패치 명령EN
CVE-2022-22963 Spring Cloud Function SpEL 주입 기반 원격 코드 실행(RCE) 취약점 (CVE-2022-22963) (CVSS 9.8) - 패치 및 보안 권고 | CVE Pulse