Aller au contenu

SPN : Service Principal Name

Sécurité

SPN : Service Principal Name. « Nom de principal de service », par analogie avec le nom inscrit sur une boîte aux lettres d'immeuble : sans lui, le facteur ne sait pas à quel locataire remettre le pli.

Rôle : Dans Kerberos, un client demande un ticket pour un SPN, de la forme classe/hôte, par exemple HTTP/web.exemple.fr ; le KDC cherche le compte qui porte ce SPN et chiffre le ticket de service avec la clé de ce compte.

Unicité : Un SPN doit être enregistré sur un seul compte de l'annuaire AD. Dupliqué, il fait échouer l'authentification Kerberos de façon intermittente ; absent, le client se replie souvent sur NTLM sans rien dire.

Kerberoasting : Tout utilisateur authentifié peut demander un ticket pour un compte de service portant un SPN, puis tenter de casser hors ligne le mot de passe qui le protège. Les comptes de service à mot de passe humain, inchangé depuis la dernière réorganisation, forment à cet égard un patrimoine historique remarquablement conservé ; mots de passe longs et gérés automatiquement, chiffrement AES plutôt que RC4, sont la parade.

Homonyme : En cryptographie symétrique, SPN désigne aussi un réseau de substitution-permutation, structure interne d'AES ; le contexte lève l'ambiguïté.

Ce qui arrive si on s'en passe

Sans nom de principal de service correctement enregistré, le contrôleur de domaine ne sait pas pour quel compte émettre un ticket Kerberos. Le client se rabat alors, souvent en silence, sur NTLM, protocole plus faible qui expose aux attaques par relais et par réutilisation d'empreintes. Un SPN dupliqué produit des échecs intermittents qui poussent parfois à des contournements hâtifs, comme élargir des délégations ou assouplir des contrôles. À l'inverse, un SPN posé sur un compte à mot de passe faible offre à tout utilisateur du domaine un ticket à casser hors ligne : l'enregistrement correct va de pair avec des mots de passe de service longs et gérés.

Explication de la marmotte

Dans un réseau d'entreprise, chaque service (le site interne, la messagerie, la base de données) a besoin d'un nom officiel pour que le système central de connexion sache à qui il a affaire. Quand quelqu'un veut utiliser un service, le système central lui remet une sorte de laissez-passer scellé que seul ce service peut ouvrir. Pour sceller le bon laissez-passer, il doit retrouver le service à partir de son nom officiel. Si ce nom manque ou figure deux fois, le système ne sait plus à qui remettre quoi, et la connexion échoue ou passe par une voie moins sûre.

Où ce terme est utilisé

← Tout le glossaire