Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
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é.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
sharepoint-2026-poc — PoC, IOCs et logique de détection pour la chaîne de désérialisation BinaryFormatter WS-Federation SharePoint /_trust. Reconstruction en laboratoire couvrant l'exécution de code à distance (RCE) non authentifiée, le vol de clé machine en cours de processus, et les artefacts laissés par chaque variante. SharePoint 2016, 2019 et Subscription Edition. CVE-2026-50522, CVE-2026-45659, CVE-2026-56164, CVE-2026-58644. | Kitploit
Outils/GitHubGitHub/wismansec/sharepoint-2026-poc
Analyse des VulnérabilitésExploitationExploitation d'Applications WebCriminalistique NumériqueArticles et RechercheApprentissage et ÉducationRéponse aux IncidentsDéveloppement de Charges Utiles
GitHubwismansec/sharepoint-2026-poc

sharepoint-2026-poc

Voir le dépôtSite web
211il y a 1 moisPas 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 →

À propos

PoC, IOCs et logique de détection pour la chaîne de désérialisation BinaryFormatter WS-Federation SharePoint /_trust. Reconstruction en laboratoire couvrant l'exécution de code à distance (RCE) non authentifiée, le vol de clé machine en cours de processus, et les artefacts laissés par chaque variante. SharePoint 2016, 2019 et Subscription Edition. CVE-2026-50522, CVE-2026-45659, CVE-2026-56164, CVE-2026-58644.

Partager

Désérialisation WS-Federation SharePoint /_trust : PoC et notes de détection

Article en direct (GitHub Pages) : https://sp-poc.wismansec.com/ (rendu HTML de ce document).

Concernés : SharePoint Server 2016, 2019 et Subscription Edition.

Reconstruction d'une intrusion sur SharePoint Server (Subscription Edition) dans un laboratoire isolé, réalisée pour (a) comprendre l'étendue complète des capacités de l'attaquant, (b) déterminer ce qu'un défenseur doit rechercher, y compris la persistance furtive, et (c) partager un PoC pour aider d'autres enquêteurs.

Recherche autorisée uniquement. Tout ce qui figure ici a été réalisé sur du matériel de laboratoire isolé et des comptes personnels, contre une version délibérément laissée sans correctif pour le test. Le problème sous-jacent est corrigé par l'éditeur ; appliquez les mises à jour actuelles. N'exécutez pas cela contre des systèmes dont vous n'êtes pas propriétaire et pour lesquels vous n'avez pas d'autorisation explicite de test. Les valeurs de clés machine, les noms d'hôtes/IP internes et les domaines de rappel sont expurgés dans le texte et les artefacts d'exemple. Les captures d'écran du SIEM ne sont pas modifiées et portent les vrais noms du laboratoire ; voir la note au §4.

  • Par : WismanSec
  • Correctif : mises à jour de juillet 2026 (KB5002882)
  • CVE associées (ce groupe, listé CISA KEV) : CVE-2026-50522, CVE-2026-45659, CVE-2026-56164, CVE-2026-58644
  • Classe de vulnérabilité : la famille de désérialisation BinaryFormatter du SecurityContextToken de /_trust

TL;DR pour les intervenants

  • Une seule requête non authentifiée POST /_trust/default.aspx (connexion WS-Federation) contenant un SecurityContextToken malveillant déclenche une désérialisation BinaryFormatter dans le processus worker SharePoint (w3wp.exe), aboutissant à une exécution de code à distance sous l'identité du pool d'applications web.
  • La même primitive permet d'exfiltrer les clés machine de la ferme (ValidationKey/DecryptionKey) entièrement en mémoire. Dans une ferme à configuration par défaut : aucun processus enfant, aucune alerte antivirus, aucun beacon (l'activation du scan AMSI du corps de requête pour /_trust le détecte et le bloque ; voir §5). Ces clés permettent à un attaquant de forger des jetons __VIEWSTATE/d'authentification qui survivent au correctif.
  • Corriger ne suffit pas. Faites pivoter les clés machine sur toute ferme que vous pensez compromise, et recherchez la signature de requête /_trust, le seul artefact présent dans toutes les variantes.

1. La vulnérabilité

SharePoint expose un point de terminaison d'authentification passive WS-Federation à /_trust/default.aspx. Une réponse de connexion falsifiée (wa=wsignin1.0 + wresult=<RequestSecurityTokenResponse>) intègre un SecurityContextToken dont l'élément <Cookie> est un flux BinaryFormatter compressé en DEFLATE et encodé en base64. Côté serveur, ce cookie est décompressé et désérialisé sans restriction de type, de sorte qu'une chaîne de gadgets (via ysoserial.net) exécute du code contrôlé par l'attaquant dans w3wp.exe.

Squelette de requête (non authentifiée) :

POST /_trust/default.aspx HTTP/1.1
Content-Type: application/x-www-form-urlencoded

wa=wsignin1.0&wctx=<url>&wresult=<RequestSecurityTokenResponse>...
  <SecurityContextToken><Cookie>BASE64(DEFLATE(BinaryFormatter payload))</Cookie>...

2. Deux chaînes à partir d'une même primitive

ChaîneGadgetEffetCanal de sortie
RCE hors bandeTypeConfuseDelegate → -EncodedCommand PowerShellexécution de code sous l'identité du poolhors bande (beacon HTTP/DNS)
Divulgation de clés machineActivitySurrogateDisableTypeCheck → ActivitySurrogateSelectorFromFile (compile KeyDump.cs en mémoire)exfiltre ValidationKey/DecryptionKeyen ligne dans la réponse HTTP

Scripts (assainis) dans scripts/ : un RCE hors bande paramétré et l'exfiltration de clés en deux étapes. La livraison des charges utiles utilise PowerShell -EncodedCommand afin que les charges utiles multi-instructions traversent les couches cmd.exe/transport sans altération (aucune rupture de citation ;/&&).

3. Laboratoire

Ferme SharePoint SE unique (version épinglée avant correctif), identité du pool d'applications LAB\sp_pool, PowerShell 5.1, Microsoft Defender activé avec protection cloud. La télémétrie (Journal des événements Windows, journaux SharePoint, Defender for Endpoint) était envoyée à nano, un SIEM open-source léger ; l'hôte attaquant exécutait ysoserial.net ; un client interactsh fournissait l'écouteur hors bande. Les adresses et domaines sont expurgés dans le texte ; voir la note sur les captures d'écran au §4.

4. Résultats : matrice invocation → artefact

Chaque ligne correspond à une détonation réelle ; les artefacts ont été extraits du SIEM + de l'écouteur hors bande pour chaque exécution.

Les captures d'écran ne sont pas modifiées. Elles portent les vrais noms d'hôtes et NetBIOS du laboratoire, qui sont bruts et diffèrent des SHAREPOINT01 / LAB assainis utilisés dans tout le texte. Mêmes exécutions, mêmes événements, rien de préparé. Équivalents sans risque pour le travail dans artifacts/.

InvocationArborescence de processus (en tant que LAB\sp_pool, élevé)DefenderBeacon hors bandeArtefacts principaux
RCE hors bande, par défautw3wp.exe → cmd.exe → powershell.exe → conhost.exeBehavior:Win32/WebshellLauncher.A (EID 1116 détection / 1117 suppression)reçu (course)arborescence 4688 ; Defender 1116/1117 ; /_trust POST
RCE hors bande, -RawCmdw3wp.exe → powershell.exe → conhost.exe (pas de cmd)aucunereçu (DNS+HTTP)arborescence 4688 ; /_trust POST ; beacon
RCE hors bande, -DropFilew3wp.exe → powershell.exeaucunereçuécriture de fichier dans …\TEMPLATE\LAYOUTS\ (pas dans le journal d'audit d'accès aux objets)
RCE hors bande, -Diagw3wp.exe → powershell.exe → whoami.exeaucunereçuexfiltration d'informations d'environnement : {host, whoami, PSver, LanguageMode}
Exfiltration de clés machine(aucun, en mémoire)aucune(aucun)uniquement le POST /_trust + réponse anormale contenant les clés

Ces résultats correspondent à la configuration AMSI par défaut (mode équilibré, /_trust non scanné). Avec l'activation du scan AMSI du corps de requête pour /_trust (mode complet ou ciblé), chaque ligne est à la place bloquée au niveau de la requête : HTTP 400, Exploit:Script/SpCookieExec.A, avant l'exécution (voir §5).

Chaque détonation RCE, en une seule requête

Quatre processus créés par w3wp.exe, dont trois powershell.exe sans étape cmd.exe

Les quatre détonations documentées, de 15:01 à 15:18 UTC, chaque enfant de w3wp.exe s'exécutant sous l'identité du pool. Trois des quatre sont des powershell.exe créés directement. Seule l'exécution de 15:03:34 passe par cmd.exe, et seule celle-ci a été détectée. Si l'on élargit la fenêtre au-delà de celle-ci, les itérations de développement précédentes de la même matinée entrent dans le jeu de résultats, de sorte que l'affirmation se limite à ces quatre exécutions.

Le même exploit, deux arborescences de processus

w3wp.exe vers cmd.exe vers powershell.exe et conhost.exe

Télécharger l’outil