
WordPress용 Backup Migration 플러그인은 1.3.7까지의 모든 버전에서 /includes/backup-heart.php 파일을 통해 원격 코드 실행(RCE)에 취약합니다.
CVE-2023-6553에 대한 개념 증명 익스플로잇 — WordPress "Backup Migration" 플러그인(버전 ≤ 1.3.7)의 치명적인 인증되지 않은 RCE 취약점입니다.
| 속성 | 세부 정보 |
|---|---|
| CVE ID | CVE-2023-6553 |
| CVSS 점수 | 9.8 / 10 — 치명적 |
| CVSS 벡터 | AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| CWE | CWE-94 — 코드 생성 제어 미흡 |
| 영향받는 플러그인 | Backup Migration (슬러그: backup-backup) |
| 영향받는 버전 | ≤ 1.3.7 |
| 인증 | 필요 없음 (인증되지 않음) |
| 발견자 | Wordfence |
WordPress용 Backup Migration 플러그인은 버전 1.3.7까지 /includes/backup-heart.php 파일을 통해 원격 코드 실행에 취약합니다.
이 취약점은 공격자가 Content-Dir HTTP 헤더를 통해 PHP include 문에 전달되는 값을 제어할 수 있기 때문에 존재합니다. PHP 필터 체인을 활용하면 공격자는 인증 없이 임의의 PHP 코드를 주입하여 서버에서 완전한 원격 코드 실행을 달성할 수 있습니다.
┌──────────┐ Content-Dir Header ┌──────────────────────┐ include() ┌──────────┐
│ Attacker │ ──── PHP Filter Chain ──▶│ backup-heart.php │ ──────────────▶ │ RCE │
│ │ (no auth needed) │ (vulnerable file) │ │ on Host │
└──────────┘ └──────────────────────┘ └──────────┘
readme.txt를 통해 설치된 플러그인 버전 탐지Content-Dir 헤더로 구성된 체인 전송.
├── exploit.py # 🎯 깔끔하고 전문적인 익스플로잇 (자세한 출력 모드 지원)
├── fancy_exploit.py # ✨ 화려한 버전 — 동일한 익스플로잇, 더 나은 분위기
├── php_filter_chain.py # 🔗 PHP 필터 체인 생성기 모듈
└── README.md # 📖 지금 보고 계신 파일입니다
exploit.py — 전문 익스플로잇보안 평가 및 사례 연구에서 전문적으로 사용하도록 설계된 기본적이고 깔끔한 익스플로잇 스크립트입니다. 특징:
-v)-C)fancy_exploit.py — 화려한 버전 ✨동일한 익스플로잇에 개성을 더한 표현적인 버전입니다. exploit.py와 기능적으로 동일하지만 훨씬 화려한 프레젠테이션을 제공합니다:
참고: 두 스크립트는 동일한 공격 로직을 공유합니다 —
fancy_exploit.py는 단순히 더 시각적으로 표현적인 출력 레이어로 경험을 감싸줍니다.
pip 패키지 관리자# 저장소 클론
git clone https://github.com/<your-username>/CVE-2023-6553.git
cd CVE-2023-6553
# 의존성 설치
pip install -r requirements.txt
참고:
php_filter_chain.py는 저장소에 포함된 로컬 모듈입니다 — 추가 설치가 필요하지 않습니다.
exploit.py
# 대상이 취약한지 확인 (정찰만)
python3 exploit.py -u http://target.com -C
# 익스플로잇 및 명령 실행
python3 exploit.py -u http://target.com -c id
# 먼저 취약점 확인 후 익스플로잇
python3 exploit.py -u http://target.com -C -c whoami
# 자세한 출력을 위한 verbose 모드
python3 exploit.py -u http://target.com -c id -v
fancy_exploit.py
# 대상이 취약한지 확인
python3 fancy_exploit.py -u http://target.com -C
# 익스플로잇 및 명령 실행
python3 fancy_exploit.py -u http://target.com -c id
# 먼저 확인 후 취약하면 익스플로잇
python3 fancy_exploit.py -u http://target.com -C -c whoami
Content-Dir 헤더를 차단하는 웹 애플리케이션 방화벽(WAF) 규칙을 구현합니다이 도구는 허가된 보안 테스트 및 교육 목적으로만 제공됩니다.
컴퓨터 시스템에 대한 무단 접근은 컴퓨터 사기 및 남용 법률(CFAA), 컴퓨터 남용법 및 전 세계 유사 법률에 따라 불법입니다. 저자는 이 소프트웨어의 오용에 대해 어떠한 책임도 지지 않습니다.
소유했거나 명시적 서면 승인을 받은 시스템에 대해서만 이 도구를 사용하십시오.
저자: Phantom Hat
허가된 침투 테스트 및 보안 연구 전용입니다.
| 플래그 | 설명 |
|---|
-u, --url | (필수) 대상 WordPress URL |
-c, --command | 익스플로잇 후 실행할 OS 명령 |
-C, --check | 익스플로잇 없이 취약점 상태 확인 |
-v, --verbose | 자세한 출력 활성화 (exploit.py만 해당) |
| 단계 | 이름 | 설명 |
|---|
| 1 | 🔍 정찰 | readme.txt를 가져와 설치된 플러그인 버전을 탐지합니다 |
| 2 | 🧪 페이로드 생성 | 웹쉘 드로퍼로 디코딩되는 PHP 필터 체인을 구축합니다 |
| 3 | 💣 익스플로잇 전달 | Content-Dir 헤더를 통해 backup-heart.php로 페이로드를 전송합니다 |
| 4 | 🚀 명령 실행 | 배포된 웹쉘을 지정된 OS 명령으로 트리거합니다 |