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
CVE-2026-58635-PoC — PoC pour CVE-2026-58635 : Escalade de privilèges locale du Braille du Narrateur Windows | Kitploit
Outils/GitHubGitHub/davidcarliez/cve-2026-58635-poc
Escalade de PrivilègesAnalyse des VulnérabilitésExploitationMouvement LatéralTests d'IntrusionCommandement et ContrôleDéveloppement de Charges UtilesExploitation de Binaires
GitHubdavidcarliez/cve-2026-58635-poc

CVE-2026-58635-PoC

PoC pour CVE-2026-58635 : Escalade de privilèges locale du Braille du Narrateur Windows

Voir le dépôt
298il y a 1 moisVérifié par Kitploit

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

CVE-2026-58635 : Élévation de privilèges locale du Narrateur Windows en braille

Preuve de concept pour CVE-2026-58635, une vulnérabilité d'injection de commande dans le Narrateur Windows en braille. Un utilisateur authentifié local peut abuser d'un paramètre BrlAPI inscriptible pour faire exécuter un programme arbitraire par le service privilégié BRLTTY.

Microsoft évalue le problème comme Important avec un score CVSS 3.1 de 7.8 (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H) et le mappe à CWE-77.

Ce dépôt est destiné uniquement aux tests autorisés dans un laboratoire isolé. Ne l'exécutez pas sur des systèmes de production ou des systèmes que vous ne possédez pas ou n'administrez pas.

Ce que démontre la preuve de concept

La PoC exerce le chemin suivant :

root@kitploit:~
utilisateur standard
  -> démarre le service BrlAPI accessible localement
  -> se connecte à localhost:0 avec auth=none
  -> écrit le paramètre global BrlAPI 29 (table braille littéraire)
  -> BRLTTY interprète un chemin exécutable comme une table de contraction externe
  -> BRLTTY lance le programme fourni en tant que LocalService
  -> étape optionnelle de jeton SeImpersonate
  -> invite de commande SYSTEM interactive

La primitive spécifique à la CVE se termine par une exécution arbitraire en tant que LocalService. Sur la configuration Windows testée, ce jeton possède SeImpersonatePrivilege, donc la démonstration incluse utilise optionnellement SigmaPotato pour obtenir un jeton SYSTEM et lancer un shell visible dans la session console active.

Pourquoi le paramètre 29 est significatif

BRLTTY 6.4.1 expose BRLAPI_PARAM_LITERARY_BRAILLE_TABLE comme global et inscriptible. Le serveur transmet la chaîne fournie à son chargeur de table de contraction. Sous Windows, un chemin dont l'extension est présente dans PATHEXT est traité comme un programme de contraction externe et démarré via le lanceur de commande hôte de BRLTTY.

Le déclencheur normalise un chemin Windows ordinaire comme C:\lab\bin\localservice_stage.exe vers la forme avec barre oblique attendue par cette branche de gestion de chemin BRLTTY/MinGW. Aucun profil utilisateur, lettre de lecteur, répertoire Windows ou nom de compte n'est compilé dans la PoC.

Systèmes affectés

La fonctionnalité optionnelle Accessibility.Braille doit être installée pour que la surface d'attaque testée existe. L'enregistrement CNA de Microsoft liste plusieurs branches client et serveur Windows comme affectées en dessous de leurs révisions corrigées de juillet 2026. Les exemples courants incluent :

Les numéros de build seuls sont un signal de dépistage, pas un substitut à l'avis du fournisseur et à l'inventaire des composants installés. Utilisez l'outil de vérification en lecture seule inclus :

root@kitploit:~
powershell -ExecutionPolicy Bypass -File .\scripts\Check-Vulnerability.ps1

Il rapporte :

  • Version du système d'exploitation et révision de mise à jour ;
  • État de la fonctionnalité Accessibility.Braille ;
  • présence de brlapi.dll et brltty.exe ;
  • enregistrement et identité du service BrlAPI ;
  • comparaison avec la révision corrigée connue pour les branches prises en charge ; et
  • hachages SHA-256 des composants Braille installés.

L'outil de vérification ne démarre pas BrlAPI, n'écrit pas le paramètre 29 et n'exécute pas de charge utile.

Structure du dépôt

root@kitploit:~
.
├── bin/                         Binaires PoC compilés et SigmaPotato
├── scripts/
│   ├── Check-Vulnerability.ps1  Vérification en lecture seule de l'exposition/build
│   ├── Clear-Results.cmd        Supprime les fichiers de résultats générés
│   ├── Get-SigmaPotato.ps1      Récupère et vérifie le hash de l'assistant amont
│   ├── Prepare-Lab.ps1          Installe la fonctionnalité optionnelle et définit les ACL du labo
│   └── Run-PoC.cmd              Démonstration de bout en bout pour utilisateur standard
├── src/
│   ├── brlapi_trigger.cpp       Client BrlAPI et écriture du paramètre 29
│   ├── localservice_stage.cpp   Preuve d'identité LocalService et chaînage optionnel
│   ├── path_util.h              Aides runtime pour les chemins
│   └── system_shell_launcher.cpp
├── third_party/SigmaPotato/     Version, hash, licence et attribution
├── Makefile
├── LICENSE
├── SHA256SUMS
└── NOTICE

Compilation

La PoC originale est en C++17 et se compile avec la chaîne d'outils MinGW-w64 x86-64.

Sur Debian ou Ubuntu :

root@kitploit:~
sudo apt install make g++-mingw-w64-x86-64
make

La compilation crée :

root@kitploit:~
bin/brlapi_trigger.exe
bin/localservice_stage.exe
bin/system_shell_launcher.exe

Pour obtenir la version exacte de SigmaPotato utilisée par la démonstration de bout en bout, exécutez ceci depuis Windows :

root@kitploit:~
powershell -ExecutionPolicy Bypass -File .\scripts\Get-SigmaPotato.ps1

Le script de téléchargement épingle la version v1.2.6 et vérifie SHA-256 :

root@kitploit:~
EC68A6BF7F104A815BD21E27E73A8DFB8AFCB282D4997BEBE9ECCD6C89259506

Configuration du laboratoire

1. Préparer le composant Windows optionnel

Depuis une invite PowerShell élevée dans la racine du dépôt :

root@kitploit:~
powershell -ExecutionPolicy Bypass -File .\scripts\Prepare-Lab.ps1

Ce script :

  1. installe Accessibility.Braille~~~~0.0.1.0 lorsqu'il est absent ;
  2. accorde aux utilisateurs intégrés un accès en lecture/exécution au dépôt ; et
  3. accorde à LocalService un accès en modification pour que le service puisse exécuter l'étape et créer des preuves sous bin\results.

Si la fonctionnalité est présente mais que le service n'est pas encore enregistré, redémarrez et exécutez le script de préparation une fois de plus.

2. Utiliser un compte utilisateur standard existant

Connectez-vous avec n'importe quel compte local ou domaine qui n'est pas membre du groupe Administrateurs local. Le dépôt ne crée pas d'utilisateurs ni ne définit de mots de passe.

Les produits de sécurité détectent couramment les outils de preuve de concept d'usurpation de jeton. Configurez le laboratoire isolé conformément à la politique de test de votre organisation avant de placer ou d'exécuter les binaires. N'affaiblissez pas la protection des points de terminaison sur un poste de travail normal.

3. Exécuter la PoC

Depuis une invite de commande non élevée :

root@kitploit:~
scripts\Run-PoC.cmd

La sortie attendue comprend :

root@kitploit:~
Connection: descriptor=<number> host=localhost:0 auth=none
Parameter 29 global write: 0
USER=LOCAL SERVICE
SID=S-1-5-19

La deuxième étape optionnelle enregistre sa sortie dans bin\results\escalation.log. En cas de succès, bin\results\system_shell_status.txt contient CREATED=1, et une nouvelle fenêtre intitulée CVE-2026-58635 SYSTEM SHELL s'ouvre. Dans cette fenêtre :

root@kitploit:~
whoami

devrait retourner :

root@kitploit:~
nt authority\system

Fichiers de résultats

Toutes les preuves générées sont placées dans bin\results :

Supprimez les résultats générés avec :

root@kitploit:~
scripts\Clear-Results.cmd

Correction et vérification

Installez la mise à jour de sécurité applicable de juillet 2026 ou une mise à jour cumulative ultérieure. Pour Windows 11 24H2 et 25H2, Microsoft livre les révisions corrigées dans KB5101650 (26100.8875 et 26200.8875). Si le support Braille n'est pas nécessaire, la suppression de la fonctionnalité optionnelle supprime également cette surface d'attaque :

root@kitploit:~
Remove-WindowsCapability -Online -Name Accessibility.Braille~~~~0.0.1.0

Après la correction, réexécutez Check-Vulnerability.ps1 et confirmez que le système correspond à la révision corrigée ou que le composant est absent.

Références

  • Guide de mise à jour de sécurité Microsoft : CVE-2026-58635
  • NVD : CVE-2026-58635
  • Microsoft KB5101650
  • BRLTTY
  • SigmaPotato
Télécharger l’outil
Branche du produitPotentiellement affectée en dessousNiveau corrigé connu
Windows 10 1809 / Server 201917763.902017763.9020 ou ultérieur
Windows 10 21H219044.754819044.7548 ou ultérieur
Windows 10 22H219045.754819045.7548 ou ultérieur
Windows Server 202220348.538620348.5386 ou ultérieur
Windows 11 24H226100.887526100.8875 ou ultérieur
Windows 11 25H226200.887526200.8875 ou ultérieur
Windows 11 26H128000.252528000.2525 ou ultérieur
FichierObjectif
localservice_identity.txtNom d'utilisateur, SID et PID de l'étape lancée par la CVE
localservice_whoami.txtGroupes de jetons complets et privilèges
escalation.logSortie de l'assistant d'usurpation de jeton optionnel
escalation_status.txtStatut de création/erreur/sortie du processus assistant
system_shell_status.txtRésultat de la création du shell de session active