Aller au contenu
PURPLEDUEL

Exécutables avec le bit SUID

Privilege Escalation · niveau moyen · 4 objectifs · 600 XP au total

L'Imprimerie Rotonda & Cie ne contrôle plus les permissions de ses programmes depuis 2023. Liste les programmes qui tournent avec les privilèges de root quel que soit celui qui les lance, trouve celui qui ne devrait pas être là et regarde ce qu'il fait.

Laboratoire 3 sur 5 du parcours Privilege Escalation. Si tu bloques, tu as 3 indices, du plus vague au plus précis : ils coûtent 0, 50 et 150 XP.

Ce que tu apprends

Les objectifs se valident tout seuls pendant que tu travailles dans le terminal ; chacun rapporte des points d’expérience :

  • Lister les programmes avec le bit SUID (150 XP)
  • Les comparer à la liste standard dans audit/suid-standard.txt (100 XP)
  • Lancer le programme non standard et voir avec quels privilèges il tourne (200 XP)

Thèmes : privesc, suid, audit.

Les commandes que tu utiliseras

Le terminal est simulé et comprend une quarantaine de commandes Linux. Dans ce laboratoire, tu auras surtout besoin de celles-ci :

  • find: cherche des fichiers par nom, type ou permissions dans toute une arborescence ; lors d’un audit, il déniche clés, copies oubliées et programmes aux permissions dangereuses.
  • cat: affiche le contenu d’un fichier : la façon la plus directe de lire configurations, notes et journaux.
  • file: reconnaît quel type de fichier tu as devant toi (texte, exécutable, image) d’après son contenu, pas son nom.

L’environnement simulé

Tu travailles dans un shell Linux simulé, dans le dossier personnel de l'utilisateur runner : fichiers et dossiers imaginaires, aucune cible réseau.

En plus du dossier personnel, il y a un système simulé complet, avec des fichiers de configuration, des journaux, des utilisateurs et des permissions à examiner.

La leçon de défense

Une fois le laboratoire résolu, le compte rendu explique ce qui a mal tourné et comment se protéger :

Le bit SUID fait tourner un programme avec les privilèges de son propriétaire, quel que soit celui qui le lance : passwd et sudo en ont besoin, mais chaque SUID en trop est un morceau de root offert à tous, surtout s'il lit des fichiers réservés. Leçon défensive : audit périodique (find / -perm -4000 comparé à une base de référence), retirer le bit là où il n'est pas utile (chmod u-s), utiliser sudo avec des règles ciblées plutôt que des programmes SUID faits maison et monter avec nosuid les partitions qui n'en ont pas besoin.

Avant et après ce laboratoire

Pour l’ouvrir, tu dois avoir résolu :

Après ce laboratoire, tu peux passer à :

Le parcours Privilege Escalation

Privilege Escalation est ici un parcours d'audit : tu es sur un serveur en tant qu'utilisateur normal et tu vérifies si une mauvaise configuration permet d'obtenir plus de privilèges que prévu. Tu examines les règles sudo, les programmes avec le bit SUID, les identifiants oubliés dans l'historique et dans des fichiers, et les secrets passés en arguments des processus. Ce sont les mêmes contrôles que ceux de qui sécurise un système, et chaque laboratoire se termine par le principe qui les résume tous : le moindre privilège.

Tous les laboratoires du parcours Privilege Escalation

Approfondir avec les guides (en anglais)

Tous les guides (en anglais)