Mainframe & RACF : la sécurité au temps des dinosaures
Dans les années 50, l’informatique fait son apparition dans les entreprises. Les capacités de traitement apportées par les ordinateurs centraux (ou « mainframes ») ne pouvaient pas être égalées . Aujourd’hui nous allons nous intéresser aux systèmes de sécurité de ces ordinateurs et plus particulièrement RACF.
Historique
Resource Access Control Facility (RACF) fait son apparition sur MVS, le système d’exploitation fourni par IBM avec ses ordinateurs centraux à partir du milieu des années 70. Celui-ci se charge d’assurer la sécurité et le contrôle des opérations réalisées dans le système. Il se base sur trois principes :
- Identification et vérification de l’utilisateur
- Autorisation d’accès aux ressources
- Enregistrement et compte rendu des accès effectués
Malgré son ancienneté, ce système a évolué avec les machines et OS IBM. Aujourd’hui, il assure encore la sécurité, après presque 50 années de services, des systèmes z/OS, descendants de MVS en 64 bits.
Comment ça fonctionne ?
Le système RACF fournit les outils nécessaires pour gérer l’accès des utilisateurs aux ressources critiques. RACF conserve les informations sur les utilisateurs, les ressources et les autorisations d’accès dans des structures spéciales appelées « profils » dans sa base de données, et il se réfère à ces profils lorsqu’il décide quels utilisateurs doivent être autorisés à accéder aux ressources protégées du système.
RACF, pour aider à la protection des ressources critiques permet de :
- Identifier et authentifier les utilisateurs
- Autoriser les utilisateurs à accéder aux ressources protégées
- Enregistrer et rapporter les différentes tentatives d’accès non autorisés aux ressources protégées.
- Contrôler les moyens d’accès aux ressources
Exporter et auditer
Le principe est de traiter chaque donnée sous forme d’enregistrement, et en fonction du type d’enregistrement, les différents attributs changent.
Il existe trois catégories qui regroupent ces types d’enregistrement :
- Les groupes
- Les utilisateurs
- Les ressources
Les types d’enregistrement les plus connus sont par exemple « 0100 – Group basic data » ou « 0200 – User basic data ».
Dans une extraction RACF, nous retrouverons donc l’intégralité des enregistrements dans un seul fichier, et les quatre premiers caractères permettent d’identifier le type de l’enregistrement.
Chaque type est lui aussi bien défini. Chaque attribut est défini sur une plage de caractères, exemple avec le type 0200 :
- Caractère 6 à 13 : Login de l’utilisateur
- Caractère 50 à 53 : Etat du compte (Révoqué)
Et l’IAG dans tout ça ?
Malgré l’ancienneté des ordinateurs centraux IBM, ceux-ci sont encore très présents, notamment dans les SI des banques et assurances, la revue des comptes RACF est donc un sujet d’importance dans leur gouvernance des identités et des accès. Kleverware est en mesure d’auditer et d’analyser ces « dinosaures », ressortir les anomalies et permettre la recertification de ces données.
Première étape dans le processus, c’est de restituer les enregistrements RACF de manière plus lisible, sans que les personnes chargées des revues soient obligées de parcourir 20 pages de documentations pour savoir si l’attribut SPECIAL est attribué à un compte.
Nous avons pu le voir dans le chapitre précédent, les extractions RACF sont formatées en fonction du type de RECORD. Une fois que le type est connu, la donnée peut être transformée sous une forme plus lisible, Excel ou csv pour les plus courageux. Seuls les enregistrements utiles à la revue des comptes sont gardés.
Par expérience, voici la liste des attributs que Kleverware audite systématiquement chez ses clients :
Type d’enregistrement 0100 : « Group Basic Data »
Ce type définit les informations basiques associées à un groupe. Un enregistrement correspond à un groupe.
Type d’enregistrement 0101 : « Group subgroups »
Ce type définit les relations entre les différents groupes. Un enregistrement correspond à une relation entre deux groupes.
Type d’enregistrement 0200 : « User Basic Data »
Ce type définit les informations basiques associées à un utilisateur. Un enregistrement correspond à un utilisateur.
Type d’enregistrement 0203 : « Group subgroups »
Ce type définit les relations entre les utilisateurs et les groupes. Un enregistrement correspond à une relation entre un utilisateur et un groupe.
En plus de ces informations, Kleverware IAG intègre les données nécessaires au client pour sa revue. Dans ce but, d’autres types d’enregistrement peuvent être eux aussi extraits, comme le record 0205 « User Connect » pour les informations liées à TSO par exemple.
Une fois les informations nécessaires extraites et transformées, elles peuvent être restituées aux réviseurs au travers de l’application et s’intégrer aux restes du SI qui a été modélisé pour établir la légitimité des utilisateurs, groupes, accès liés à RACF.