English Advisory →
CVE-2025-248939.8/CRITICALCISA KEV 등재CWE-95CWE-94

XWiki Platform SolrSearch 원격 코드 실행(RCE) 취약점 보안 권고 (CVE-2025-24893)

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

실무자 핵심 요약 (Executive Summary)

SECOPS ASSESSMENT
영향 대상

XWiki 15.10.11 미만, 16.4.1 미만, 16.5.0RC1 미만 버전

파급 효과

인증되지 않은 외부 공격자가 SolrSearch API를 통해 임의의 Groovy 스크립트를 실행하여 서버 제어권을 완전히 탈취할 수 있습니다.

권장 조치

신속히 공식 패치 버전(15.10.11, 16.4.1, 16.5.0RC1 이상)으로 업그레이드하거나 임시 완화 조치를 적용하십시오.

영향받는 제품 및 버전 범위

XWiki Platform 15.10.11 미만, 16.4.1 미만, 16.5.0RC1 미만 버전

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

패치 및 우회 명령어

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

가장 안전한 해결책은 취약점이 해결된 공식 버전으로 업그레이드하는 것입니다.

bash
# Debian/Ubuntu 계열 시스템에서 APT 패키지 매니저를 사용하는 경우
sudo apt-get update
sudo apt-get --only-upgrade install xwiki-tomcat9-common -y

# Docker 환경을 사용하는 경우 Dockerfile 또는 docker-compose.yml의 태그를 최신 패치 버전으로 변경
# 예: xwiki:16.4.1-postgres-tomcat
docker pull xwiki:16.4.1-postgres-tomcat
docker-compose up -d

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

즉각적인 업그레이드가 어려운 경우, SolrSearchMacros.xml 파일을 직접 수정하여 취약한 출력을 방어할 수 있습니다.

bash
# XWiki 설치 경로 내 SolrSearchMacros.xml 파일의 955번째 라인 부근을 수정합니다.
# 단순히 피드 콘텐츠를 직접 출력하는 대신, macros.vm의 rawResponse 매크로를 사용하여 application/xml 타입으로 출력하도록 변경합니다.

# [수정 전]
# $response.setContentLength($content.length())
# $response.write($content)

# [수정 후 (macros.vm#L2824 참조)]
# #set($discard = $response.setContentType('application/xml'))
# $services.rendering.render($doc.getDocumentReference(), 'xhtml')

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

웹 서버 액세스 로그에서 악성 페이로드 유입 여부를 점검하는 스크립트입니다.

bash
# Nginx 또는 Apache 액세스 로그에서 SolrSearch RCE 시도 흔적 검색
grep -Ei 'SolrSearch.*media=rss.*(groovy|async|velocity)' /var/log/nginx/access.log /var/log/apache2/access.log 2>/dev/null

# 취약점 테스트용 curl 명령 실행 (자사 인프라 진단용)
curl -s -G 'http://localhost:8080/xwiki/bin/get/Main/SolrSearch' \
  --data-urlencode 'media=rss' \
  --data-urlencode 'text=}}}{{async async=false}}{{groovy}}println("Vulnerable_Check:" + (20+22)){{/groovy}}{{/async}}' \
  | grep -q 'Vulnerable_Check:42' && echo '[ALERT] 이 인스턴스는 CVE-2025-24893에 취약합니다!' || echo '[INFO] 안전하거나 패치되었습니다.'
실무자 패치 대응 자가 점검 체크리스트
0/4 (0%)
권장 아키텍처 방어 통제 (Recommended Security Control)
Cloudflare Enterprise & Pro WAF
CISA KEV에 등록되어 실제 공격에 악용되고 있는 취약점이므로, 즉시 패치 버전을 적용하거나 임시 완화 조치를 수행하십시오.

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

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

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

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

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

본 취약점은 XWiki 플랫폼의 SolrSearch 구성 요소에서 발생하는 원격 코드 실행(RCE) 취약점입니다. XWiki는 사용자 검색 편의성을 위해 Solr 기반의 검색 엔진을 내장하고 있으며, RSS 피드 형식(media=rss)으로 검색 결과를 출력하는 기능을 제공합니다. 이 과정에서 Main.SolrSearchMacros 템플릿이 사용자로부터 입력받은 검색어(text 파라미터)를 적절한 이스케이프 처리나 검증 없이 렌더링 엔진에 전달함으로써, Velocity 및 Groovy 매크로 인젝션이 발생합니다.

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

공격자는 인증을 거치지 않은 상태(Guest 권한)에서 Main/SolrSearch 엔드포인트에 특수하게 조작된 쿼리 매개변수를 전송합니다. 공격 페이로드는 XWiki의 렌더링 구문인 }}를 사용하여 기존 컨텍스트를 닫은 후, 비동기 실행 블록({{async}}) 내에 임의의 스크립트 실행 블록({{groovy}})을 주입하는 방식을 취합니다. 렌더링 엔진은 이 주입된 블록을 신뢰할 수 있는 내부 코드로 오인하여 실행하며, 그 결과로 반환된 임의의 연산 결과나 시스템 명령 실행 출력이 RSS 피드 응답에 그대로 포함되어 반환됩니다.

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

이 취약점은 CVSS 9.8의 치명적(Critical) 등급으로 평가되었으며, CISA KEV(실제 악용된 취약점 목록)에 등재되어 실질적인 위협이 입증되었습니다. 공격자는 인증 없이 원격에서 시스템 명령을 실행할 수 있으므로, 데이터베이스 내의 민감 정보 탈취, 위키 콘텐츠 변조, 내부 네트워크 침투를 위한 거점 확보(Lateral Movement) 등 인프라 전반에 걸쳐 심각한 비즈니스 중단 및 데이터 유출 사고를 야기할 수 있습니다.

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

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

XWiki Platform is a generic wiki platform offering runtime services for applications built on top of it. Any guest can perform arbitrary remote code execution through a request to `SolrSearch`. This impacts the confidentiality, integrity and availability of the whole XWiki installation. To reproduce on an instance, without being logged in, go to `<host>/xwiki/bin/get/Main/SolrSearch?media=rss&text=%7D%7D%7D%7B%7Basync%20async%3Dfalse%7D%7D%7B%7Bgroovy%7D%7Dprintln%28"Hello%20from"%20%2B%20"%20search%20text%3A"%20%2B%20%2823%20%2B%2019%29%29%7B%7B%2Fgroovy%7D%7D%7B%7B%2Fasync%7D%7D%20`. If there is an output, and the title of the RSS feed contains `Hello from search text:42`, then the instance is vulnerable. This vulnerability has been patched in XWiki 15.10.11, 16.4.1 and 16.5.0RC1. Users are advised to upgrade. Users unable to upgrade may edit `Main.SolrSearchMacros` in `SolrSearchMacros.xml` on line 955 to match the `rawResponse` macro in `macros.vm#L2824` with a content type of `application/xml`, instead of simply outputting the content of the feed.

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

FAQ

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

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

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

주요 영향 벤더는 xwiki이며, 대상 컴포넌트는 xwiki-platform입니다. 상세 영향 범위: XWiki Platform 15.10.11 미만, 16.4.1 미만, 16.5.0RC1 미만 버전

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

[권장 조치] 신속히 공식 패치 버전(15.10.11, 16.4.1, 16.5.0RC1 이상)으로 업그레이드하거나 임시 완화 조치를 적용하십시오. 본문의 패치 및 우회 명령어 섹션과 자가 점검 체크리스트를 참고하여 외부 노출 포트를 차단하거나 WAF 탐지 규칙을 선적용하십시오.

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

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

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

보고서 초안 생성하기 →

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

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

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

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

Slack / Teams / RSS 리더 연동:
패치 명령EN
CVE-2025-24893 XWiki Platform SolrSearch 원격 코드 실행(RCE) 취약점 보안 권고 (CVE-2025-24893) (CVSS 9.8) - 패치 및 보안 권고 | CVE Pulse