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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
Apache-Solr-RCE-via-Velocity-template — Apache Solr의 Velocity 템플릿 주입을 통한 원격 코드 실행 취약점 익스플로잇으로, 조작된 POST 요청을 통해 취약한 인스턴스에서 명령어를 실행할 수 있게 해줍니다. | Kitploit
도구/GitHubGitHub/alewong/apache-solr-rce-via-velocity-template
Payload GenerationVulnerability AnalysisExploitationWeb Application ExploitationPenetration Testing
GitHubalewong/apache-solr-rce-via-velocity-template

Apache-Solr-RCE-via-Velocity-template

Apache Solr의 Velocity 템플릿 주입을 통한 원격 코드 실행 취약점 익스플로잇으로, 조작된 POST 요청을 통해 취약한 인스턴스에서 명령어를 실행할 수 있게 해줍니다.

저장소 보기

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
3596년 전Kitploit 검토 완료

Apache-Solr-RCE-via-Velocity-template

참고 링크

취약점 발생 원인:

  1. 공격자가 Solr 콘솔에 직접 접근할 수 있는 경우, /노드명/config 형식의 POST 요청을 보내 해당 노드의 구성 파일을 변경할 수 있습니다.
  2. Apache Solr는 기본적으로 VelocityResponseWriter 플러그인을 통합합니다. 해당 플러그인의 초기화 매개변수 중 params.resource.loader.enabled 옵션은 매개변수 리소스 로더가 Solr 요청 매개변수에서 템플릿을 지정하도록 허용할지 여부를 제어하며, 기본값은 false입니다. params.resource.loader.enabled를 true로 설정하면 사용자가 요청 매개변수를 통해 관련 리소스의 로드를 지정할 수 있습니다. 즉, 공격자는 위협적인 공격 요청을 구성하여 서버에서 명령을 실행할 수 있습니다.

취약점 재현: 재발 취약점

방법 1: 수동 점검 http://x.x.x.x:8983/solr/#/ 에 접속하여 메인 화면으로 이동한 뒤, 왼쪽의 Core Selector를 클릭하여 컬렉션 이름을 확인합니다.

step 1

다음 두 개의 payload를 사용합니다.

  1. 컬렉션 설정 변경 step 2

  2. 명령 실행 step 3 명령 실행 성공!

방법 2: 스크립트를 사용한 점검

  1. step4
  2. step5

취약점 수정 권장 사항:

  1. 네트워크 설정에서 신뢰할 수 있는 트래픽만 Solr와 통신할 수 있도록 허용하는 것이 좋습니다. 신뢰할 수 있는 트래픽만 Solr와 통신할 수 있도록 네트워크 설정을 구성하는 것이 좋습니다.
  2. params.resource.loader.enabled를 false로 지정한 다음, 구성 파일을 읽기 전용으로 설정합니다. params.resource.loader.enabled를 false로 지정한 후 구성 파일을 읽기 전용으로 설정합니다. 기본적으로 params.resource.loader.enabled는 false이며 구성 파일이 없습니다. 해당 값을 변경하거나 강제로 수정하려면 구성 파일이 필요합니다. 기본적으로 params.resource.loader.enabled는 false이며 구성 파일이 없습니다. 값을 변경하거나 강제로 수정하려면 파일을 구성해야 합니다. 기본적으로 node의 구성 파일 configoverlay.json은 읽기/쓰기 권한입니다. 기본적으로 node 구성 파일 configoverlay.json은 읽기/쓰기 권한 구성 파일입니다. 구성 파일 경로: (실제 상황에 따라 다름) 경로: (실제 상황에 따라 다름) ./example/example-DIH/solr/db/conf/configoverlay.json: ./example/example-DIH/solr/mail/conf/configoverlay.json: ./example/example-DIH/solr/solr/conf/configoverlay.json: 모든 configoverlay.json의 params.resource.loader.enabled를 false로 설정합니다. configoverlay.json이 없다면 수동으로 생성한 후 권한을 읽기 전용으로 설정하는 것이 좋습니다. configoverlay.json의 모든 params.resource.loader.enabled를 false로 설정합니다. configoverlay.json이 없는 경우 수동으로 생성한 후 해당 권한을 읽기 전용으로 설정하는 것이 좋습니다.

EXP 설명:

  1. 노드를 검색하고 POST할 수 있는 노드인지 반복적으로 판단해야 합니다. 노드를 검색하고 POST할 수 있는 노드를 확인해야 합니다.
  2. 운영 체제 버전을 확인한 후 명령을 입력하여 작업을 수행해야 합니다. 또한 운영 체제 버전을 확인한 후 작업을 수행할 명령을 입력해야 합니다.
도구 다운로드