Dangers / cas problématiques
Outre l'image plutôt pittoresque du hacker pressenti comme un adolescent rebelle s'immisçant dans le système informatique de son école pour améliorer ses notes, le piratage représente aujourd'hui un danger que les centres de formation de tous niveaux doivent prendre au sérieux. Les attaques ou usages abusifs de moyens informatiques peuvent se manifester de diverses manières. Les vers Internet sont la nouvelle tendance ; nous avons compilé une vue d'ensemble des troisième et quatrième trimestres 2007.
| Reg. Rank | World Rank | Sample | Type | Propagation Vectors | Impact | Top Reporting Country | |||||||||||||||||||||
1 | 3 | W32.Stration | Worm | SMTP | Downloads and installs other threads | Czech Republic | |||||||||||||||||||||
2 | 1 | W32.Netsky.P | Worm | SMTP.P2P | Keystroke logger targets www.e-gold.com | France | |||||||||||||||||||||
3 | 9 | W.32.Stration.CX | Worm | SMTP | Downloads and installs other threads | Czech Republic | |||||||||||||||||||||
4 | 11 | W.32.Sality.U | Virus | File sharing | Downloads and installs other threads | India | |||||||||||||||||||||
5 | 5 | W.32.Stration.DL | Worm | SMTP | Downloads and installs other threads | Czech Republic | |||||||||||||||||||||
6 | 4 | W.32.Blackmal.E | Worm | SMTP File sharing | Overwrites files | Egypt | |||||||||||||||||||||
7 | 12 | W.32.Mydoom.L | Worm, backdoor | SMTP P2P | Keystroke logger and backdoor | Italy | |||||||||||||||||||||
8 | 8 | W.32.Mydoom.M | Worm, backdoor | SMTP | Downloads backdoor | United Kingdom | |||||||||||||||||||||
9 | 20 | W.32.Pinfi | Virus | File sharing | Polymorphic virus | Russia | |||||||||||||||||||||
10 | 15 | W.32.Mytob.EA | Worm, backdoor | SMTP | Allows remote access | Switzerland | |||||||||||||||||||||
Méthodes des hackers
Les méthodes appliquées par les hackers sont nombreuses. Selon son degré de connaissances, le pirate dispose de multiples outils et possibilités. Cette interprétation ne prétend aucunement à l'absolu et ne doit constituer qu'un petit aperçu.
Les informations liées au fonctionnement d'Internet et des services analogues sont publiques et, partant, accessibles librement à tout un chacun. Elles ne sont pas destinées qu'à une utilisation " civile " ; elles sont aussi à la portée des hackers. Parallèlement à la compréhension fondamentale du fonctionnement d'Internet, les vulnérabilités de ce dernier, à savoir le manque total de fonctions de sécurité, eurent tôt fait d'être mises au jour. Nombre des protocoles instaurés à l'époque et reposant sur le fondement d'Internet Transport Control Protocol / Internet Protocol (TCP/IP) souffrent aussi d'un manque de sécurité.
Avec le temps, nous apprenons des erreurs du passé, par exemple pour mettre au point de meilleurs logiciels, services ou protocole. Ainsi la version standard du nouveau protocole Internet v6 (IPv6)"next generation" est dotée de mécanismes de sécurité. Le nouveau protocole Internet est équipé d'IPsec assurant une sécurité accrue.
Prenons comme exemple les protocoles ci-après, qui présentent tous un point commun : ils font transiter les noms d'utilisateurs et les mots de passe en clair sur Internet.
Les méthodes appliquées par les hackers sont nombreuses. Selon son degré de connaissances, le pirate dispose de multiples outils et possibilités. Cette interprétation ne prétend aucunement à l'absolu et ne doit constituer qu'un petit aperçu.
Les informations liées au fonctionnement d'Internet et des services analogues sont publiques et, partant, accessibles librement à tout un chacun. Elles ne sont pas destinées qu'à une utilisation " civile " ; elles sont aussi à la portée des hackers. Parallèlement à la compréhension fondamentale du fonctionnement d'Internet, les vulnérabilités de ce dernier, à savoir le manque total de fonctions de sécurité, eurent tôt fait d'être mises au jour. Nombre des protocoles instaurés à l'époque et reposant sur le fondement d'Internet Transport Control Protocol / Internet Protocol (TCP/IP) souffrent aussi d'un manque de sécurité.
Avec le temps, nous apprenons des erreurs du passé, par exemple pour mettre au point de meilleurs logiciels, services ou protocole. Ainsi la version standard du nouveau protocole Internet v6 (IPv6)"next generation" est dotée de mécanismes de sécurité. Le nouveau protocole Internet est équipé d'IPsec assurant une sécurité accrue.
Prenons comme exemple les protocoles ci-après, qui présentent tous un point commun : ils font transiter les noms d'utilisateurs et les mots de passe en clair sur Internet.
| FTP (transfert de fichiers) | |
| HTTP (transfert de pages hypertextes sur Internet) | |
| SMTP (envoi de messages e-mail de A à B) | |
| POP (réception de messages e-mail dans la boîte aux lettres) | |
| IMAP (lecture de courriels à partir de la boîte postale) |
Le sniffing : l'écoute des communications Internet
Comme indiqué plus haut, les protocoles Internet les plus fréquemment employés font circuler des données d'inscription en clair sur Internet, ce qui expose au mode de piratage le plus simple. Il suffit à un hacker d'écouter le réseau aux endroits stratégiques à l'aide d'un analyseur réseau (ou " sniffer ") pour être à même d'intercepter presque sans effort et sans aucune difficulté les noms d'utilisateurs et les mots de passe. En plus des analyseurs réseaux standard destinés avant tout à la recherche légitime de problèmes sur le réseau, il existe désormais des outils de piratage spécialisés servant spécialement à écouter les noms d'utilisateurs et les mots de passe dans le flux de données et à les sélectionner de manière ciblée. Il va de soi qu'il est aussi possible de manipuler ces outils pour tester dans quelle mesure les mots de passe sont véhiculés sans cryptage sur son propre réseau.
Comme indiqué plus haut, les protocoles Internet les plus fréquemment employés font circuler des données d'inscription en clair sur Internet, ce qui expose au mode de piratage le plus simple. Il suffit à un hacker d'écouter le réseau aux endroits stratégiques à l'aide d'un analyseur réseau (ou " sniffer ") pour être à même d'intercepter presque sans effort et sans aucune difficulté les noms d'utilisateurs et les mots de passe. En plus des analyseurs réseaux standard destinés avant tout à la recherche légitime de problèmes sur le réseau, il existe désormais des outils de piratage spécialisés servant spécialement à écouter les noms d'utilisateurs et les mots de passe dans le flux de données et à les sélectionner de manière ciblée. Il va de soi qu'il est aussi possible de manipuler ces outils pour tester dans quelle mesure les mots de passe sont véhiculés sans cryptage sur son propre réseau.
Codes malicieux
Les codes malicieux sont, en général, des programmes qui peuvent se présenter sous la forme d'un virus, d'un vers ou d'un cheval de Troie. Ils peuvent aussi se combiner, cela s'entend. La plupart du temps, les virus et les vers ne suscitent que notre agacement, mais ils peuvent aussi causer d'importants dommages. Et ce non seulement par leur seule diffusion et l'attaque du type déni de service qui pourrait en résulter, mais aussi par la possibilité de voir des virus transporter un cheval de Troie comme passager clandestin. Dès qu'un cheval de Troie s'est infiltré dans le système, il peut permettre au pirate d'accéder à l'ensemble du système. Des spécimens mal famés de cette catégorie de chevaux de Troie sont, entre autres, "Biofrost" ou "Shark".
Ces programmes malveillants sont fréquemment utilisés pour diverses raisons. Ces intrusions peuvent être motivées par le désir de jouer un mauvais coup, mais une attaque malveillante et ciblée est tout aussi possible.
Selon une étude de Sohos 0,12% de tous les courriels envoyés sont accompagnés d'une pièce jointe contaminée - cela correspond à un courrier sur 833. La stabilité et sécurité des sites web se présentent de manière plus problématique. La statistique ci-dessous liste les sites web les plus fréquemment contaminés.
Les codes malicieux sont, en général, des programmes qui peuvent se présenter sous la forme d'un virus, d'un vers ou d'un cheval de Troie. Ils peuvent aussi se combiner, cela s'entend. La plupart du temps, les virus et les vers ne suscitent que notre agacement, mais ils peuvent aussi causer d'importants dommages. Et ce non seulement par leur seule diffusion et l'attaque du type déni de service qui pourrait en résulter, mais aussi par la possibilité de voir des virus transporter un cheval de Troie comme passager clandestin. Dès qu'un cheval de Troie s'est infiltré dans le système, il peut permettre au pirate d'accéder à l'ensemble du système. Des spécimens mal famés de cette catégorie de chevaux de Troie sont, entre autres, "Biofrost" ou "Shark".
Ces programmes malveillants sont fréquemment utilisés pour diverses raisons. Ces intrusions peuvent être motivées par le désir de jouer un mauvais coup, mais une attaque malveillante et ciblée est tout aussi possible.
Selon une étude de Sohos 0,12% de tous les courriels envoyés sont accompagnés d'une pièce jointe contaminée - cela correspond à un courrier sur 833. La stabilité et sécurité des sites web se présentent de manière plus problématique. La statistique ci-dessous liste les sites web les plus fréquemment contaminés.
| Position | Dernier mois | Pays | Reports en pourcent | ||||||||||||
1 | 1 | China (incl. HK) | 54,9% | ||||||||||||
2 | 2 | United States | 17,1% | ||||||||||||
3 | 3 | Russia | 14,4% | ||||||||||||
4 | 4 | Ukraine | 3,7% | ||||||||||||
5 | 6 | Germany | 1,0% | ||||||||||||
6= | 9= | United Kingdom | 0,7% | ||||||||||||
6= | 5 | Poland | 0,7% | ||||||||||||
6= | 7 | Netherlands | 0,7% | ||||||||||||
7= | Re-entry | Czech Republic | 0,6% | ||||||||||||
7= | 9= | Canada | 0,6% | ||||||||||||
autres | 5,6% | ||||||||||||||
Exploiter les défauts du logiciel et les défauts de configuration
La complexité des ordinateurs est devenue un énorme problème. Toute nouvelle version d'un logiciel est dotée de nouvelles fonctions, ce qui signifie aussi que de nouvelles possibilités d'attaques voient le jour. Il convient alors de ne pas lésiner pour garantir et maintenir la sécurité des systèmes.
Une grande partie des accès non autorisés à un système survient parce qu'un pirate tire parti des vulnérabilités d'un système d'exploitation ou d'une application. Bien que de nombreux fabricants mettent à disposition, souvent sans délai, des corrections pour les vulnérabilités connues, il subsiste toujours un laps de temps plus ou moins grand pour commettre une attaque. Il s'écoule des semaines ou des mois entre le signalement d'une vulnérabilité au fabricant jusqu'à l'installation d'un remède sur un système client. Sans parler des vulnérabilités dont on ignore l'existence. On peut, par exemple, se demander quand un hacker informe le fabricant de la présence d'une vulnérabilité (et si vraiment il l'en informe). Sans doute dès qu'il s'en est servi à souhait.
Cependant, les causes les plus courantes des accès non autorisés sont la configuration inadéquate des systèmes et le non respect des conseils de sécurité des manuels des logiciels. Les logiciels sont souvent installés avec les réglages par défaut (y compris les mots de passe par défaut)sans les vérifier ou adapter correctement. Or, pratiquement, toutes les applications commercialisées sont documentées sur Internet. Les bases de données en ligne comprennent les noms d'utilisateur et mots de passe par défaut de tous les logiciels disponibles sur le marché.
La complexité des ordinateurs est devenue un énorme problème. Toute nouvelle version d'un logiciel est dotée de nouvelles fonctions, ce qui signifie aussi que de nouvelles possibilités d'attaques voient le jour. Il convient alors de ne pas lésiner pour garantir et maintenir la sécurité des systèmes.
Une grande partie des accès non autorisés à un système survient parce qu'un pirate tire parti des vulnérabilités d'un système d'exploitation ou d'une application. Bien que de nombreux fabricants mettent à disposition, souvent sans délai, des corrections pour les vulnérabilités connues, il subsiste toujours un laps de temps plus ou moins grand pour commettre une attaque. Il s'écoule des semaines ou des mois entre le signalement d'une vulnérabilité au fabricant jusqu'à l'installation d'un remède sur un système client. Sans parler des vulnérabilités dont on ignore l'existence. On peut, par exemple, se demander quand un hacker informe le fabricant de la présence d'une vulnérabilité (et si vraiment il l'en informe). Sans doute dès qu'il s'en est servi à souhait.
Cependant, les causes les plus courantes des accès non autorisés sont la configuration inadéquate des systèmes et le non respect des conseils de sécurité des manuels des logiciels. Les logiciels sont souvent installés avec les réglages par défaut (y compris les mots de passe par défaut)sans les vérifier ou adapter correctement. Or, pratiquement, toutes les applications commercialisées sont documentées sur Internet. Les bases de données en ligne comprennent les noms d'utilisateur et mots de passe par défaut de tous les logiciels disponibles sur le marché.
Applications et présence Web
Depuis quelque temps, nombre d'institutions scolaires sont présentes sur le Web et proposent des informations aux élèves, aux parents et au corps enseignant. Les serveurs Web ont aussi subi une rapide métamorphose. Les technologies n'ont cessé d'évoluer à vitesse grand V. Les pages statiques font désormais place aux pages Web dynamiques, qui permettent, au besoin, d'en modifier le contenu. Toutefois, cette fonctionnalité élargie des serveurs Web engendre aussi toute une série de problèmes de sécurité.
La création d'un site dynamique implique qu'un utilisateur mentionne ce qu'il veut pour que cela soit ensuite traité par le serveur et le résultat présenté à l'utilisateur. Cependant, que se passe-t-il quand on entre une adresse que le serveur Web n'escompte pas ? Voici un petit exemple avec cette adresse URL, que l'on peut saisir dans la barre d'adresse du navigateur :
http://www.meineseite.ch/cgi-bin/php?/etc/passwd
Si le serveur de destination fonctionne sur Unix/Linux et que PHP est accessible en mode CGI, alors l'ordre ci-dessus devrait afficher sur l'écran le fichier mot de passe Unix, si le système serveur n'est pas configuré correctement.
Outre cet exemple qui exploite la vulnérabilité conceptuelle des applications basées sur CGI (Common Gateway Interface), le code programmé constitue en soi aussi un problème potentiel de sécurité. Il existe d'innombrables possibilités d'exploiter les défaillances du code programme pour pénétrer un système.
L'exemple précité représente une attaque directe du service web. Mais il existe également le risque que le site hébergeant le service web subisse des intrusions. Il existe une multitude de techniques dont nous ne mentionnons que les plus habituelles : SQL Injection, XSS, Session Hijacking etc. La plupart de ces techniques peuvent être déjouées avec une puissante Input Validation. Les attaques sont, par exemple, exécutées en introduisant un code malveillant dans un champ de recherche du site en question. Si les entrées du champ de recherche sont correctement filtrées (Input Validation), le code malveillant est reconnu et rejeté. Ces mécanismes d' Input Validation demandent toutefois un certain degré de connaissances en matière de sécurité des applications Internet. Il est également possible d'avoir recours à des logiciels externes pour contrer le piratage :
Depuis quelque temps, nombre d'institutions scolaires sont présentes sur le Web et proposent des informations aux élèves, aux parents et au corps enseignant. Les serveurs Web ont aussi subi une rapide métamorphose. Les technologies n'ont cessé d'évoluer à vitesse grand V. Les pages statiques font désormais place aux pages Web dynamiques, qui permettent, au besoin, d'en modifier le contenu. Toutefois, cette fonctionnalité élargie des serveurs Web engendre aussi toute une série de problèmes de sécurité.
La création d'un site dynamique implique qu'un utilisateur mentionne ce qu'il veut pour que cela soit ensuite traité par le serveur et le résultat présenté à l'utilisateur. Cependant, que se passe-t-il quand on entre une adresse que le serveur Web n'escompte pas ? Voici un petit exemple avec cette adresse URL, que l'on peut saisir dans la barre d'adresse du navigateur :
http://www.meineseite.ch/cgi-bin/php?/etc/passwd
Si le serveur de destination fonctionne sur Unix/Linux et que PHP est accessible en mode CGI, alors l'ordre ci-dessus devrait afficher sur l'écran le fichier mot de passe Unix, si le système serveur n'est pas configuré correctement.
Outre cet exemple qui exploite la vulnérabilité conceptuelle des applications basées sur CGI (Common Gateway Interface), le code programmé constitue en soi aussi un problème potentiel de sécurité. Il existe d'innombrables possibilités d'exploiter les défaillances du code programme pour pénétrer un système.
L'exemple précité représente une attaque directe du service web. Mais il existe également le risque que le site hébergeant le service web subisse des intrusions. Il existe une multitude de techniques dont nous ne mentionnons que les plus habituelles : SQL Injection, XSS, Session Hijacking etc. La plupart de ces techniques peuvent être déjouées avec une puissante Input Validation. Les attaques sont, par exemple, exécutées en introduisant un code malveillant dans un champ de recherche du site en question. Si les entrées du champ de recherche sont correctement filtrées (Input Validation), le code malveillant est reconnu et rejeté. Ces mécanismes d' Input Validation demandent toutefois un certain degré de connaissances en matière de sécurité des applications Internet. Il est également possible d'avoir recours à des logiciels externes pour contrer le piratage :
| Php-ids.org s'occupe de tous les aspects de l'Input Validierung et peut facilement être intégré dans un site web existant. |
Attaques DDOS
Les attaques DDOS sont une méthode d'intrusion déjà ancienne mais toujours très répandue, et il nous semble donc utile de l'exposer ici.
Afin d'éclaircir la nature des DDOS, il faut d'abord expliquer les attaques DOS (Denial of Service.
L'idée est élémentaire. Lors d'une attaque DOS, les intrus posent tout simplement des demandes de service en permanence. Après un certain temps, le service en question n'arrive plus à répondre à toutes ces demandes et collapse ou est arrêté. Autrement dit, il s'agit d'un test de capacité, susceptible de venir à bout du service.
La méthode du DDOS (Distributed Denial of Service) se distingue uniquement des attaques DOS par le fait que les demandes de service proviennent de plusieurs endroits - elles sont donc distribuées.
Se pose alors la question d'où viennent les ressources des intrus qui leur permettent de lancer une attaque à partir de différents ordinateurs. La réponse est simple : Botnets.
Un botnet ressemble à un réseau d'ordinateurs pratiquement toujours contaminés par des vers et préparés à exécuter des attaques DOS à l'occasion d'un événement précis, par exemple une heure déterminée.
Même le serveur des mises à jour de Microsoft a ainsi été interrompu pendant plusieurs heures de cette manière.
Un ver Internet bien connu exécutant une telle fonction est le MyDoom.
Les attaques DDOS sont une méthode d'intrusion déjà ancienne mais toujours très répandue, et il nous semble donc utile de l'exposer ici.
Afin d'éclaircir la nature des DDOS, il faut d'abord expliquer les attaques DOS (Denial of Service.
L'idée est élémentaire. Lors d'une attaque DOS, les intrus posent tout simplement des demandes de service en permanence. Après un certain temps, le service en question n'arrive plus à répondre à toutes ces demandes et collapse ou est arrêté. Autrement dit, il s'agit d'un test de capacité, susceptible de venir à bout du service.
La méthode du DDOS (Distributed Denial of Service) se distingue uniquement des attaques DOS par le fait que les demandes de service proviennent de plusieurs endroits - elles sont donc distribuées.
Se pose alors la question d'où viennent les ressources des intrus qui leur permettent de lancer une attaque à partir de différents ordinateurs. La réponse est simple : Botnets.
Un botnet ressemble à un réseau d'ordinateurs pratiquement toujours contaminés par des vers et préparés à exécuter des attaques DOS à l'occasion d'un événement précis, par exemple une heure déterminée.
Même le serveur des mises à jour de Microsoft a ainsi été interrompu pendant plusieurs heures de cette manière.
Un ver Internet bien connu exécutant une telle fonction est le MyDoom.
