IT security

The following text contains some general ideas about IT security, which have been collected during the preparation of my IT security lectures (see my portfolio for details). During the years, I discovered that the most important part is to make the user aware of all the dangers that he is confronted with. I present therefore the following text that should be considered as introduction to the subject.

As the audience of the lectures was French-speaking, the text is in French.

Le texte suivant contient quelques idées générales sur la sécurité informatique qui ont été rassemblées pendant la préparation de mon cours du soir correspondant (vous pouvez trouver les détails dans mon portfolio). J'ai remarqué que l'utilisateur moyen n'est pas encore assez sensibilisé en ce qui concerne les dangers existants. Le texte présenté ici est donc à considérer comme une introduction à la matière.

Cette page est toujours en cours de rédaction. Evidemment, tous les remarques et commentaires sont les bienvenus!

Démarrage rapide

10 points pour améliorer la sécurité de votre système:

  1. Utiliser des mots de passe contenant des lettres, chiffres et caractères spéciaux d'une taille minimale de 8 à 10 positions
  2. Effectuer régulièrement des sauvegardes sur des supports externes
  3. Mettre à jour périodiquement le système d'exploitation et les applications souvent utilisées
  4. Installer un client anti-virus avec mises à jour journalières
  5. Installer un pare-feu personnel
  6. Installer un outil antispyware
  7. Sécuriser la configuration du système d'exploitation et des applications, surtout celles qui accèdent Internet
  8. Utiliser un navigateur alternatif comme par exemple Mozilla Firefox ou Opera
  9. Ne jamais soumettre des données confidentielles par une connexion non sécurisée (email inclus)
  10. Ne jamais ouvrir des liens ou exécuter des fichiers d'une source inconnue ou non fiable
Haut de page

Dangers physiques

Panne d'une ressource externe au système informatique

Un système informatique dépend de plusieurs ressources externes qui ne peuvent pas être contrôlées. Si une de ces ressources n'est plus disponible, le système tombe en panne (p.ex. lors d'une panne de courant) ce qui peut provoquer la perte de données, l'instabilité du système d'exploitation ou même la cassure du matériel.

Il est possible de réduire ces risques en réduisant le nombre de dépendances c-à-d il faut augmenter l'autonomie du système en question. Ceci est possible en utilisant par exemple des onduleurs ou UPS auxquels l'équipement est branché. Les onduleurs évitent l'arrêt abrupt en cas de panne de courant et fournissent le courant nécessaire pour terminer les transactions en cours et arrêter correctement le système.

Il est important de ne pas seulement brancher les serveurs à des onduleurs mais aussi l'équipement réseau qui interconnecte les serveurs pour que les opérations importantes entre serveurs (p.ex. sauvegardes) soient aussi terminées correctement. Ceci dépend naturellement aussi de l'infrastructure telle qu'elle a été mise en place.

Panne d'une composante du système informatique

Chaque composante d'un système informatique peut évidemment aussi tomber en panne. Pour éviter un plantage du système entier, on peut augmenter la redondance des différentes composantes. En cas de panne, la charge de travail est répartie sur les composantes restantes. Bien que le système puisse montrer parfois une légère dégradation de la performance, il continuera à fonctionner.

L'utilisation de plusieurs alimentations électriques ("redundant power supply"), ventilateurs ("redundant fans"), disques durs (systèmes RAID), cartes réseaux ou même des systèmes multiprocesseurs permet d'introduire cette redondance mentionnée.

La notion de redondance peut être étendue au réseau (p.ex. utilisation de plusieurs pare-feux redondants) ce qui protège contre des pannes du matériel mais aussi contre des attaques ou manipulations de l'extérieur.

Désastres naturels

Dépendant de l'endroit où les systèmes informatiques sont stockés, il faut se protéger contre divers désastres naturels comme par exemple inondation, coup de foudre, surchauffe ou incendie.

Les différentes protections contre ces désastres sont entre autres l'utilisation d'onduleurs (coup de foudre), l'installation d'une climatisation automatique (surchauffe) ou la mise en place d'extincteurs et de portes coupe-feu (incendie).

Accès physique

On oublie souvent de protéger suffisamment l'accès physique aux systèmes informatiques. Il est important de pouvoir contrôler et retracer les accès de toutes les personnes aux locaux concernés (p.ex. nombre limité de clefs, surveillance caméra, système de pointage, ...).

Il faut aussi assurer la qualité des portes et fenêtres pour se protéger contre le vol. L'installation d'une alarme d'intrusion s'impose.

Haut de page

Attaques de l'extérieur

Virus et vers

Tout système informatique peut être infecté par un virus, logiciel qui se reproduit et se propage sur les ordinateurs pour y provoquer des perturbations et des dégâts. Il existe plusieurs types de virus (p.ex. virus de fichier, virus résidents en mémoire, virus polymorphes, ...) qui utilisent différentes techniques de propagation. Un virus qui n'infecte pas une composante logicielle existante mais qui agit de façon indépendante est appelé vers. Les vers sont souvent utilisés pour transporter d'autres virus, troyens ou portes dérobées.

L'infection du système par un virus s'effectue dans la majorité des cas par l'utilisateur lui-même, sans que celui le sache. Cette technique, appelée ingénierie sociale, consiste à accéder des données ou des ressources protégées grâce à l'aide involontaire des personnes qui sont en possession des moyens d'y accéder ou des informations elles-mêmes. La sensibilisation des utilisateurs ainsi qu'une veille technologique sont donc très importantes pour se protéger contre cette technique.

Un virus peut aussi infecter un système en exploitant un bogue dans le système (p.ex. trou de sécurité, buffer overflow, ...). Une mise à jour périodique du système d'exploitation et des applications utilisées peut réduire ce risque.

Troyens et espiogiciels

Plusieurs logiciels malicieux comme par exemple les troyens et les espiogiciels introduisent le risque de la divulgation de données personnelles et confidentielles.

Les troyens sont des programmes camouflés qui ouvrent des portes dérobées (c-à-d des points d'entrée cachés qui contournent les moyens de protection existants) sur le système et permettent donc à un attaqueur de contrôler une partie ou la totalité du système manipulé.

Les espiogiciels surveillent l'utilisateur et rassemblent les informations personnelles qui possèdent une certaine valeur (p.ex. historique des sites visités, mots de passe et numéros de cartes de crédit introduits, ...) Ils sont souvent transportés par des vers et s'installent de façon invisible au moment de l'activation, ce qui rend une désinstallation très difficile.

Phishing

Le "phishing" consiste à envoyer des messages usurpés qui contiennent des liens sur des sites frauduleux conçus pour induire les utilisateurs à divulguer des informations personnelles et financières, telles que les numéros de carte de crédit, les noms de compte utilisateur et les mots de passe. C'est encore une variante de l'ingénierie sociale.

Messages spam

Les messages spam sont tous les messages non sollicités qui contiennent de la publicité pour divers produits. La quantité énorme de ces messages cause beaucoup de dégâts financiers chaque année à cause des ressources humaines et techniques qu'ils consument.

Haut de page

Protection des clients

Il est toujours conseillé de protéger le système par un mot de passe bien choisi. En général, un mot de passe doit avoir une longueur minimale de 8 caractères. Il doit contenir des caractères minuscules et majuscules, des nombres et idéalement des caractères spéciaux. Il ne doit pas correspondre à un nom ou un mot connu (p.ex. "password", "trustno1", ...). Une bonne méthode est de construire un mot de passe à partir d'une phrase (p.ex. "Mon père a 3 cousines et 2 cousins" donne "Mpa3ce2c").

Une sauvegarde régulière des données est très importante. Idéalement toutes les données personnelles sont stockées sur un serveur qui est sauvegardé selon une politique de sauvegarde bien définie. Une autre solution est d'utiliser des outils pour créer des backups, comme celui fourni par Microsoft dans les systèmes d'exploitation Windows. Il faut bien déterminer la fréquence des sauvegardes, les données à sauvegarder ainsi que les supports à utiliser (p.ex. bandes magnétiques, CD-RW, ...). Il est aussi conseillé de stocker les supports sur lesquels les sauvegardes ont été réalisées à un autre endroit. Ceci protège les données d'un vol ou de désastres naturels (p.ex. incendie).

Le plus important est de tester régulièrement la restauration des sauvegardes pour s'assurer de la qualité des backups existants. Ceci permet aussi de réévaluer la politique de sauvegarde et de détecter des problèmes techniques avec les backups.

Evidemment il est nécessaire d'utiliser un anti-virus pour se protéger convenablement contre une infection virale. Toutefois, il est crucial que la liste des virus qui peuvent être identifiés est tenue à jour continuellement. En générale, une configuration "défensive" du système est à préférer (p.ex. éviter de surfer avec les droits de l'administrateur, utiliser des niveaux de sécurité adéquats), ce qui limite déjà les possibilités d'un virus lors d'une infection.

La protection obtenue par un client anti-virus peut être renforcée par l'utilisation de logiciels antispyware et d'un pare-feu personnel.

Haut de page

Protection des serveurs

Renforcement du système

Il est très important d'effectuer une veille technologique pour toutes les applications exploitées sur un serveur. Toutes les mises à jour critiques concernant la sécurité doivent d'abord être testées pour être ensuite appliquées à l'environnement de production. Ceci concerne particulièrement les applications Web pour lesquelles une multitude d'outils sont impliqués (p.ex. serveur HTTP, moteur PHP, système de gestion du contenu, ...).

Le renforcement des serveurs ("server hardening") est impératif pour optimiser le niveau de sécurité d'un serveur. Il existe plusieurs méthodes, par exemple:

Après l'installation d'un nouveau serveur, il est aussi conseillé d'adapter la configuration qui est actif par défaut (p.ex. changement des ports si possible) et de changer les mots de passe des utilisateurs créés lors de l'installation.

Sauvegardes

Comme mentionné dans la partie sur la protection des clients, il est absolument nécessaire de définir une politique de sauvegarde adéquate pour les serveurs, en déterminant les données, la fréquence et le support à utiliser. De plus, il est fortement conseillé de tester régulièrement la restauration des sauvegardes. Les données sont par exemple copiées sur des bandes magnétiques qui ont une capacité de plusieurs centaines de giga-octets. En générale, on réalise chaque jour des sauvegardes incrémentales (c-à-d seulement les fichiers créés et modifiés depuis la dernière sauvegarde sont ajoutés au backup) et de faire un backup complet pendant les week-ends.

Analyse des événements

Le stockage de l'historique des événements (p.ex. accès au système, modifications d'enregistrements dans une application, ...) dans une base de données dédiée facilite la détection et le retraçage d'actions frauduleuses. L'analyse des historiques peut être faite manuellement, mais idéalement ce rôle est attribué à un système de détection d'intrusion (IDS) qui avertit le responsable si des actions suspectes ont été identifiées (par email, téléphone ou SMS).

L'enregistrement des historiques peut également avoir une importance légale.

Haut de page

Protections d'un réseau

Optimisation de l'architecture

Les postes clients et les serveurs internes sont idéalement séparés des serveurs qui sont accédés de l'extérieur. On crée alors plusieurs réseaux virtuels (VLAN) qui possèdent différentes règles et restrictions au niveau des routeurs et des pare-feux. On arrive à une ou plusieurs "zones démilitarisées" (DMZ), réseaux virtuels qui contiennent les serveurs qui sont situés entre le réseau interne (LAN) et le réseau externe (p.ex. Internet). En cas de compromission d'un serveur de la DMZ, l'accès vers le réseau interne reste interdit.

Surveillance

Les avertissements et historiques des pare-feux doivent être régulièrement contrôlés pour évaluer le niveau de risque actuel et donc pour adapter éventuellement le niveau de protection. Cette surveillance permanente ne peut plus être réalisée manuellement aujourd'hui, pourquoi il faut utiliser un système de détection d'intrusion dans le réseau (NIDS). Ces systèmes permettent d'analyser continuellement le trafic entrant et sortant, d'identifier des attaques et de modifier dynamiquement la configuration des pare-feux selon besoin.

Un exemple est présenté par le cas suivant. Le pare-feu bloque plusieurs requêtes illicites d'une adresse IP pendant une durée donnée. Le système de détection d'intrusion identifie ceci comme une attaque et indique au pare-feu de bloquer tout trafic de l'adresse IP suspecte.

Une surveillance de données quantitatives sur les indicateurs comme par exemple la bande passante ou le nombre de traitements par minute permet d'identifier rapidement des problèmes liés à du matériel défectueux.

Sécurisation des communications

La majorité des protocoles qui sont utilisés dans le monde Internet pour transférer des données (SMTP, HTTP, FTP, ...) passe les informations en clair sous une forme non chiffrée. Il est donc facile de les intercepter ou même de les manipuler sans que le destinataire ou le récepteur le remarque. Il faut donc veiller à ce qu'un protocole sécurisé soit utilisé pour le transfert de données confidentielles et sensibles.

Une communication est considérée comme sûr si on peut garantir

Les courriers électroniques qui contiennent des informations sensibles doivent être doublement chiffrés (l'expéditeur signe le message avec sa clé privée et le chiffre avec la clé publique du destinataire). Chacun doit donc posséder une paire de clé et un certificat numérique qui l'identifie (utilisation d'une infrastructure à clé publique).

Un autre exemple est la saisie de mots de passe, numéros de carte de crédit etc. sur un site Web, pour laquelle le transfert doit se faire via le protocole HTTPS pour assurer la confidentialité des données soumises. De plus, il est important de vérifier le contenu du certificat qui identifie le serveur recevant les données (p.ex. le nom auquel le certificat est enregistré).

Haut de page

Conclusion

Ce texte récapitule les réflexions essentielles que chaque utilisateur devrait faire sur la sécurité informatique de son système. Bien que la bataille entre les auteurs de logiciels malicieux et les organes de sécurité informatique n'a que commencé, chacun peut diminuer les probabilités d'être piraté ou compromis. Pour cela il est nécessaire de connaître tous les dangers et risques qui évoluent continuellement.

Un utilisateur responsable

Haut de page

Liens

Symanctec Security CheckVérification en ligne de la sécurité de votre poste
SANS Top 20 VulnerabilitiesLa liste actuelle des vulnérabilités les plus critiques
CASES LuxembourgPortail de la sécurité de l'information du Ministère d'Economie et du Commerce extérieur du Luxembourg
CERT Coordination CenterCentre de coordination pour les problèmes de sécurité informatique
Bundesamt für Sicherheit in der InformationstechnikOffice fédéral de l'Allemagne pour la sécurité informatique
This site is best viewed with any browser supporting CSS2 stylesheets
All trademarks and copyrights are property of their respective owners. Otherwise Copyright © 2005-2010 by Pierre Post. All rights reserved.
Valid HTML 4.01 Transitional Valid CSS!