Troisième édition du livre “Sécurité Informatique – Cours et Exercices Corrigés”

La troisième édition du livre “Sécurité Informatique – Cours et Exercices Corrigés” a été livrée à notre éditeur Vuibert et devrait être disponible cet automne! Cet ouvrage, co-rédigé avec mes collègues Gildas Avoine, Philippe Oechslin et un nouvel arrivant, Sylvain Pasini, est une refonte et une mise à jour complète. Comme «teaser», voici en avant-première l’avant-propos et la table des matières de cette nouvelle édition.

Avant-Propos

Depuis la première édition de cet ouvrage, parue en 2004, force est de constater que le paysage de la sécurité informatique a fortement changé. Avec lui, nous avions fait évoluer notre ouvrage en publiant une version en anglais en 2007, puis une seconde édition en français en 2010. Nous nous réjouissions alors de la prise de conscience des décideurs face aux menaces informatiques grandissantes. Cette prise de conscience s’est traduite ces dernières années par une augmentation très significative du nombre de formations universitaires et professionnelles en sécurité informatique et par une médiatisation sans précédent du domaine. Le monde de la sécurité informatique est devenu un écosystème complexe où de nombreux métiers et intérêts se côtoient. La sécurité informatique est également devenue une discipline à part entière qui évolue à un rythme soutenu pour intégrer les nouvelles menaces mais aussi les nouvelles méthodes et stratégies de défense.

Forts de ce constat, nous avons souhaité faire évoluer notre ouvrage pour intégrer de nouveaux sujets importants et réviser les fondamentaux au regard des connaissances actuelles. Avec l’appui d’un quatrième auteur, nous avons restructuré l’ouvrage et élargi son champ thématique en intégrant des chapitres sur les vulnérabilités et sur le développement logiciel. Les autres chapitres ont également largement bénéficié de ce travail de fond, avec l’apparition notamment de IKEv2, WEP, WPA, IPv6, SSL VPN, etc. Alors que la seconde édition de notre ouvrage ne contenait que des rappels de cours et des exercices corrigés, cette troisième édition est un support à part entière pour un cours en sécurité informatique. Notre ligne de conduite pour cette troisième édition reste toutefois inchangée : offrir un manuel pédagogique rigoureux, se concentrant sur les connaissances fondamentales et pérennes et faisant fi des effets de mode éphémères. L’ouvrage vise les enseignants et les étudiants en 2ème ou 3ème cycle d’université ou d’école d’ingénieurs, mais également en 1er cycle, par exemple en IUT ou HES, pour autant que les étudiants aient acquis les connaissances fondamentales de l’informatique, notamment dans le domaine des réseaux.

Afin d’intégrer la matière nouvelle, cette troisième édition est constituée de onze chapitres dont les deux premiers posent le socle des connaissances. Il n’est pas nécessaire de poursuivre avec une lecture linéaire car les chapitres suivants présentent des connaissances indépendantes, même si certains exercices synthétisent des connaissances présentées dans plusieurs chapitres.

Ainsi, après avoir exposé des aspects historiques de la sécurité informatique, le chapitre 1 propose une introduction à la gestion de la sécurité et présente des concepts fondamentaux auxquels il est fait référence dans les chapitres suivants. Le chapitre 2 contient quant à lui les notions fondamentales de la cryptographie, telles que le chiffrement symétrique et asymétrique, les fonctions de hachage, les mécanismes de signatures numériques et les protocoles d’authentification. Ces notions sont abordées de telle façon que les besoins en connaissances mathématiques soient réduits à la portion congrue.

Les principales vulnérabilités des réseaux informatiques sont décrites dans le chapitre 3, où les attaques les plus importantes sont détaillées. Le chapitre 4 vise au contraire à expliquer les mécanismes de défense que l’on peut mettre en oeuvre pour renforcer la sécurité d’un réseau : des systèmes tels que les pare-feux, les proxys ou les systèmes de détection d’intrusion y sont discutés.

Dans le chapitre 5 sont traités les principaux protocoles de communication sécurisés, tels que le protocoles SSL/TLS, SSH, WEP/WPA, Kerberos ainsi que les réseaux privés virtuels reposant sur IPsec ou SSL/TLS.

La sécurité de la messagerie électronique, ainsi que les normes PGP et S/MIME sont traitées dans le chapitre 6, tandis que le chapitre 7 décrit en détail le concept de code malveillant.

Dans le chapitre 8, nous avons choisi de traiter en détail la problématique des mots de passe, en mettant un certain poids sur le thème des attaques. Puisque nous ne connaissions pas d’ouvrage rédigé en français traitant des compromis temps-mémoire, souvent utilisés pour casser des mots de passe, et comme c’est un sujet de recherche qui a occupé certains d’entre nous durant de nombreuses années, nous avons délibérément décidé de traiter en profondeur ce thème spécifique.

Les chapitres 9 et 10 traitent de sécurité logicielle ; le premier repose sur la liste des 25 types de vulnérabilités les plus communes publiée par le «SANS Institute», tandis que le second attaque de manière plus spécifique le domaine des applications Web. Finalement, le chapitre 11 expose certains principes de développement sécurisé, comme l’application d’un processus de type SDL, par exemple. Une liste d’acronymes, un index aussi complet que possible ainsi qu’une bibliographie complètent cet ouvrage.
G. Avoine, P. Junod, Ph. Oechslin et S. Pasini

Table des Matières

  1. Généralités
    1. Aspects historiques
    2. Concepts de base
    3. Principes fondamentaux
    4. Gestion de la sécurité
    5. Lecture complémentaires
    6. Exercices
    7. Corrigés
  2. Notions de base en cryptographie
    1. Propriétés fondamentales
    2. Chiffrement  à clef secrète
    3. Fonctions de hachage et codes d’authentification de message
    4. Chiffrement et signature à clef publique
    5. Longueur minimale d’une clef
    6. Certificats numériques
    7. Protocoles d’authentification et d’échange de clef
    8. Lectures complémentaires
    9. Exercices
    10. Corrigés
  3. Vulnérabilités des réseaux
    1. Bases des protocoles réseaux
    2. Écoute réseau
    3. Vol de session
    4. Usurpation d’identité
    5. Détournement de connexion
    6. Découverte réseau
    7. Dénis de service
    8. Lectures complémentaires
    9. Exercices
    10. Corrigés
  4. Infrastructures réseau
    1. Pare-feux
    2. Détection d’intrusion
    3. Proxys
    4. Architecture réseau
    5. Lectures complémentaires
    6. Exercices
    7. Corrigés
  5. Communications sécurisées
    1. VPN
    2. IPsec
    3. IKE
    4. SSL/TLS
    5. SSL VPN
    6. SSH
    7. WEP/WPA
    8. Kerberos
    9. Lectures complémentaires
    10. Exercices
    11. Corrigés
  6. Sécurité de la messagerie électronique
    1. Protocoles de messagerie
    2. Vulnérabilités de la messagerie électronique
    3. Courrier électronique indésirable
    4. Protection des messages pendant leur transport
    5. Protection des messages de bout-en-bout
    6. Lectures complémentaires
    7. Exercices
    8. Corrigés
  7. Codes malveillants
    1. Description et classification
    2. Protections
    3. Lectures complémentaires
    4. Exercices
    5. Corrigés
  8. Mots de passe
    1. Authentification Linux
    2. Authentification Windows
    3. Cassage de mots de passe
    4. Compromis temps-mémoire
    5. Choix d’un bon mot de passe
    6. Lectures complémentaires
    7. Exercices
    8. Corrigés
  9. Vulnérabilités logicielles
    1. Généralités
    2. Vulnérabilités les plus fréquentes
    3. Lectures complémentaires
    4. Exercices
    5. Corrigés
  10. Vulnérabilités Web
    1. Introduction aux technologies Web
    2. L’écosystème des attaques Web
    3. Code mobile
    4. Outils de base
    5. Lectures complémentaires
    6. Exercices
    7. Corrigés
  11. Développement sécurisé
    1. Processus de développement sécurisé
    2. Audits et scanners de code
    3. Informatique de confiance
    4. Lectures complémentaires
    5. Exercices
    6. Corrigés
  12. Index
  13. Bibliographie

Workshop final du projet Obfuscator

J’ai le plaisir d’organiser le workshop de clôture du projet HES-SO/RCSO “Obfuscator”, mené conjointement par l’HEIG-VD et l’EIA-FR entre 2010 et 2012. Ce projet avait pour but d’explorer le domaine de l’obfuscation logicielle à des fins de protection contre le reverse-engineering et autres menaces. Les résultats de nos recherches seront présentés, et nous évoquerons quelques perspectives futures.

Le workshop aura lieu lundi 3 décembre 2012, dès 16h30, salle E03 à l’HEIG-VD, route de Cheseaux 1, à Yverdon-les-Bains.

 

Agenda:

  • 16h30-17h00: Mot de bienvenue, présentation du contexte
  • 17h00-17h45: Obfuscation logicielle avec LLVM
  • 17h45-18h00: Pause
  • 18h00-18h45: Protection de binaires ARM
  • 18h45-19h00: Perspectives et conclusion

Ce workshop sera suivi d’un apéro. Pour des questions de logistique, merci de bien vouloir confirmer votre présence d’ici le 28 novembre 2012 par e-mail et n’hésitez pas à faire circuler cette invitation !

Pascal Junod (HEIG-VD) et Jean-Roland Schuler (EIA-FR)

 

Vol de Données Confidentielles au SRC

Ces derniers temps, les vols de données informatiques confidentielles ont souvent fait les grands titres des médias helvétiques, principalement dans le contexte du vol de données bancaires. La semaine passée, c’est le Service de Renseignement de la Confédération qui a confessé qu’un de ses employés, apparemment un informaticien ayant des fonctions d’administrateur système, avait été arrêté juste avant qu’il ne soit en position de vendre au plus offrant des montagnes de données ayant trait au secret-défense helvétique.

Ironie du sort, c’est en voulant ouvrir un compte à numéro dans la filiale bernoise (!) d’une banque helvétique (!!) que l’employé malhonnête s’est fait remarquer, puis dénoncer aux services compétents. Les mécanismes de détection de cas de blanchiment d’argent de cette banque semblent donc avoir été efficaces, au moins dans ce cas-là.

Cela me donne l’opportunité de commenter certains aspects avec l’œil du spécialiste en sécurité informatique.

[caveat emptor]: je ne possède évidemment pas plus d’information sur cette affaire que ce qui a paru dans les médias ces derniers jours. J’ai également remarqué que les explications données dans la Sonntagszeitung de ce dimanche et dans le Matin Dimanche comportaient quelques différences. Je pars donc du principe que les informations publiques reflètent la réalité.

Source des Données et Contrôle d’Accès

La Sonntagszeitung mentionne que l’employé était responsable du système de stockage sur lesquels les analystes du SRC stockent leurs rapports et les informations annexes, en plus d’avoir accès à un réseau de partage d’information sécurisé avec d’autres services de renseignements étrangers:

Er war zuständig für die Datenspeicher, auf denen die Mitarbeiter Informationen zur Bedrohungslage der Schweiz und ihre Analysen speichern. […] Er hatte auch Zugriff auf das speziell gesicherte Netzwerk, über das ausländische Geheimdienste wie der deutsche BND oder die amerikanische CIA ihre Informationen senden.

Les informations mémorisées dans ce système de stockage ont clairement une valeur inestimable. Ce système de stockage n’a cependant pas été la cible de l’employé. Peut-être ne possédait-il pas tous les droits d’accès nécessaires, l’information étant chiffrée. Peut-être ce système de stockage était-il bien protégé et surveillé. On ne le sera probablement jamais. D’après la Sonntagszeitung, l’employé a plutôt copié le contenu du serveur de messagerie, plus d’autres données annexes devant lui permettre d’accéder aux informations sensibles chez lui:

In seinem Büro im dritten Stock des Nachrichtendienstes kopiert der Informatiker zunächst den gesamten Mailserver des NDB innerhalb des speziell gesicherten internen SILAN-Netzes. Damit gelangt er auch an Mails des militärischen Nachrichtendienstes (Mil ND) und der Führungs- und Unterstützungsbasis der Armee (FUB). […]

Mit den Mails gelangt er an unzählige Anhänge: vertrauliche Berichte an den Bundesrat, geheime Berichte ausländischer Polizei- und Nachrichtendienste über Terroristen, Waffenhändler und laufende nachrichtendienstliche Operationen. Das Mail-System ist gegen aussen abgeschottet, deshalb ist es nicht verschlüsselt. Im internen Mail-Verkehr spiegeln sich mehrere Jahre Schweizer Geheimdienstarbeit. Neben dem Mail-Server kopiert er auch das Verzeichnis seiner Abteilung und Zugangsinformationen und Passwörter – damit er das Material zu Hause überhaupt sichten kann.

Comme l’indique très bien l’article, le trésor se trouve dans les pièces attachées: comme dans toute organisation, les employés du SRC utilisent leur messagerie pour échanger sur leurs rapports, les discuter, les affiner, bref, travailler.

La phrase qui me plaît le plus est mise en évidence ci-dessus: la messagerie n’était pas chiffrée, étant donné qu’elle est isolée de l’extérieur. Le lien de cause à effet est donné par le journaliste, mais je devine qu’il ne doit pas être loin de la vérité. Cette constatation est à mettre en lumière avec le fait bien connu dans le monde de la sécurité informatique que deux tiers à trois quarts des attaques sont perpétrées par des insiders.

Dans le but de protéger un système IT, il est possible de mettre en œuvre un certain nombre de mesures techniques visant à se protéger contre les attaques internes, principalement envers les employés disposant de droits étendus sur les systèmes qu’ils administrent: chiffrement des données, que cela soit au niveau système de fichiers, des entrées d’une base de données ou de la messagerie, par exemple, ou encore partage de secret k-out-of-n, etc.

Cependant, il est également bien connu que ces mesures techniques ne peuvent pas résoudre tous les problèmes de sécurité, ceci étant d’autant plus vrai si l’on souhaite que les utilisateurs soient capables de travailler dans des conditions acceptables tout en respectant un budget raisonnable.

Monitoring et Mécanismes d’Alerte, ou: Quis custodiet ipsos custodes?

Une composante essentielle de toute stratégie de sécurité visant à se protéger contre des attaques internes est le monitoring et la remontée d’alertes. Partant du principe que la sécurité à 100% n’existe pas, on souhaitera au moins détecter le plus rapidement possible une intrusion ou une fuite de données, dans le but d’y mettre fin et d’en réduire les impacts le plus rapidement possible.

Une condition nécessaire pour qu’un système de surveillance fasse correctement son boulot est qu’il soit administré indépendamment, bref qu’une séparation des rôles soit implémentée. La Sonntagszeitung mentionne que l’employé connaissait la façon de ne pas réveiller ce système d’alerte, tandis que le Matin Dimanche nous apprend «qu’au moins un script [de surveillance ?] a été modifié».

Sécurité Physique

Une autre composante de la sécurité générale d’un système IT est sa sécurité physique. S’il est possible de voler physiquement des disques durs contenant des informations confidentielles simplement en entrant dans une salle de calcul, toutes les mesures mentionnées ci-dessous sont vouées à l’échec. Apparemment, cet employé avait la possibilité, peut-être même la permission d’entrer et de sortir avec des disques durs externes dans son sac à dos, ce qui suggère que les procédures en relation avec la sécurité physique de ces données confidentielles laissent pour le moins à désirer.

Gestion des Ressources Humaines

Finalement, on touche au nœud de l’affaire: cet employé était manifestement un employé «à problèmes»: absentéisme fréquent et prolongé, soupçon de mobbing par les collègues et son chef, etc.

Une certaine confiance dans ses employés est inévitable au fonctionnement de toute organisation, et cela a souvent été relevé par les (ex-)dirigeants du SRC. Néanmoins, une mauvaise gestion des ressources humaines peut facilement accélérer, voir encourager un employé aigri à commettre l’irréparable. A posteriori, cela semble révéler un dysfonctionnement majeur entre les personnes responsables de la gestion des ressources humaines et celles responsables de la sécurité des données.

En conclusion

L’enquête parlementaire livrera probablement ses conclusions d’ici quelques mois, et les responsabilités vis-à-vis de ce fiasco devront être définies. Je ne serais pas surpris que soient mentionnées les coupes budgétaires récurrentes et autres manques de moyens à disposition du SRC pour mener à bien sa mission, l’argent restant encore et toujours le nerf de la guerre.

Le côté positif de cette affaire est la (relative) transparence avec laquelle le SRC a communiqué sur cette triste affaire: cela aura au moins le mérite de sensibiliser encore un peu plus, s’il en était besoin, les entreprises et les administrations suisses quant à la problématique du vol de données en particulier, et de la sécurité informatique en général.