Permissions des processus
100%

Permissions · Leçon 7

Permissions des processus

Découvrez comment les identifiants utilisateur réel, effectif et sauvegardé aident les processus Linux à suivre les appelants et à gérer les privilèges.

Les contrôles d’autorisation de Linux agissent sur les identifiants des processus plutôt que directement sur un nom d’utilisateur saisi. Un processus possède plusieurs identifiants utilisateur et groupe liés, chacun remplissant un rôle différent. La plupart des programmes ordinaires démarrent avec des identités identiques, tandis que les programmes privilégiés peuvent délibérément employer des valeurs distinctes.

Identifiant utilisateur réel

L’identifiant utilisateur réel désigne le compte qui a démarré le processus ou sa session de connexion ancêtre. Les programmes peuvent le consulter pour distinguer l’appelant d’une identité effective élevée.

Pour une commande ordinaire lancée par Bob, l’identifiant utilisateur réel correspond normalement à l’UID de Bob. La création d’un autre processus ne crée pas un nouveau compte et ne modifie pas à elle seule cette identité.

Qu’est-ce que l’identifiant utilisateur réel d’un processus désigne normalement ?

Identifiant utilisateur effectif

L’identifiant utilisateur effectif est l’identifiant employé pour de nombreux contrôles de privilèges et du système de fichiers. Il correspond normalement à l’UID réel. L’exécution d’un programme setuid honoré peut au contraire l’initialiser à partir du propriétaire de l’exécutable.

Par exemple, un utilitaire de mot de passe soigneusement conçu peut s’exécuter avec un UID effectif élevé afin de mettre à jour des données d’authentification protégées. Il doit néanmoins faire respecter la politique selon l’appelant, le compte demandé, les résultats de PAM et d’autres éléments de contexte. La possession d’un UID effectif ne rend pas automatiquement légitime chaque opération demandée.

Quel identifiant utilisateur sert à de nombreuses décisions de contrôle d’accès prises pour un processus ?

Identifiant set-user-ID sauvegardé

L’identifiant set-user-ID sauvegardé permet à un programme de conserver une identité qu’il pourra restaurer ultérieurement, sous réserve des règles des appels système. Un programme privilégié peut temporairement attribuer à son UID effectif une valeur moins privilégiée, accomplir un travail ordinaire avec des droits réduits, puis ne restaurer l’identité sauvegardée que pour une opération précisément limitée.

Cette approche est plus sûre que le maintien d’une autorité élevée pendant toute l’exécution, mais seulement si elle est correctement mise en œuvre. Les programmes doivent abandonner définitivement les privilèges lorsqu’ils ne sont plus nécessaires et contrôler l’échec de chaque appel qui modifie les identifiants.

Pourquoi un programme privilégié peut-il conserver un identifiant set-user-ID sauvegardé ?

Les identifiants utilisateur ne sont qu’une partie des identifiants du processus

Les processus possèdent aussi des identifiants de groupe réels, effectifs, sauvegardés et supplémentaires. Les identifiants du système de fichiers, les capacités, les espaces de noms, les modules de sécurité, les ACL, les options de montage et les politiques des services peuvent encore influencer l’autorisation. Ainsi, « l’UID l’autorise » ne constitue souvent qu’une partie de l’explication complète.

Employez des outils tels que ps et /proc/PROCESS/status pour examiner les identifiants sous Linux. La disponibilité des champs et leur format d’affichage varient ; consultez donc la documentation locale et ne modifiez pas les identifiants simplement pour expérimenter sur un système partagé.

Pour la plupart des commandes ordinaires sans transition de privilèges, comment les UID réel et effectif se comparent-ils ?

Leçon terminée

Vous avez terminé Permissions des processus

Vous savez maintenant expliquer pourquoi un processus Linux peut porter plusieurs identités utilisateur.

  • Employer l’UID réel pour identifier l’appelant d’origine.

  • Relier l’UID effectif aux contrôles d’autorisation actifs.

  • Employer l’identité sauvegardée pour comprendre les transitions de privilèges contrôlées.

  • Considérer les identifiants de groupe et les mécanismes de sécurité supplémentaires dans la décision complète.

Conservez votre progression

Créez un compte gratuit pour enregistrer cette leçon et continuer sur n'importe quel appareil.

Créer un compte gratuit
Leçon Suivante
Retour à Permissions