
Realtyna Organic IDX 플러그인 + WPL Real Estate < 5.3.0 - 인증되지 않은 임의 파일 업로드를 통한 원격 코드 실행
Realtyna Organic IDX 플러그인 + WPL Real Estate < 5.3.0 - 인증 없는 임의 파일 업로드를 통한 원격 코드 실행
WordPress용 Realtyna Organic IDX 플러그인 + WPL Real Estate < 5.3.0
하드코딩된 I/O API 자격 증명을 통한 인증 없는 임의 파일 업로드로, 원격 코드 실행으로 이어집니다.
WPL Real Estate 플러그인에는 기본적으로 활성화되어 있고 하드코딩된 키 쌍(public_key / private_key)으로만 보호되는 내장 I/O API(set_property)가 포함되어 있습니다. 이 키는 모든 설치 환경에서 동일하며, 활성화 시 실행되는 마이그레이션 SQL에 포함되어 있습니다.
이 API는 image_* 접두어가 붙은 file[] multipart 필드를 통해 파일 업로드를 허용하지만 업로드된 파일 유형을 전혀 검증하지 않습니다. 인증되지 않은 공격자는 임의의 .php 파일을 업로드할 수 있으며, 해당 파일은 wp-content/uploads/WPL/{pid}/ 아래의 예측 가능한 경로에 저장된 후 HTTP를 통해 직접 실행될 수 있습니다.
WordPress 인증도, nonce도, 권한 검사도 필요 없습니다 — 오직 두 개의 하드코딩된 문자열만 있으면 됩니다.
Attacker Target (WordPress + WPL ≤ 5.2.0)
│ │
│ POST / (multipart/form-data) │
│ ├─ public_key = <hardcoded> │
│ ├─ private_key = <hardcoded> │
│ ├─ cmd = set_property │
│ └─ file[] = image_Nx_abc.php │
│─────────────────────────────────────────►│
│ │ API validates keys ✓
│ │ Saves file (no type check)
│ {"success": true} │
│◄─────────────────────────────────────────│
│ │
│ GET /wp-content/uploads/WPL/{pid}/Nx_* │
│─────────────────────────────────────────►│
│ PHP executed │
│◄─────────────────────────────────────────│
| 파일 | 내용 |
|---|---|
Nx_hit/Nwpl_detect.txt | 발견된 WPL 설치 목록(탐지 모드) |
Nx_hit/Nwpl_shell.txt | 전체 URL 및 PID가 포함된 확인된 셸 업로드 목록 |
Nx_hit/Nwpl_canary.txt | 카나리아 검증 결과 |
python CVE-2026-13714.py
스크립트가 다음 항목을 입력받습니다:
> Target list: targets.txt
> Threads [1-50]: 10
> Mode [1/2/3]: 2
대상 목록 형식 — 줄마다 대상 하나씩:
example.com
https://site.com
http://192.168.1.10:8080
sub.domain.org/wordpress
wpl_settings 테이블)에서 I/O API 키 교체wp-content/uploads/WPL/에 대한 직접 접근 차단이 도구는 오직 공인된 보안 테스트 및 교육 목적으로만 제공됩니다. 소유하고 있거나 명시적인 서면 허가를 받은 시스템에서만 사용하십시오.
컴퓨터 시스템에 대한 무단 접근은 미국 컴퓨터 사기 및 남용 법률(CFAA), 영국 컴퓨터 남용법(Computer Misuse Act), 그리고 전 세계의 동등한 법률을 포함하되 이에 국한되지 않는 법률에 따라 불법입니다.
작성자는 오용에 대해 어떠한 책임도 지지 않습니다. 이 도구를 사용함으로써 귀하는 자신의 행동에 대한 전적인 책임을 수락하며 모든 관련 법률 및 규정을 준수하는 데 동의합니다.
Nxploited — Khaled Alenazi
Telegram: @Kxploit
| 세부 정보 | 값 |
|---|
| CVE | CVE-2026-13714 |
| CWE | CWE-434 (위험한 유형의 파일 무제한 업로드) |
| 영향 버전 | WPL Real Estate ≤ 5.2.0 |
| 수정 버전 | 5.3.0 |
| 인증 필요 | 없음 |
| CVSS 3.1 | 9.8 CRITICAL |
| 벡터 | AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| 출처 | CISA-ADP |
| 기능 | 설명 |
|---|
| WPL 핑거프린팅 | ?get_realtyna_platform=1 프로브 + HTML 시그니처 탐지 |
| WordPress 루트 탐색 | 하위 디렉터리(/wp, /blog, /site 등)에서 WP 설치 자동 감지 |
| 하드코딩 키 악용 | 모든 WPL 설치에 포함된 기본 I/O API 키 사용 |
| Multipart 업로드 | WPL의 set_property 기대 사항과 정확히 일치하는 file[] multipart 구성 |
| PID 스캐너 | wp-content/uploads/WPL/{1..N}/을 무차별 대입하여 업로드된 파일 위치 탐색 |
| 역방향 PID 스캔 | 활성 사이트에서 더 빠른 탐색을 위해 최신 PID부터 스캔 |
| 카나리아 모드 | PHP를 실행하지 않고 쓰기 권한을 확인하는 안전한 .txt 업로드 |
| 스레드 대량 스캔 | 스레드 수를 구성(1–50)하여 동시 처리 |
| Nx-zD 시그니처 | 업로드된 셸에 Nx-zD 검증 태그 포함 |
| 자동 로깅 | 결과 유형별로 별도 파일로 나누어 Nx_hit/에 저장 |
| 모드 | 설명 |
|---|
1 — 탐지 | 아무것도 업로드하지 않고 WPL 설치 여부를 핑거프린팅 |
2 — 업로드 | I/O API를 통해 Nx_*.php 셸을 업로드하고 실행 확인 |
3 — 카나리아 | Nx_*.txt(안전한 프로브)를 업로드하여 쓰기 권한만 확인 |