Aller au contenu

CVE-2026-50522 : exécution de code à distance dans Microsoft SharePoint Server via la désérialisation .NET

HERMES

SCORE DE MENACE HERMES & COMPROMISSION DE PLATEFORME COLLABORATIVE D'ENTREPRISE

Cible : Microsoft SharePoint Server (Subscription Edition, 2019, 2016)
Confiance : 99%
98 / 100
CRITIQUE

Mesure la pertinence opérationnelle réelle, la militarisation de l'exploit et la posture de menace active.

Décomposition des dimensions
Exploitabilité 20 / 20
Activité de menace 20 / 20
Militarisation 20 / 20
Exposition 19 / 20
Prévalence 20 / 20
Impact 20 / 20
Maturité de l'exploit 20 / 20
Potentiel d'attaque en chaîne 20 / 20
⚖️ Divergence & Justification opérationnelle

Le CVSS v3.1 évalue la CVE-2026-50522 à 9.8 (Critique) et le CVSS v4.0 affiche 9.8. Le score de menace Hermes s'établit à 98 (CRITIQUE). La corrélation est absolue : Microsoft SharePoint héberge la propriété intellectuelle critique, les coffres documentaires et les comptes de service Active Directory. La désérialisation permet aux attaquants d'exécuter du code arbitraire sous l'identité du processus worker IIS (w3wp.exe) et de pivoter dans tout le domaine Active Directory.

🕸️ Graphe de connaissances connecté & Provenance

CVE-2026-50522: Remote Code Execution in Microsoft SharePoint Server via .NET DeserializationVULNÉRABILITÉ

Nœuds connectés : 3
Relations sortantes actives
→ affectsCOMPOSANTMicrosoft Windows & Windows Server
98% VERY_HIGH

Software platform affected by security vulnerabilities and agentic attack patterns.

🔍 Pourquoi cette relation ? (Preuves & Provenance)

“Confirmed security vulnerability in Microsoft Windows & Windows Server documented in Hermes dossier.”

Preuves vérifiées associées :
→ usesTECHNIQUE D'ATTAQUET1059: Command and Scripting Interpreter
90% VERY_HIGH

Adversaries abuse command and script interpreters (Bash, Python, PowerShell) to execute arbitrary commands.

🔍 Pourquoi cette relation ? (Preuves & Provenance)

“Attack execution telemetry aligns with MITRE ATT&CK technique T1059.”

Preuves vérifiées associées :
→ usesTECHNIQUE D'ATTAQUET1552: Unsecured Credentials
90% VERY_HIGH

Adversaries search compromise victims for unsecured credentials in files, environment variables, or memory.

🔍 Pourquoi cette relation ? (Preuves & Provenance)

“Attack execution telemetry aligns with MITRE ATT&CK technique T1552.”

Preuves vérifiées associées :

1. Contexte technique & matrice des logiciels affectés

Section intitulée « 1. Contexte technique & matrice des logiciels affectés »

SharePoint Server est massivement déployé au sein des ministères, des organisations de défense et des grandes entreprises pour la gestion documentaire et les intranets collaboratifs.

ParamètreSpécification TechniqueContexte de Menace
Identifiant CVECVE-2026-50522Référence CISA KEV
Composant vulnérableMicrosoft.SharePoint.dll (Service BDC Metadata)Gestionnaire de remoting et désérialisation .NET
Contexte de processusw3wp.exe (Identité du pool d’applications SharePoint)Privilèges administrateur local / compte de service de domaine
Vecteur réseauHTTP/HTTPS (Port TCP 80, 443 ou ports d’applications web)Requêtes web entrantes vers SharePoint
Versions affectéesSharePoint Subscription Edition, 2019, 2016Fermes de serveurs SharePoint sur site
Versions corrigéesMises à jour de sécurité Microsoft MSRC (Août / Septembre 2026)Mises à jour officielles Windows Update
Impact d’exploitationRCE dans le worker IIS, extraction de tickets Active DirectoryPrise de contrôle de la ferme SharePoint

2. Décomposition technique : désérialisation .NET & chaînes de gadgets

Section intitulée « 2. Décomposition technique : désérialisation .NET & chaînes de gadgets »

La vulnérabilité se situe dans le point de terminaison BDC chargé d’importer les modèles de métadonnées sérialisés. Lorsque le serveur reçoit un flux de données, il fait appel à BinaryFormatter sans restriction de types :

// Représentation décompilée de la routine de désérialisation BDC vulnérable
public static object DeserializeMetadataObject(byte[] serializedData) {
MemoryStream ms = new MemoryStream(serializedData);
BinaryFormatter formatter = new BinaryFormatter();
// ANOMALIE : Aucun SerializationBinder n'est associé au formateur
return formatter.Deserialize(ms);
}

Comme les graphes d’objets .NET gèrent le polymorphisme lors de la désérialisation, un attaquant peut forger une chaîne de gadgets exploitant les classes standards du framework .NET (TypeConfuseDelegate, DataSet, ActivitySurrogateSelector) :

+----------------------------------------------------------------------------------------------------+
| FLUX D'EXÉCUTION DE LA CVE-2026-50522 |
+----------------------------------------------------------------------------------------------------+
[Attaquant Distant]
│
│ [1] HTTP POST /_vti_bin/BDCMetadataService.svc
│ Enveloppe SOAP contenant une charge BinaryFormatter sérialisée en Base64
▼
[Microsoft IIS / SharePoint Server (w3wp.exe)]
│
├───► 1. Aiguilleur SOAP :
│ - Achemine la charge utile vers DeserializeMetadataObject()
│
├───► 2. Désérialisation par BinaryFormatter :
│ - Reconstruit le graphe d'objets malveillant
│ - Déclenche les rappels de comparateurs TypeConfuseDelegate / SortedSet
│
├───► 3. Invocation Dynamique de Méthode :
│ - Redirige le flot d'exécution vers System.Diagnostics.Process.Start()
│ - Paramètres : "powershell.exe -enc <ChargeBase64>"
│
▼
[Création de Processus sous w3wp.exe]
│
└───► Démarrage de powershell.exe / cmd.exe :
- Injection d'un implant mémoire C2 (Cobalt Strike / Brute Ratel)
- Extraction des clés maîtresses DPAPI et clés de machine dans web.config
- Accès aux bases de données SQL Server sous-jacentes
+----------------------------------------------------------------------------------------------------+

3. Renseignement sur les menaces, CISA KEV & exploitation dans la nature

Section intitulée « 3. Renseignement sur les menaces, CISA KEV & exploitation dans la nature »
  • Inclusion CISA KEV : ajoutée en urgence après la détection d’attaques étatiques ayant combiné la CVE-2026-50522 avec des contournements d’authentification pour exfiltrer des bases documentaires stratégiques.
  • Vecteur de militarisation : utilisation d’outils automatisés basés sur ysoserial.net pour déposer des web shells résidents en mémoire (.ashx volatils).
  • Mouvement latéral dans la ferme : l’attaquant utilise les privilèges de w3wp.exe pour extraire les clés de machine (machineKey) du fichier web.config, ce qui lui permet de signer des jetons ViewState et de compromettre tous les serveurs de la ferme.

TactiqueID TechniqueNom de la TechniqueManifestation dans l’Attaque
Accès initialT1190Exploitation d’application publiqueRequête HTTP POST contenant la charge utile sérialisée vers SharePoint
ExécutionT1059.001Interpréteur de commandes et scripts : PowerShellLancement de powershell.exe depuis le processus IIS w3wp.exe
Évasion de défenseT1505.003Composant logiciel serveur : Web ShellInjection de web shells en mémoire vive au sein du pool d’applications
Accès aux identifiantsT1552Identifiants non sécurisésExtraction des clés de chiffrement de la ferme et des identifiants web.config

alert http any any -> $SHAREPOINT_SERVERS any (
msg:"HERMES DEFENSE - Tentative d'exploitation par deserialisation SharePoint (CVE-2026-50522)";
flow:established,to_server;
http.method; content:"POST";
http.uri; content:".svc";
http.request_body; content:"AAEAAAD///// ";
classtype:web-application-attack;
sid:202650522;
rev:1;
reference:cve,2026-50522;
)
title: Processus enfant suspect créé par IIS w3wp.exe (SharePoint)
id: 4c3b2a1d-9e8f-7a6b-5c4d-50522c026e02
status: high
description: Détecte la création de processus tels que cmd.exe ou powershell.exe initiée par le processus worker IIS SharePoint w3wp.exe.
author: Hermes Codex Detection Engineering
date: 2026-09-11
logsource:
product: windows
category: process_creation
detection:
selection_parent:
ParentImage|endswith: '\w3wp.exe'
selection_child:
Image|endswith:
- '\cmd.exe'
- '\powershell.exe'
- '\pwsh.exe'
- '\rundll32.exe'
- '\whoami.exe'
condition: selection_parent and selection_child
falsepositives:
- Scripts d'administration personnalisés invoqués directement via IIS (très rare).
level: critical
tags:
- attack.initial_access
- attack.t1190
- attack.execution
- attack.t1059.001

6. Réponse à incident & rétro-ingénierie (DFIR)

Section intitulée « 6. Réponse à incident & rétro-ingénierie (DFIR) »
  1. Contrôle des événements Sysmon :
    Fenêtre de terminal
    Get-WinEvent -FilterHashtable @{LogName='Microsoft-Windows-Sysmon/Operational'; Id=1} |
    Where-Object { $_.Message -match "w3wp.exe" -and $_.Message -match "(cmd|powershell)" }
  2. Revue des journaux IIS W3C :
    • Analyser les requêtes POST anormales sur /_vti_bin/BDCMetadataService.svc ou *.svc renvoyant des codes HTTP 200 ou 500.
  3. Inspection des fichiers temporaires asp.net :
    • Vérifier C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\ à la recherche de bibliothèques .dll nouvellement compilées.
{
"query": {
"bool": {
"must": [
{ "term": { "process.parent.name": "w3wp.exe" } },
{
"terms": {
"process.name": ["cmd.exe", "powershell.exe", "pwsh.exe", "whoami.exe"]
}
}
]
}
}
}

  1. Application des mises à jour de sécurité Microsoft : déployer sans attendre les correctifs SharePoint Server diffusés par le MSRC.
  2. Activation de l’intégration AMSI : s’assurer que le support de l’interface AMSI (Antimalware Scan Interface) est activé pour analyser la mémoire des désérialisations .NET.
  3. Cloisonnement réseau : ne pas exposer directement les fermes SharePoint sur Internet sans passer par un portail d’authentification inverse pré-filtrant les requêtes SOAP/WCF.
  4. Moindre privilège des pools d’applications : utiliser des comptes de service gérés par groupe (gMSA) aux privilèges minimaux pour exécuter les pools d’applications SharePoint.