English version.
Page d'accueil

Sécurité

Je m'intéresse beaucoup à la sécurité des systèmes d'information. J'ai étudié en particulier la sécurité du serveur web WASD, et j'ai trouvé de multiples vulnérabilités, y compris la possibilité d'une intrusion avec accès SYSTEM (root). Les détails sont dans l'article publié sur la liste Bugtraq (aussi ici). Les identificateurs Bugtraq id 5811 et SecurityTracker ID 1005301 ont été affectés à ces vulnérabilités.


John the Ripper est un excellent craqueur de mots de passe. J'ai écrit un patch pour John the Ripper 1.6.32 pour craquer des mots de passe OpenVMS (Vax et Alpha). Cet outil est destiné aux administrateurs système pour détecter les utilisateurs qui choisissent trop souvent de très mauvais mots de passe, facilement devinables.

La version en assembleur craque environ 150 000 mots de passe par seconde sur un processeur x86 à 1 GHz. Craquer les mots de passe est plus facile sur OpenVMS que sur d'autres systèmes puisque les mots de passe ne font pas de distinction entre majuscules et minuscules et ne peuvent contenir que des caractères alpha-numériques, '$' et '_'. Pour cette raison, HP suggère d'utiliser des moyens d'authentification externes plutôt que le mécanisme standard de OpenVMS. OpenVMS 7.3-2 fera la distinction entre majuscules et minuscules d'après le plan.

Une documentation minimale sur ce patch est disponible. Vous pouvez vérifier la signature du patch en utilisant ma clé PGP. Des éxécutables VMS sont également disponibles. Vous pouvez aussi lire la discussion que mon annonce a générée sur comp.os.vms, et en particulier ma réponse. Dans une discussion suivante, Carl Karcher écrit que John the Ripper est vraiment un outil qui vous ouvre les yeux et vous fait savoir à quoi vous faites face. Il va certainement me faire réévaluer notre politique de longueur de mots de passe. Voir aussi cet article de Réseaux & Télécoms.


En étudiant OpenVMS, j'ai indépendamment découvert une faille, qui était en fait déjà documentée dans Phrack. Même si les droits d'accès du fichier rightslist.dat ne permettent pas la lecture, il est possible d'obtenir la liste de tous les utilisateurs avec un simple programme (source, exe Alpha). J'ai trouvé un moyen plus simple en utilisant un outil standard d'OpenVMS:

  $ define sysuaf myuaf.dat
  $ mcr authorize show /identifier/full *

Répondez oui si on vous demande de créer un nouveau sysuaf.dat. La ligne "define" n'est pas nécessaire sur le Vax où le nom logique sysuaf n'est pas défini par défaut. J'ai contacté HP à ce sujet et ils ne considèrent pas ceci comme une faille de sécurité. Les noms d'utilisateurs peuvent en effet souvent être obtenus par d'autres moyens. Mais il n'est pas très cohérent d'enlever l'accès en lecture au fichier rightslist.dat et en même temps autoriser l'accès par l'intermédiaire de l'appel système $IDTOASC. La solution recommandée par HP est de mettre manuellement l'attribut NAME_HIDDEN sur tous les identificateurs.

Notez aussi que le document OpenVMS Guide to System Security recommande en section 7.3.4: Do not leave listings of user names where they can be read or stolen because they can be used as a basis for system attack. (If you do need listing files, use ACLs to limit access only to selected individuals.) Les ACLs n'empêchent pas l'usage de l'appel système $IDTOASC. Néanmoins, ce guide est une très bonne lecture, et ses recommandations sont trop souvent ignorées.


Sur mon ordinateur personnel, j'utilise le firewall netfilter/iptables, le système d'analyse de logs logwatch et le système de détection d'intrusion snort. Les évènements de sécurité sont stockés dans une base de données MySQL par snort et logsnorter, et consultés avec l'outil d'analyse ACID. L'intégrité du système est vérifiée avec tripwire et chkrootkit.

Mon code de compression est utilisé dans de nombreux logiciels de sécurité, dont ssh, pgp et gpg. Ma clé PGP/GPG est ici.
Empreinte: E3EC F4DF 7EDB E724 A3EC FBC2 D9A2 7D25 0196 71A7

Retour à la page de Jean-loup Gailly (CV)