Mainframe & RACF : la sécurité au temps des dinosaures

Kleverware Mainframe

Dans les années 50, l’informatique fait son apparition dans les entreprises. Les capacités de traitements 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.

Nom de l’attributPlage de caractèreDescription
GPBD_NAME6 à 13Nom du groupe
GPBD_INSTALL_DATA58 à 312Utilisé comme description du 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.

Nom de l’attributPlage de caractèreDescription
GPSGRP_NAME6 à 13Nom du groupe parent
GPSGRP_SUBGRP_ID15 à 22Nom du groupe enfant

Type d’enregistrement 0200 : « User Basic Data »

Ce type définit les informations basiques associées à un utilisateur. Un enregistrement correspond à un utilisateur.

Nom de l’attributPlage de caractèreDescription
USBD_NAME6 à 13Login de l’utilisateur
USBD_SPECIAL40 à 43Indicateur sur l’attribut SPECIAL du compte
USBD_OPER45 à 48Indicateur sur l’attribut OPERATIONS du compte
USBD_REVOKE50 à 53Indicateur sur le statut révoqué du compte
USBD_PWD_INTERVAL60 à 62Politique de l’ancienneté du mot de passe
USBD_PWD_DATE64 à 73Date de dernière modification du mot de passe
USBD_PROGRAMMER75 à 94Nom associé au compte
USBD_DEFGRP_ID96 à 103Groupe par défaut associé à l’utilisateur
USBD_LASTJOB_TIME105 à 112Heure de dernière connexion
USBD_LASTJOB_DATE114 à 123Date de dernière connexion
USBD_AUDITOR386 à 389Indicateur sur l’attribut AUDITOR du compte
USBD_REVOKE_DATE458 à 467Date à laquelle l’utilisateur sera révoqué automatiquement

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.

Nom de l’attributPlage de caractèreDescription
USGCON_NAME6 à 13Login de l’utilisateur
USGCON_GRP_ID15 à 22Nom du 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.

Vous avez aimé cet article?

Partager sur twitter
Twitter
Partager sur linkedin
LinkedIn