Arnaud Jumelet

Blog - Consultant - Sécurité - Identité

Taille du jeton Kerberos

Taille du jeton Kerberos

  • Comments 2
  • Likes

Rappels

La taille du jeton Kerberos est proportionnelle au nombre de groupe auquel appartient l’utilisateur. Si ce nombre est élevé, la taille du jeton Kerberos pourrait dépasser celle du MaxTokenSize, qui fixe la valeur maximale de l’espace stockage des jetons Kerberos.

La valeur par défaut du MaxTokenSize varie en fonction des plates-formes Windows comme le montre le tableau ci-dessous :

Windows 2000 RTM/SP1

Windows 2000 SP2/SP3/SP4; Windows XP; Windows 2003

Valeur de MaxTokenSize par défaut, en octets :

8 000

12 000

Note : Il est possible d’augmenter la valeur, par défaut, de MaxTokenSize en fixant la valeur désirée dans la base de registre:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\Kerberos\Parameters\
MaxTokenSize

La valeur maximum conseillée est 65 536.
Cette valeur permet à un ticket Kerberos de contenir 1600 groupes de type « domain local » ou 8000 groupes de type « global/universal ».

Impact : Si la taille du jeton Kerberos est supérieure au MaxTokenSize, l’authentification Kerberos lors de l’accès à une ressource ne fonctionne plus.

 

Procédure d’évaluation de la taille du jeton Kerberos

Pour de déterminer la taille d’un ticket Kerberos pour un utilisateur donné, deux méthodes peuvent être utilisées : l’estimation théorique et la mesure pratique avec l’outil Tokensz.

Estimation théorique

Elle se base sur la formule suivante:

Taille du jeton Kerberos (octets) = 1200+ 40d + 8s

  • 1200 : la valeur approximativement constatée sur les environnements et qui correspond aux informations génériques d’un ticket Kerberos.
  • d : correspond au nombre de groupes locaux et groupes universels définis à l’extérieur du domaine d’appartenance du compte utilisateur. Il faut également ajouter, si nécessaire, le nombre de groupes présents dans l’attribut SIDHistory de chaque groupe.
  • s : correspond au nombre de groupes globaux et universels définis à l’intérieur du domaine d’appartenance du compte utilisateur.
Estimation pratique - Tokensz

Elle se fait à l’aide de l’outil Tokensz en suivant la procédure suivante :

1. Télécharger Tokensz à l’adresse suivante :

http://www.microsoft.com/downloads/details.aspx?FamilyID=4A303FA5-CF20-43FB-9483-0F0B0DAE265C&displaylang=en

2. Ouvrir une invite de commande :

tokensz /compute_tokensize /user:nono /domain:deadbeef /password:P@ssword!

3. Relever les valeurs suivante :

· MaxTokenSize : correspond à la ligne “Current PackageInfo->MaxToken:”

· Taille courante du jeton Kerberos correspond à la ligne : “MaxToken”.

Comments
  • Comment faire tenir 1600 DomainLocal ou 8000 Global/Unerversal SID dans un champ limité a 1024 SID ?

    A ma connaissance : Augmenter la taille du Token permet d'approcher les 1024 SID mais pas de depasser cette limite.

  • Et ce que ce comportement est paramètrable? J'ai ici un token de 9k qui est envoyé à chaque requête. On peut autoriser, mais ca génére un upload monumental pour une page dynamique (100+ elements)

Your comment has been posted.   Close
Thank you, your comment requires moderation so it may take a while to appear.   Close
Leave a Comment