Plutôt que de changer les programmes afin d’adopter l’autorité, on peut utiliser les API de permutation de profils. Supposons que l’utilisatrice Carol se connecte au traitement et choisisse une option du menu qui exécute un programme chargé de créer un fichier texte dans l’IFS. Mais Carol n’a pas d’autorité sur
Permuter les profils
le répertoire IFS dans lequel le fichier est écrit. Comme l’autorité adoptée ne peut pas servir à lui donner l’autorité nécessaire, le programme utilise l’API Get Profile Handle (QSYGETPH) pour obtenir un handle d’un profil ayant l’autorité suffisante pour écrire dans le répertoire. Le programme appelle ensuite l’API Set Profile Handle (QWTSETP) et transmet le handle du profil comme un paramètre, que i5/OS permute ensuite avec le profil utilisateur du thread. Autrement dit, l’utilisatrice Carol et ses trois profils de groupes sont enlevés du thread, et le profil d’où le handle a été généré (DIR_PROF) est introduit par permutation. À présent, le thread s’exécute en tant qu’utilisateur DIR_PROF au lieu de Carol, et toutes les vérifications d’autorité sont effectuées pour les profils de groupes DIR_PROF et DIR_PROF (DIRGRP1 et DIRGRP2), comme on peut le voir dans l’exemple suivant.
Thread profile: CAROL
Thread group list: GRP_ACCT GRP_MGR GRP_PAY
Après avoir obtenu le handle et avoir permuté les profils :
Thread profile: DIR_PROF
Thread group list: DIR_GRP1 DIR_GRP2
La technique de la permutation de profils présente une difficulté : il est parfois difficile de savoir qui a réellement effectué l’action quand on analyse les entrées du journal d’audit. Le profil DIR_PROF a écrit le fichier dans le répertoire, mais quiconque peut choisir cette option du menu passe au profil DIR_PROF. L’important est de savoir quel profil a émis la requête originale. Pour le savoir, il vous faudra probablement examiner un champ utilisateur différent dans l’entrée du journal d’audit que celui que vous avez l’habitude de consulter.
Pour des raisons de sécurité, vous ne pouvez obtenir un handle de profil et passer à un autre profil que sous l’une des deux conditions suivantes : connaître le mot de passe du profil ou posséder l’autorité suffisante sur le profil luimême. Il se peut très bien que vous deviez utiliser un programme qui adopte un profil avec l’autorité spéciale *ALLOBJ pour pouvoir générer le handle pour le DIR_PROF avant que la permutation ne puisse avoir lieu. Si tel est le cas, vous devez contrôler strictement l’accès à ce programme. Je recommande également que ce programme n’effectue que deux fonctions : obtenir le handle du profil courant afin que le thread puisse être repermuté vers le requérant original et obtenir le handle et permuter vers le profil DIR_PROF. Ne faites pas de cela un programme générique de traitement de requêtes capable de générer un handle pour n’importe quel profil.
Téléchargez cette ressource
Plan de sécurité Microsoft 365
Les attaquants savent comment prendre le contrôle de votre tenant Microsoft 365, et vous, savez-vous comment le reprendre en main ?
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Cloud et IA : une maturité en retard face à l’explosion des usages
- On ne peut pas gouverner ce qu’on ne peut pas voir : pourquoi la visibilité doit-elle passer avant la gouvernance en matière de sécurité des identités ?
- L’IA amplifie les risques sur les API
- Fuites de données : la France, 2ème pays le plus touché au monde début 2026
Articles les + lus
Les coûts cachés des merge requests générées par l’IA
Femmes et métiers de la tech : une attractivité réelle freinée par des stéréotypes persistants
Moderniser le développement logiciel : de la fragmentation à l’intégration
Analyse Patch Tuesday Mars 2026
Une nouvelle ère de la modernisation du mainframe
À la une de la chaîne Tech
- Les coûts cachés des merge requests générées par l’IA
- Femmes et métiers de la tech : une attractivité réelle freinée par des stéréotypes persistants
- Moderniser le développement logiciel : de la fragmentation à l’intégration
- Analyse Patch Tuesday Mars 2026
- Une nouvelle ère de la modernisation du mainframe
