CVE-2025-10230 — Injection de commande dans le hook WINS de Samba
L'auteur décline toute responsabilité en cas d'utilisation abusive ou de dommages causés par cet outil.
La recherche est fournie strictement à des fins éducatives et défensives.
Description
Ce dépôt contient une preuve de concept (PoC) pour CVE-2025-10230, une faille d'injection de commande dans le mécanisme de hook WINS de Samba.
La faille affecte les installations Samba où :
wins support = yes est activé
Une commande shell personnalisée est définie dans wins hook = ...
Le serveur reçoit une requête d'enregistrement NetBIOS malformée
Le nom NetBIOS est concaténé directement dans l'invocation de la commande shell, permettant l'exécution de code.
Ce PoC démontre comment des paquets d'enregistrement de nom NetBIOS spécialement conçus peuvent déclencher des commandes shell arbitraires dans Samba.
Informations techniques
CVE-2025-10230 est une vulnérabilité d'injection de commande dans l'implémentation du serveur WINS de Samba, spécifiquement lorsqu'il agit en tant que contrôleur de domaine Active Directory avec à la fois le support WINS et un paramètre 'wins hook' configuré.
Mécanisme de vulnérabilité : Lorsqu'un paquet d'enregistrement WINS est reçu, le nom NetBIOS du paquet est inséré directement dans une commande shell exécutée par le processus Samba. Aucune validation ni échappement n'est effectué sur le nom NetBIOS, qui peut contenir jusqu'à 15 caractères et peut inclure des métacaractères de shell.
Vecteur d'attaque : Un attaquant envoie un paquet d'enregistrement WINS spécialement conçu au port UDP 137 contenant un nom NetBIOS avec des métacaractères de shell (tels que ;, |, &, ou des backticks). Le code shell injecté est exécuté avec les privilèges du processus Samba, souvent root.
Cause racine : Absence de nettoyage des entrées pour le champ du nom NetBIOS avant de le passer à une commande shell (CWE-78 : Injection de commande système).
Configuration affectée : Seuls les serveurs Samba agissant en tant que contrôleurs de domaine Active Directory avec 'wins support = yes' et un paramètre 'wins hook' non vide dans smb.conf sont vulnérables. La configuration par défaut n'est pas affectée.
Des correctifs pour ce problème ont été publiés sur :
root@kitploit:~
https://www.samba.org/samba/security/
De plus, Samba 4.23.2, 4.22.5 et 4.21.9 ont été publiés en tant que versions de sécurité pour corriger le défaut. Les administrateurs Samba sont invités à mettre à niveau vers ces versions ou à appliquer le correctif dès que possible.
Vecteur d'attaque (Résumé technique)
L'attaquant fabrique un paquet d'enregistrement NetBIOS Name Service (NBNS)
Le nom contient des caractères de charge utile dans la limite autorisée ≤15 caractères
Samba reçoit la requête WINS sur le port 137/UDP
Le gestionnaire wins hook s'exécute avec une entrée non nettoyée
La charge utile s'exécute avec les privilèges du démon Samba (souvent root)
Contraintes
Les noms NetBIOS ne peuvent pas contenir < > ;
La taille de la charge utile doit être ≤ 15 caractères
L'injection se fait via des arguments positionnels
Exemples de commandes qui s'exécutent avec succès :
root@kitploit:~
ls
pwd
uname
Répertoire : /etc/samba/smb.conf
root@kitploit:~
[global]
wins support = yes
wins hook = /usr/bin/ls