Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
PlEXcalaison — Preuve de concept d'escalade de privilèges locale pour Plex Media Server - CVE-2021-42835 | Kitploit
Outils/GitHubGitHub/netanelc305/plexcalaison
Escalade de PrivilègesAnalyse des VulnérabilitésExploitationTests d'IntrusionExploitation de Binaires
GitHubnetanelc305/plexcalaison

PlEXcalaison

Preuve de concept d'escalade de privilèges locale pour Plex Media Server - CVE-2021-42835

Voir le dépôt
6il y a 4 ansPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

Local Privilege PlEXcalasion - CVE-2021-42835

Plex Media Server pour Windows antérieur à la version 1.25.0.5282 est vulnérable à une faille de type Time Of Check Time Of Use (TOCTOU) qui permet aux utilisateurs à faibles privilèges d'obtenir les privilèges SYSTEM.

Découvert par

Tomer Peled, Netanel Cohen et Amir Shen, chercheurs en sécurité chez BugSec.

Détails

Plex pour Windows utilise PlexUpdateService.exe pour installer les nouvelles mises à jour. Le service s'exécute dans le contexte SYSTEM. Lors de l'installation d'une mise à jour, le service vérifie d'abord l'intégrité du fichier et la signature numérique ; ce n'est que si les vérifications réussissent que la mise à jour est installée.

Dans ce processus, après la vérification de l'intégrité et de la signature, il y avait un défaut de conception qui gérait le fichier de mise à jour de manière inappropriée. Le fichier était fermé puis rouvert plus tard pour l'installation.

Cette faille permet à un attaquant de remplacer le fichier de mise à jour par un fichier malveillant dès que le service a fini de vérifier l'intégrité et la signature, ce qui entraîne l'exécution de code dans le contexte SYSTEM.

Cette POC utilise des outils développés par James Forshaw avec de légères modifications. L'original peut être trouvé ici - https://github.com/googleprojectzero/symboliclink-testing-tools

Pour y parvenir, nous avons utilisé un dossier Junction qui pointera d'abord vers un dossier contenant un fichier de mise à jour valide, puis basculera vers un dossier contenant le fichier malveillant.

Nous avons constaté que l'ordre d'accès aux fichiers était le suivant :

  1. Lire le fichier de mise à jour pour vérifier sa signature numérique
  2. Fermer le fichier de mise à jour.
  3. Lire CACERT.pem
  4. Vérifier la signature.
  5. Relire le fichier de mise à jour
  6. Exécuter l'installation

Nous avons créé un point de montage sur le dossier junction pour pointer vers un dossier contenant le fichier de mise à jour valide. Nous avons défini un opLock sur cacert.pem avec une fonction de rappel ; dès qu'il est accédé, nous changeons le point de montage vers le dossier malveillant.

De plus, nous avons créé un client RPC qui déclenchera la mise à jour.

Utilisation

  1. Clonez le dépôt et ouvrez PlEXcalasion.sln dans Visual Studio.
  2. Supprimez le fichier Delete me.txt situé dans TOCTOU\junction - Ce n'est qu'un espace réservé pour que git inclue le dossier ; ce dossier doit être vide !
  3. Modifiez les chemins :

PlexClient/PlexClient.cpp remplacez ROOTDIR par votre chemin.

root@kitploit:~
const wchar_t* pszString = L"<ROOTDIR>\\PlEXcalaison\\TOCTOU\\junction\\plex.exe"; // Path to the update file. 

PlEXcalaison/BaitAndSwitch/BaitAndSwitch.cpp remplacez ROOTDIR par votre chemin.

root@kitploit:~
static LPCWSTR junction = L"<ROOTDIR>\\PlEXcalaison\\TOCTOU\\junction";  // Path to junction folder , MAKE SURE IT IS EMPTY !
static LPCWSTR target1 = L"<ROOTDIR>\\PlEXcalaison\\TOCTOU\\valid"; // Path to folder contains the valid update file.
static LPCWSTR target2 = L"<ROOTDIR>\\PlEXcalaison\\TOCTOU\\malicious"; // Path to folder contains the malicious file - MUST BE THE SAME NAME AS THE UPDATE FILE.
static LPCWSTR cacert = L"C:\\Program Files (x86)\\Plex\\Plex Media Server\\Resources\\cacert.pem"; // Path to cacert.pem - can be found in plex directory.
  1. Compilez la solution.
  2. Assurez-vous que PlexClient.exe a été créé et se trouve dans le dossier Rleases.
  3. Placez le fichier exécutable que vous souhaitez exécuter en tant que SYSTEM dans le dossier malveillant et renommez-le en plex.exe (pour cette POC, j'ai utilisé cmd.exe).
  4. Exécutez BiteAndSwitch.exe

Publications

https://ir-on.io/2021/12/02/local-privilege-plexcalation/

https://forums.plex.tv/t/security-regarding-cve-2021-42835/761510

Télécharger l’outil