CVE-2026-45659 : Flaw de Désérialisation de SharePoint Permettant l’Exécution de Code à Distance
Detection stack
- AIDR
- Alert
- ETL
- Query
Résumé
CVE-2026-45659 est une vulnérabilité critique de désérialisation de données non fiables affectant Microsoft SharePoint Server. Un utilisateur authentifié avec des privilèges de membre de site de bas niveau peut exploiter la faille pour obtenir une exécution de code à distance (RCE) sous l’identité du pool d’applications IIS. Le problème appartient à une classe plus large de vulnérabilités de désérialisation SharePoint qui peuvent finalement conduire à une compromission à l’échelle de la ferme.
Enquête
L’enquête identifie un point de désérialisation au sein de la pile ASP.NET, probablement impliquant des gestionnaires sous _vti_bin/, _api/, ou /_layouts/15/. Les chercheurs notent que l’exploitation peut s’appuyer sur des chaînes de gadgets telles que ObjectDataProvider pour déclencher l’exécution de commandes arbitraires. L’impact potentiel est augmenté par les privilèges élevés généralement assignés à l’identité du pool d’applications SharePoint.
Atténuation
L’atténuation principale consiste à appliquer les mises à jour de sécurité SharePoint de mai 2026, y compris KB5002863, KB5002870 ou KB5002868, et à vérifier les versions corrigées via l’Administration Centrale. Les environnements précédemment exposés doivent également faire tourner la clé MachineKey pour empêcher une exploitation continue par ViewState forgé. Pour une réduction à long terme des risques, les organisations devraient envisager de migrer les charges de travail éligibles vers SharePoint Online.
Réponse
Si des processus enfant anormaux tels que cmd.exe or powershell.exe sont engendrés par w3wp.exe, les intervenants doivent immédiatement isoler le serveur frontal SharePoint affecté. La réponse à l’incident doit inclure un audit complet de la ferme, une rotation de la MachineKey, et une enquête sur les éventuels webshells dans les répertoires SharePoint. Les équipes doivent également confirmer que tous les composants de la ferme sont entièrement mis à jour en exécutant psconfig.exe.
Flux d’attaque
Nous mettons encore à jour cette partie.
Détections
Possible exploitation de serveur Web ou de WebApp [Windows] (via cmdline)
Comportement suspect du serveur Microsoft IIS (via cmdline)
Création possible de Webshell dans les répertoires Microsoft Exchange / SharePoint (via file_event)
Détection de nouveaux fichiers ASPX dans les répertoires SharePoint pour dépôts potentiels de Webshell [Windows File Event]
Détecter des processus enfants anormaux par w3wp.exe [Création de processus Windows]
## Exécution de la simulation
-
Narration et commandes d’attaque : L’adversaire a identifié une faille de désérialisation dans une instance SharePoint. Pour masquer son activité et tirer parti de l’identité du processus de travail IIS, il tente d’exécuter
w3wp.exevia une session d’invite de commande. Il s’agit d’un schéma d’exécution « inversé » souvent observé dans la livraison de charges utiles sophistiquées où l’attaquant tente d’interagir directement avec le processus de service web pour effectuer une manipulation en mémoire ou transmettre des commandes par l’intermédiaire d’une identité de service de confiance. Le but est de déclencher la détection de la règle pourw3wp.exeétant engendré parcmd.exe. -
Script de test de régression :
# Script de simulation : Déclenchement de la création anormale de processus enfant par w3wp.exe # Ce script imite un attaquant engendrant w3wp.exe depuis un contexte cmd.exe. Write-Host "[+] Démarrage de la simulation : Engendrement de w3wp.exe à partir de cmd.exe" -ForegroundColor Cyan $w3wpPath = "C:WindowsSystem32inetsrvw3wp.exe" # Vérifiez si w3wp.exe existe pour éviter l'échec du script if (Test-Path $w3wpPath) { # Utilisez cmd.exe pour lancer w3wp.exe. # Note : Cela échouera probablement pour exécuter correctement w3wp car il s'agit d'un service, # mais la télémétrie de CRÉATION DE PROCESSUS sera générée. Start-Process "cmd.exe" -ArgumentList "/c `"$w3wpPath`"" -WindowStyle Hidden Write-Host "[+] Commande envoyée. Vérifiez les journaux Sysmon/Security pour w3wp.exe enfant de cmd.exe" -ForegroundColor Green } else { Write-Host "[-] Erreur : w3wp.exe introuvable à $w3wpPath. IIS est-il installé ?" -ForegroundColor Red } -
Commandes de nettoyage :
# Nettoyage : Aucun fichier persistant n'a été créé, mais assurez-vous que tous les processus orphelins sont fermés. Stop-Process -Name "w3wp" -ErrorAction SilentlyContinue Stop-Process -Name "cmd" -ErrorAction SilentlyContinue Write-Host "[+] Nettoyage terminé." -ForegroundColor Cyan