English Advisory →
CVE-2025-248139.8/CRITICALCISA KEV 등재CWE-44CWE-502CWE-502CWE-706

Apache Tomcat Default Servlet 경로 동치성(Path Equivalence) 취약점 기반 원격 코드 실행 및 정보 유출 (CVE-2025-24813)

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

실무자 핵심 요약 (Executive Summary)

SECOPS ASSESSMENT
영향 대상

Apache Tomcat 11.0.0-M1~11.0.2, 10.1.0-M1~10.1.34, 9.0.0.M1~9.0.98 및 지원 종료된 8.5.0~8.5.100 버전.

파급 효과

Default Servlet의 쓰기 권한이 활성화된 환경에서 공격자가 내부 점(Internal Dot) 경로 동치성 우회를 통해 민감한 파일에 악성 콘텐츠를 주입하거나, 세션 역직렬화 공격을 연계하여 원격 코드 실행(RCE)을 수행할 수 있습니다.

권장 조치

즉시 Apache Tomcat 공식 패치 버전(11.0.3, 10.1.35, 9.0.99 이상)으로 업그레이드하고, Default Servlet의 'readonly' 설정을 true(기본값)로 유지하십시오.

영향받는 제품 및 버전 범위

Apache Tomcat 11.0.0-M1 ~ 11.0.2 (11.0.3에서 해결) Apache Tomcat 10.1.0-M1 ~ 10.1.34 (10.1.35에서 해결) Apache Tomcat 9.0.0.M1 ~ 9.0.98 (9.0.99에서 해결) Apache Tomcat 8.5.0 ~ 8.5.100 (지원 종료 버전이나 영향 받음)

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

패치 및 우회 명령어

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

가장 확실한 해결책은 취약점이 해결된 최신 안정 버전으로 업그레이드하는 것입니다. 아래는 데비안/우분투 계열 및 RedHat 계열 시스템에서 Tomcat을 업그레이드하거나 수동 설치하는 예시 명령어입니다.

bash
# 1. 현재 실행 중인 Tomcat 버전 확인
/usr/share/tomcat/bin/version.sh

# 2. 최신 안전 버전 다운로드 및 압축 해제 (Tomcat 10.1.35 예시)
wget https://archive.apache.org/dist/tomcat/tomcat-10/v10.1.35/bin/apache-tomcat-10.1.35.tar.gz
tar -zxvf apache-tomcat-10.1.35.tar.gz -C /opt/

# 3. 심볼릭 링크 업데이트 및 서비스 재시작
ln -sfn /opt/apache-tomcat-10.1.35 /opt/tomcat
systemctl restart tomcat

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

즉각적인 패치가 어려운 경우, Tomcat의 전역 설정 파일인 web.xml에서 Default Servlet의 쓰기 권한을 비활성화(기본값은 비활성화 상태임)하여 공격 벡터를 차단해야 합니다.

xml
<!-- /opt/tomcat/conf/web.xml 파일 수정 -->
<servlet>
    <servlet-name>default</servlet-name>
    <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
    <init-param>
        <param-name>debug</param-name>
        <param-value>0</param-value>
    </init-param>
    <!-- readonly 설정을 반드시 true로 지정하여 쓰기 권한(PUT/DELETE)을 차단합니다 -->
    <init-param>
        <param-name>readonly</param-name>
        <param-value>true</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>

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

Tomcat 액세스 로그에서 비정상적인 PUT 요청이나 세션 저장소 경로를 표적으로 하는 비정상적인 파일 생성 시도를 탐지하는 스크립트입니다.

bash
# Tomcat 액세스 로그에서 PUT 및 DELETE 요청 패턴 분석
grep -Ei '"(PUT|DELETE) .* HTTP/' /var/log/tomcat*/localhost_access_log*.txt

# 세션 저장소 디렉터리 내에 비정상적인 세션 파일(.session)이 생성되었는지 점검
find /var/lib/tomcat*/work/ -name '*.session' -mtime -7 -ls
실무자 패치 대응 자가 점검 체크리스트
0/4 (0%)
권장 아키텍처 방어 통제 (Recommended Security Control)
Cloudflare Enterprise & Pro WAF
Default Servlet의 'readonly' 파라미터가 'false'로 설정되어 있는지 즉시 점검하고, 신속히 Tomcat 11.0.3, 10.1.35, 9.0.99 이상 버전으로 업그레이드를 완료하십시오.

코드 수정 전에도 가상 패치(Virtual Patching)로 웹 공격을 즉시 차단하세요

서버 재시작이나 긴급 패치가 어려운 운영 환경이라면 클라우드 WAF 관리형 룰셋을 활성화하여 SQLi, RCE, XSS 익스플로잇 페이로드를 엣지에서 1분 만에 차단할 수 있습니다.

평균 설정 시간 3분 · Zero-Day 자동 룰 업데이트
이 웹 취약점(WAF 우회 & RCE)을 안전한 실습 랩에서 직접 재현해 보세요
실습 랩 & 보안 강의 보러가기

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

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

본 취약점(CVE-2025-24813)은 Apache Tomcat의 Default Servlet에서 파일 이름을 처리할 때 발생하는 경로 동치성(Path Equivalence, CWE-706) 검증 미흡으로 인해 발생합니다. 특정 운영체제나 파일 시스템 환경에서 파일 이름 내부에 포함된 점('file.Name' 형태의 Internal Dot)이 경로 해석 과정에서 비정상적으로 처리되어, 애플리케이션이 의도한 디렉터리 경계를 우회할 수 있게 됩니다. 이로 인해 공격자는 쓰기 권한이 활성화된 Default Servlet을 악용하여 임의의 파일 경로에 접근하거나 데이터를 덮어쓸 수 있는 권한을 획득하게 됩니다.

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

공격 시나리오는 크게 두 가지 형태로 나뉩니다.

시나리오 A: 정보 유출 및 파일 변조

  • Default Servlet의 쓰기 권한('readonly' 파라미터가 false)이 활성화되어 있고, 부분 업로드(Partial PUT)가 허용된 상태여야 합니다.
  • 공격자는 공개 업로드 디렉터리의 하위 경로에 존재하는 민감한 업로드 대상 디렉터리 경로를 파악합니다.
  • 경로 동치성 우회 기법과 Partial PUT 요청을 조합하여, 공격자가 타깃으로 삼은 민감한 파일의 이름을 지정하고 악성 콘텐츠를 강제로 주입하거나 덮어씁니다.

시나리오 B: 원격 코드 실행 (RCE)

  • Default Servlet의 쓰기 권한이 활성화되어 있고, Partial PUT이 허용된 상태여야 합니다.
  • Tomcat 애플리케이션이 기본 저장소 위치를 사용하는 파일 기반 세션 지속성(File-based Session Persistence)을 활성화한 상태여야 합니다.
  • 대상 애플리케이션 내에 역직렬화 가젯으로 악용 가능한 취약한 라이브러리(예: 특정 버전의 Commons Collections 등)가 포함되어 있어야 합니다.
  • 공격자는 세션 파일 저장 경로에 Partial PUT을 통해 조작된 직렬화 객체(Payload)를 주입한 후, 해당 세션 ID로 요청을 전송하여 역직렬화 공격(CWE-502)을 유발하고 최종적으로 원격 코드를 실행합니다.

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

본 취약점은 CVSS 9.8의 치명적(Critical) 등급으로 평가되었으며, 실제 공격에 악용될 수 있는 KEV(Known Exploited Vulnerabilities) 목록에 등재되었습니다. 공격자가 이 취약점을 성공적으로 악용할 경우, 웹 서버의 권한으로 임의의 시스템 명령을 실행하여 데이터베이스 자격 증명 탈취, 내부망 침투, 랜섬웨어 유포 등 기업 인프라 전체를 장악할 수 있는 심각한 비즈니스 중단 위험을 초래합니다.

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

NIST NVD 공식 영문 원문 (Original Record)

Path Equivalence: 'file.Name' (Internal Dot) leading to Remote Code Execution and/or Information disclosure and/or malicious content added to uploaded files via write enabled Default Servlet in Apache Tomcat. This issue affects Apache Tomcat: from 11.0.0-M1 through 11.0.2, from 10.1.0-M1 through 10.1.34, from 9.0.0.M1 through 9.0.98. The following versions were EOL at the time the CVE was created but are known to be affected: 8.5.0 though 8.5.100. Other, older, EOL versions may also be affected. If all of the following were true, a malicious user was able to view security sensitive files and/or inject content into those files: - writes enabled for the default servlet (disabled by default) - support for partial PUT (enabled by default) - a target URL for security sensitive uploads that was a sub-directory of a target URL for public uploads - attacker knowledge of the names of security sensitive files being uploaded - the security sensitive files also being uploaded via partial PUT If all of the following were true, a malicious user was able to perform remote code execution: - writes enabled for the default servlet (disabled by default) - support for partial PUT (enabled by default) - application was using Tomcat's file based session persistence with the default storage location - application included a library that may be leveraged in a deserialization attack Users are recommended to upgrade to version 11.0.3, 10.1.35 or 9.0.99, which fixes the issue.

자주 묻는 실무 질문 (FAQ — CVE-2025-24813)

FAQ

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

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

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

주요 영향 벤더는 apache이며, 대상 컴포넌트는 tomcat입니다. 상세 영향 범위: Apache Tomcat 11.0.0-M1 ~ 11.0.2 (11.0.3에서 해결) Apache Tomcat 10.1.0-M1 ~ 10.1.34 (10.1.35에서 해결) Apache Tomcat 9.0.0.M1 ~ 9.0.98 (9.0.99에서 해결) Apache Tomcat 8.5.0 ~ 8.5.100 (지원 종료 버전이나 영향 받음)

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

[권장 조치] 즉시 Apache Tomcat 공식 패치 버전(11.0.3, 10.1.35, 9.0.99 이상)으로 업그레이드하고, Default Servlet의 'readonly' 설정을 true(기본값)로 유지하십시오. 본문의 패치 및 우회 명령어 섹션과 자가 점검 체크리스트를 참고하여 외부 노출 포트를 차단하거나 WAF 탐지 규칙을 선적용하십시오.

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

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

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

보고서 초안 생성하기 →

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

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

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

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

Slack / Teams / RSS 리더 연동:
패치 명령EN