Ce présent rapport présente une étude théorique et expérimentale sur les moteur de recherche et les Honeyclients Open Source, cette étude à permis la mise en place d'une solution de détection des pirates et des malwares dans les sites tunisiens.
Mise en place d'une solution de détection des pirates et des malwares dans les sites tunisiens
1. REPUBLIQUE TUNISIENNE
MINISTERE DE L'ENSEIGNEMENT SUPERIEUR, DE LA
RECHERCHE SCIENTIFIQUE ET DE LA TECHNOLOGIE
*****
FACULTÉ DES SCIENCES DE TUNIS
Département des Technologies de l’Informatique
RAPPORT
De Projet de Fin d’Études
Présenté en vue de l’obtention du diplôme
D'ÉTUDE D'INGÉNIEUR EN INFORMATIQUE
Sujet :
Mise en place d'une solution de détection
des pirates et des malwares
dans les sites tunisiens
Élaboré par
Mohamed BEN BOUZID
Encadré par :
Mme Hela KAFFEL BEN AYED (FST)
Mr Sami MABROUK (ANSI)
Société d’accueil : L'Agence Nationale de la Sécurité Informatique (ANSI)
Année Universitaire : 2008/2009
2.
3. Dédicace
Je dédie ce travail
A ma mère
A mon père
A mes frères
A mes proches
A tous mes amis
Et à tous ceux qui me connaissent
4. Remerciements
Nous voudrions remercier notre encadrant à la FST Mme. Hela Kafel BEN AYED, pour
son soutien et ses recommandations judicieuses. À Mr. Sami Mabrouk, notre encadrant au sein
de la société, qui nous a permis de nous exprimer, nous a encadré, soutenus et qui n’a jamais
cessé de nous encourager. Aussi, remercions-nous Mr Ahmed Amine SOUAYAH et tout
personnel de l'Agence Nationale de la Sécurité Informatique (ANSI) ayant contribué de près ou
de loin dans le bon déroulement du projet.
Nous devons chaque bribe de notre connaissance à nos enseignants à la Faculté des
Sciences de Tunis qui ont si bien mené leur noble quête d’enseigner les bases de l’informatique.
Nous les remercions non seulement pour le savoir qu’ils nous ont transmis, mais aussi pour la
fierté et l’ambition que leurs personnes nous aspirent.
Non loin de tout projet ambitieux, il existe des gens qui partagent sans jamais se lasser
ses meilleurs et ses pires moments. Ce sont des personnes qui nous ont soutenus dans chacun de
nos instants de faiblesse, et qui, sans leurs extrême attention et gentillesse, nous ne serions pas ce
que nous sommes devenu aujourd’hui. En tête de liste de ces gens nous placerons nos familles
bien aimées qui n’ont jamais hésité à nous offrir le meilleur qu’elles pouvaient. Viennent alors
tous nos camarades de promotion , les membres du Club des Logiciels Libres à la Faculté des
Sciences de Tunis ainsi que tous nos amis qui nous ont aidés de façon directe ou tout simplement
par leur présence et leur soutien moral.
5. TABLE DES MATIÈRES
INTRODUCTION ..................................................................................................................... 1
CHAPITRE I : ÉTAT DE L'ART
1. Objet de l'étude ….......................................................................................................... 3
2. Présentation de l'entreprise …........................................................................................ 3
2.1. Historique et présentation …................................................................................. 3
2.2. Objectif …............................................................................................................. 4
2.3. Organigramme ….................................................................................................. 4
3. Présentation du projet …................................................................................................ 5
3.1. Intérêt de l'ANSI pour le projet …........................................................................ 5
3.2. Étude de l'existant …............................................................................................. 6
3.3. Problématique …................................................................................................... 6
3.4. Approche suivie …................................................................................................ 7
4. Le piratage (Hacking) et les Malwares …..................................................................... 8
4.1. Le piratage (Hacking) …...................................................................................... 8
4.1.1. Différents types de pirates informatiques …................................................ 8
4.1.1.1. Les Hackers ….................................................................................... 8
4.1.1.2. Les Hacktivistes …............................................................................. 9
4.1.1.3. Les Crackers …................................................................................... 9
4.1.1.4. Les Carders …..................................................................................... 9
4.1.1.5. Les Phreakers …................................................................................. 10
4.1.2. Le défacement Web ..................................................................................... 10
4.1.2.1. Présentation du défacement …............................................................ 10
4.1.2.2. Exemples de pages web défacées …................................................... 11
4.1.3. Motivations des Hackers …......................................................................... 13
4.1.4. Cibles des Hackers ….................................................................................. 13
4.1.5. Le piratage en Tunisie …............................................................................. 14
4.1.6. Aspects juridiques …................................................................................... 15
I
6. 4.2. Les malwares ….................................................................................................... 16
4.2.1. Les Virus …................................................................................................. 16
4.2.2. Les Vers …................................................................................................... 17
4.2.3. Les Chevaux de Troie ….............................................................................. 18
4.2.4. Les Spywares ….......................................................................................... 18
5. Conclusion …................................................................................................................. 19
CHAPITRE II : ÉTUDE SUR LES MOTEURS DE RECHERCHE OPEN SOURCE
1. Introduction …............................................................................................................... 20
2. Définition …................................................................................................................... 21
3. Moteurs de recherche et les systèmes de gestion de base de données …....................... 21
4. Fonctionnement …......................................................................................................... 21
4.1. Un outil d'exploration …....................................................................................... 21
4.2. Un outil d'indexation …........................................................................................ 22
4.3. Un outil de recherche …....................................................................................... 22
5. Moteurs de recherche propriétaires …........................................................................... 23
6. Moteurs de recherche open source …............................................................................ 24
7. Étude comparative sur les moteurs de recherches Open Source …............................... 24
7.1. DataParkSearch …................................................................................................ 25
7.2. Nutch …................................................................................................................ 25
7.3. Solr …................................................................................................................... 26
8. Choix technologique ….................................................................................................. 29
9. Étude sur le moteur de recherche Nutch …................................................................... 29
9.1. Introduction …...................................................................................................... 29
9.2. Architecture du moteur de recherche Nutch ….................................................... 30
9.3. Performance du moteur de recherche Nutch ….................................................... 30
9.4. Terminologies de Nutch …................................................................................... 31
9.5. Le crawling avec Nutch …................................................................................... 32
9.6. Systèmes de fichiers HDFS….............................................................................. 33
10. Prise en main de Nutch …........................................................................................... 33
10.1. Installation …...................................................................................................... 33
10.2. Configuration …................................................................................................. 34
11. Conclusion ….............................................................................................................. 35
II
7. CHAPITRE III : ÉTUDE SUR LES HONEYCLIENTS
1. Introduction …............................................................................................................... 36
2. Honeypots …...........….................................................................................................. 36
2.1. Définition …......................................................................................................... 37
2.2. Fonctionnement …............................................................................................... 37
3. Honeyclients …............................................................................................................. 38
3.1. Définition …......................................................................................................... 38
3.2. Honeyclients à haute interaction …...................................................................... 39
3.3. Honeyclients à interaction faible …..................................................................... 39
4. Comparaison entre les Honeyclients …......................................................................... 40
4.1. Honeyclients à haute interaction …...................................................................... 40
4.1.1. Capture-HPC …........................................................................................... 40
4.1.2. Honeyclient …............................................................................................. 41
4.1.3. HoneyMonkey …......................................................................................... 41
4.1.4. UW Spycrawler …....................................................................................... 42
4.1.5. Web Exploit Finder …................................................................................. 42
4.2. Honeyclients à faible interaction …..................................................................... 43
4.2.1. SpyBye ….................................................................................................... 43
4.2.2. HoneyC …................................................................................................... 44
4.2.3. HoneyD …................................................................................................... 45
5. Choix technologique ...................................................................................................... 46
6. Étude sur le Honeyclient MonkeySpider ….................................................................. 46
6.1. Introduction …...................................................................................................... 46
6.2. Architecture …...................................................................................................... 46
6.3. Composantes de Monkey-Spider …..................................................................... 47
6.3.1. Script de Monkey-Spider …........................................................................ 47
6.3.2. Heritrix ........................................................................................................ 47
6.3.2.1. Présentation ….................................................................................... 47
6.3.2.2. Caractéristiques ….............................................................................. 48
6.3.2.3. Fichiers .ARC …................................................................................ 49
6.3.3. ClamAV …................................................................................................... 50
6.3.3.1. Présentation ….................................................................................... 50
6.3.3.2. Fiche technique et caractéristiques …................................................ 50
III
8. 6.3.3.3. Performance …................................................................................... 51
6.4. PostgreSQL …...................................................................................................... 51
7. Prise en main de Monkey-Spider ….............................................................................. 52
8. Conclusion …................................................................................................................ 54
CHAPITRE IV : ANALYSE & SPÉCIFICATION DES BESOINS
1. Introduction …............................................................................................................... 55
2. Analyse des besoins ….................................................................................................. 55
2.1. Besoins Fonctionnels …....................................................................................... 55
2.2. Besoins non Fonctionnels …................................................................................ 56
3. Identification des acteurs et des cas d’utilisation …...................................................... 56
3.1. Identification des acteurs …................................................................................. 56
3.2. Identification des cas d’utilisation …................................................................... 57
3.2.1. Diagramme des cas d'utilisation pour l'acteur « utilisateur » ….................. 57
3.2.2. Diagramme des cas d'utilisation pour l'acteur « administrateur » ….......... 58
4. Conclusion …................................................................................................................ 59
CHAPITRE V : CONCEPTION
1. Introduction …............................................................................................................... 60
2. Pourquoi La Méthodologie UML? …............................................................................ 60
3. Détermination des diagrammes de séquence et d'activité ............................................. 60
3.1. Définition …......................................................................................................... 60
3.2. Diagramme de séquence détaillé pour « la recherche des signatures des pirates
dans les sites infectés …............................................................................................ 61
3.3. Diagramme de séquence pour « la connexion de Eurêka » …............................. 63
3.4. Diagramme de séquence pour « l'ajout d'une signature d'un pirate » ….............. 64
3.5. Diagramme d'activité pour « la recherche des malwares avec Monkey-Spider » 66
4. Conclusion …................................................................................................................ 67
CHAPITRE VI : RÉALISATION ET MISE EN PLACE DE LA SOLUTION
1. Introduction …............................................................................................................... 68
2. Installation et configuration du serveur ….................................................................... 68
2.1. Pourquoi Ubuntu serveur 9.04 ? …...................................................................... 68
2.2. OpenSSH ….......................................................................................................... 70
IV
9. 2.3. Apache Tomcat …................................................................................................ 70
2.4. PostgreSQL …...................................................................................................... 71
3. Installation et configuration de Monkey-Spider et de Nutch ….................................... 71
3.1. Intégration de Nutch dans MonkeySpider …....................................................... 72
3.2. Amélioration du comportement de Monkey-Spider …........................................ 74
3.3. Personnalisation de la recherche avec Nutch ….................................................. 74
4. Scripts et interface de gestion des malwares et des sites « Eurêka » …........................ 76
4.1. Scripts de gestion des sites …............................................................................... 76
4.2. Interface de gestion des sites et des malwares « Eurêka » …............................... 77
5. Testes et résultats ........................................................................................................... 78
6. Conclusion …................................................................................................................ 80
CONCLUSION GÉNÉRALE …............................................................................................... 81
V
10. LISTE DES TABLEAUX
Tableau N°1 : Parts de marché des moteurs de recherche dans le monde …........................ 23
Tableau N°2 : Étude comparative sur les moteurs de recherche open source ….................. 27
Tableau N°3 : Faible interaction vs Haute interaction …...................................................... 40
Tableau N°4 : Comparaison entre les honeyclients à haute interaction …............................ 43
Tableau N°5 : Comparaison entre les honeyclients à faible interaction …............................ 45
VI
11. LISTE DES FIGURES
Figure N°1 : Organigramme de l'Agence Nationale de la Sécurité Informatique …............... 4
Figure N°2 : Google Maroc avant et après le défacement – Le 09/05/2009 …....................... 11
Figure N°3 : sony.co.nz avant et après le défacement – Le 09/05/2009 ….............................. 12
Figure N°4 : Site de la police Britannique après l'attaque d'un pirate Tunisien ….................. 12
Figure N°5 : Mode de fonctionnement du moteur de recherche Nutch ….............................. 32
Figure N°6 : Processus cyclique du crawling …...................................................................... 32
Figure N°7 : Interface graphique par défaut de Nutch …........................................................ 34
Figure N°8 : Honeyclient vs Honeypot …............................................................................... 38
Figure N°9 : Architecture simplifié de Monkey-Spider …...................................................... 47
Figure N°10 : Interface de Héritrix pour la gestion des jobs …............................................... 49
Figure N°11 : Étude sur la performance de ClamAV ….......................................................... 51
Figure N°12 : Diagramme des cas d’utilisations général pour l'acteur « utilisateur » …........ 57
Figure N°13 : Diagramme des cas d’utilisations général pour l'acteur « administrateur » ..... 58
Figure N°14 : Diagramme de séquence pour « la recherche des signatures des pirates dans
les sites infectés » …......................................................................................... 62
Figure N°15 : Diagramme de séquence pour la connexion avec Eurêka …............................ 63
Figure N°16 : Diagramme de séquence pour l'ajout d'une signature d'un pirates …............... 64
Figure N°17 : Diagramme d'activité pour la recherche des malwares avec Monkey-Spider... 66
Figure N°18 : Serveurs installés par défaut avec Ubuntu SE ….............................................. 69
Figure N°19 : Avant couplage de Nutch avec Monkey-Spider …........................................... 73
Figure N°20 : Après couplage de Nutch avec Monkey-Spider …........................................... 73
Figure N°21 : Écran de recherche classique avec Nutch …..................................................... 74
Figure N°22 : Écran de recherche des pirates dans les sites Tunisiens …............................... 75
Figure N°23 : Écran des statistiques du crawling des sites avec Heritrix …........................... 76
Figure N°24 : Écran de connexion à « Eurêka » …................................................................. 77
Figure N°25 : Interface de « Eurêka » pour la gestion des malwares trouvés …..................... 79
Figure N°26 : Interface de « Eurêka » pour la gestion des sites ….......................................... 79
VII
12. Introduction générale
Introduction générale
Aujourd'hui, Internet se développe de plus en plus et les personnes qui s'y connectent se
sont multipliées de façon considérable. Avec cette croissance, l'ampleur des menaces pour ces
personnes est en augmentation et la sécurité informatique est devenue un besoin vital vis-à-vis
des incidents et des vulnérabilités. Des contres mesures sont nécessaires pour la protection des
systèmes informatiques ainsi que le suivi de l'évolution de ces attaques.
Cette extension rapide de l'Internet a fait naître de nouveaux horizons en terme de
communication et d'échange bouleversant profondément nos habitudes. Mais ce brusque
changement a vu naître aussi la peur du « pirate informatique».
Nous définissons les pirates informatiques comme des internautes qui utilisent leurs
connaissances pour défaire ou contourner, à but malveillant, les systèmes et les réseaux
d’informations.
Ce genre de délinquance sur le Net ne cesse de se développer, et nous entendons parler
aujourd'hui de la cybercriminalité, les pirates se font de plus en plus efficaces, diversifient leurs
stratégies et techniques d'attaques et deviennent plus professionnels que jamais. Ils s'installent
sur notre ordinateur, ils enregistrent nos mots de passe au moment où nous nous connectons à
notre banque pour consulter notre compte, ils utilisent notre carte bancaire pour acheter des
objets sur internet. Il y a aussi ces fausse annonces, les sites piégés. Aujourd'hui les
cybercriminels ne sont plus des jeunes en manque d'autorité, ils sont des techniciens appartenant
à des réseaux mafieux qui font exploser les frontières de l'arnaque facile.
Leurs cibles peuvent être n’importe quel réseau d’entreprise, des serveurs névralgiques
d’Internet ou institutions éducatives, des sites de gouvernement, ou même de simple
internautes... Ils sont aussi à l’origine d’un certain nombre de menaces tels que les virus, vers,
espions, etc.
Mais comment arrive-t-on à prendre contrôle de notre ordinateur? Comment copie-t-on
notre code secret? C'est simple, on y introduit un programme espion, un Cheval de Troie sans
que nous le sachions SIMPLEMENT quand nous nous connectons sur internet.
-1-
13. Introduction générale
Avec la diversification des méthodes utilisées par les Hackers, il est presque impossible
de les empêcher d'introduire des malwares dans les sites, jugés même parfois sécurisés. C'est là
notre point de départ qui consiste à étudier la vulnérabilité des sites web Tunisiens ainsi que les
hackers dont ils sont victimes.
Le présent rapport est structuré en six chapitres. Nous allons commencer par présenter
notre projet dans le premier chapitre. Nous essayerons d'introduire le piratage (Hacking) et les
types de Malwares, et nous finirons par mettre en valeur les risques des attaques web ainsi que
les avantages de détection de malwares dans les sites.
Dans le deuxième chapitre, nous présenterons les moteurs de recherche ainsi que leurs
mode de fonctionnement, puis nous présenterons une étude comparative sur les moteurs de
recherche Open Source. Suite à notre choix technologique, nous allons procédé à détailler le
fonctionnement d'un moteur de recherche suivie d'une installation et mise en place de ce moteur
de recherche.
Tout comme le deuxième chapitre, nous essayons de présenter dans le troisième chapitre
les composantes de notre projet. Dans ce chapitre, nous présenterons l'utilité des Honeypots, la
notion de Honeyclients à haute interaction et à faible interaction, et nous finirons par une étude
comparative sur les clients Honeypots.
Dans le chapitre suivant, on brossera les spécifications fonctionnelles de notre projet
englobant les besoins fonctionnels et non fonctionnels, ainsi que notre approche de mise en place
de l'application.
Le cinquième chapitre sera consacré à la conception de notre projet. c'est ainsi quelques
diagrammes de séquence et d'activité seront présentés pour décrire les besoins fonctionnels de
notre projet.
Enfin, le dernier chapitre étalera les différentes étapes de mise en place de l’application,
la plateforme d’utilisation, les fichiers de configurations des différents outils, l’intégration des
uns avec les autres ainsi que les codes sources à implémenter pour mettre en concordances tous
ces outils. Une analyse des résultats sera présentée pour mettre en valeur l'apport de notre projet.
-2-
14. Chapitre 1 Présentation du projet et État de l'art
CHAPITRE 1
Présentation du projet et état de l'art
1. Objet de l'étude
Le présent rapport de stage a été réalisé dans le cadre du projet de fin d'études, en vue de
l'obtention du diplôme d'étude ingénieur en informatique à la Faculté des Sciences de Tunis. Le
sujet du stage a été proposé par l'Agence Nationale de la Sécurité Informatique (ANSI -
Direction Technique). Il a pour but de définir et de mettre en place une solution de détection de
pirates informatique à travers leurs signatures textuelles, et des Malwares hébergés dans les
sites Tunisiens.
Nous allons commencer par une installation et configuration d'un serveur Ubuntu SE 9.04
pour passer ensuite à l'installation et la configuration des différentes composantes de la solution,
puis nous réaliserons une interface graphique de gestions des Malwares trouvés, ainsi que la
listes des sites et les serveurs qui les hébergent. Enfin, nous allons essayer de présenter quelques
statistiques résultants d'une suite de tests d'évaluation de la solution réalisée.
2. Présentation de l'Agence Nationale de la Sécurité Informatique (ANSI)
2.1. Historique et présentation
La sécurité des données a toujours constitué une préoccupation majeure des pouvoirs
publics en Tunisie au même temps qu'elle constitue une garantie pour le respect individuel.
C'est dans ce contexte qu'il y a eu en 1999 le lancement d'une "Unité de gestion par
objectifs pour la réalisation du développement de la sécurité informatique" au sein du Secrétariat
d'État en informatique dont le rôle était de suivre de près les derniers développements en matière
de sécurité informatique et de veiller à l'amélioration de la sécurité des applications pour une
-3-
15. Chapitre 1 Présentation du projet et État de l'art
mise en œuvre efficace.
Pour cet effet, suite à une décision présidentielle, l'Agence Nationale de la Sécurité
Informatique (ANSI) fut créé en 2004 [1].
2.2. Objectif
L'Agence Nationale de la Sécurité Informatique effectue un contrôle général des systèmes
informatiques et des réseaux relevant des divers organismes publics et privés, elle est chargée
des missions suivantes:
• Veiller à l'exécution des orientations nationales et de la stratégie générale en matière de
sécurité des systèmes informatiques et des réseaux.
• Suivre l'exécution des plans et des programmes relatifs à la sécurité informatique dans le
secteur public à l'exception des applications particulières à la défense et à la sécurité
nationale et assurer la coordination entre les intervenants dans ce domaine.
• Établir des normes spécifiques à la sécurité informatique et élaborer des guides
techniques en l'objet et procéder à leur publication.
• Œuvrer à encourager le développement de solutions nationales dans le domaine de la
sécurité informatique et à les promouvoir conformément aux priorités et aux programmes
qui seront fixés par l'agence.
• Participer à la consolidation de la formation et du recyclage dans le domaine de la
sécurité informatique.
• Veiller à l'exécution des réglementations relatives à l'obligation de l'audit périodique de la
sécurité des systèmes informatiques et des réseaux.
2.3. Organigramme:
Direction générale
Direction administration
Direction Technique Direction Suivi et stratégie Direction Cert-Tcc
et finance
Figure N°1 : Organigramme de l'Agence Nationale de la Sécurité Informatique
-4-
16. Chapitre 1 Présentation du projet et État de l'art
La Direction Générale: elle a pour rôle de contrôler les autres départements de
l'organisation, de veiller sur les biens de la société, à choisir les bonnes directives et les
bonnes décisions.
La Direction Technique: elle a pour rôle de tester des produits et le développement du
code source.
La Direction Suivi et Stratégie: cette direction a pour fonctions:
• L'étude des normes et méthodologies d'audit;
• L'étude des cahiers de charge de sécurité;
• Le suivi des rapports d'audit;
• La certification des auditeurs externes.
La direction Cert-Tcc: La direction Computer Emergency Response Team-Tunisian
Coordination Center a pour rôle de:
• Sensibiliser les locuteurs à propos des Virus et des Vulnérabilités propagés dans
notre pays par l'envoi des mails.
• Assurer un service Call-Center dédié à répondre aux incidents.
• Déclarer les incidents et leurs circonstances.
• Étudier les attaques et l'environnement de leurs propagations en Tunisie.
3. Présentation du projet
3.1. Intérêt de l'ANSI pour le projet
À travers le monde, et particulièrement en Tunisie, les entreprises, les sociétés, les
institutions éducatives, d'enseignement et bien d'autres sont totalement conscientes du poids que
représente la médiatisation d'informations à travers internet, le gain de temps apporté par cette
dernière au niveau des échanges d'informations, ainsi que le gain d'argent qu'elles peuvent avoir
du fait que la nature de leurs activités sont destinées à des clients distants.
Le problème est que ces organisations vont ouvrir leurs systèmes de communication à
travers des sites web non seulement aux clients, mais aussi, involontairement, aux concurrents et
aux agresseurs et internautes malveillants. Cet ensemble de réseaux, éparpillés de part et d'autre
dans le monde, représente donc un environnement idéal pour laisser infiltrer les intrus de tout
genre. C'est un immense terrain de chasse, quasi infini, pour ce qu'on appelle les cybercriminels.
Dans le monde entier, la guerre contre les pirates s'accentue et la lutte contre le piratage
-5-
17. Chapitre 1 Présentation du projet et État de l'art
devient une préoccupation primordiale. C'est dans ce cadre que l'Agence Nationale de la Sécurité
Informatique a décidé de s'investir dans un projet de détection de pirates et de Malwares dans les
sites Tunisiens.
3.2. Étude de l'existant
À l'ANSI, nous faisons référence aux sites spécialisés dans l'archivage des sites défacés
tels que zone-h.org, comme l'une des approches de détection des défigurations. Nous avons
recours aussi à la recherche par Google de l'ensemble des sites tunisiens qui peuvent contenir un
mot appartenant à un ensemble de mots se référant au domaine de piratage, tel que : hacked,
owned…
L’agence Nationale de la Sécurité Informatique dispose de plusieurs solutions pour
garantir la surveillance du cyber-espace tunisien à temps réel, notamment le régime de sécurité
«SAHER». Lancé à l’occasion de la tenue du Sommet Mondial sur la Société de l’Information à
Tunis (2005), Saher est la composante technique du CERT-TCC. C'est un ensemble d'outils
techniques établis dans un environnement open source.
Il est constitué de trois parties :
SAHER-IDS: identification des activités non autorisées et potentiellement malicieuses
(attaques, scans, DDOS,…) ciblant les systèmes informatiques tunisiens.
SAHER-WEB: surveillance des sites web tunisiens contre les attaques de type
défacement de contenu web, Phishing, …
SAHER-SRV: contrôle de la disponibilité des services Internet tels que les serveurs DNS,
les serveurs Mail, … contre les attaques de type Mail Bombing [G1], DNS Poisoning
[G2], …
3.3. Problématique
Dans notre problématique, nous avons deux points importants à mettre en relief. Le
premier consiste au fait que nous utilisons le moteur de recherche Google pour la recherche des
sites web défaillés ou contenant des malwares. Le deuxième est la fréquence de visite de ces
sites.
Le projet Saher mis en place à l’ANSI, utilise le moteur de recherche Google. Ce dernier
est configuré de telle manière qu’il revisite les sites, pour ré-indexer leur contenu en intégralité,
suivant leur référencement et le nombre de liens qui pointent vers eux. Tant que ces délais ne
sont pas publiés en publique, nous constatons à l'agence qu'une même URL est revisitée en
-6-
18. Chapitre 1 Présentation du projet et État de l'art
moyenne une fois tous les cinq ou six jours. Ainsi les sites hébergés dans le domaine tunisien
sont parcourus en entier dans ce délai, un délai qui ne garantit pas un contrôle de contenu et
fiable des sites web.
Une fois les pages sont visitées, elles sont enregistrées sur le disque dur d’un serveur avec
la commande Wget (Wget est un programme en ligne de commande non interactif de
téléchargement de fichiers depuis le Web. Il supporte les protocoles HTTP, HTTPS et FTP ainsi
que le téléchargement au travers des proxis HTTP). Cette commande est très performante mais
on verra par la suite les avantages d’avoir son propre outil de téléchargement des pages web.
Utiliser Google comme moteur de recherche, ne nous permet pas de bien contrôler les sites
tunisiens.
Enfin, notons les difficultés rencontrées pour la détection des site défaillés, ou contenant
des malwares En effet, actuellement, la recherche des pirates se fait par consultation des sites un
par un, ou la par la déclaration des internautes qu'un site a était piraté, ce qui n'est pas de tout
fiable, ni rapide.
3.4. Approche suivie
Notre idée de départ était de mettre en place un moteur de recherche pour déterminer les
sites piratés à travers les signatures textuelles des pirates, donc l'idée principale partait d'une
installation d'un moteur de recherche Tunisien. Puis, au fur et à mesure, nous constations que la
plupart des pirates utilisent des techniques très évoluées, non pas pour modifier le contenu d'un
site, mais plutôt pour placer dans ces sites des codes malveillants tel que des Keyloggers [G3],
des Espions, ou des Chevaux de Troie leurs permettant d'espionner non pas les sites, mais plutôt
les clients de ses sites. Donc, suite à cette constatation, nous avons pensé à étudier la
vulnérabilité des sites web en scannant leurs contenu par l'intermédiaire d'un client Honeypot.
Lors des premiers tests de cette solutions, plusieurs problèmes font face dont,
principalement, le problème de la redondance du crawling. En effet, dans notre approche, les
deux outils à savoir le moteur de recherche, et le Honeyclient font tous les deux leur propre
crawling qui est identique à l'autre. Ceci nous a amené à penser à faire un seul crawling, et faire
de la sorte que le deuxième outil fait le crawling à partir du premier crawling,
Un autre problème incontournable était le fait que notre Honeyclient prenait en paramètre
le chemin d'un seul fichier ARC crawlé la Heritrix. De ce fait nous avons pensé à modifier le
code source pour prendre en paramètre tous les .ARC d'un répertoire donné et c'est ainsi que la
génération d'un fichier log détaillé était nécessaire.
-7-
19. Chapitre 1 Présentation du projet et État de l'art
Enfin, nous avons pensé au développement d'une interface graphique en J2EE pour
faciliter la gestion des sites Hyperliens et des malwares trouvés ainsi que la liste des signatures
des hackers.
4. Le piratage (Hacking) et les Malwares
4.1. Piratage (Hacking)
Serveurs piratés, numéros de cartes bancaires volés, sites web défigurés (defacing),
données personnelles publiées ou vendues sur le Net,... nous estimons aujourd'hui à moins de
quatre minutes le temps moyen pour qu'un PC non protégé connecté à Internet subisse une
tentative d'intrusion ou soit contaminé par un programme malicieux [2]. De nos jours, les pirates
informatiques font de plus en plus parler d'eux.
4.1.1. Différents types de pirates informatiques
Dans le domaine du piratage informatique, il existe plusieurs types de pirates :
4.1.1.1. Les Hackers
L'origine du mot « Hacker » remonte à l'arrivée du premier ordinateur au MIT
(Massachusetts Institute of Technology, université Américaine située à Cambridge): l'IBM 704.
Cet ordinateur devient rapidement la proie d'étudiants passionnés qui vont pousser la machine à
bout, la « bidouillant » dans les moindres détails, sans se soucier des protocoles d'utilisation
d'IBM pour une machine de plusieurs millions de dollars. A l'époque, nous qualifions leurs
travaux avec le terme Hacking qui était le fait d'utiliser une machine ou une technologie à des
fins qui n'étaient pas prévus. Aujourd'hui, le mot Hacker désigne un grand spécialiste de
l'informatique, que ce soit dans le domaine de la sécurité que celui de la programmation ou d'un
quelconque autre domaine de l'informatique[3,4].
Nous distinguons différentes catégories de Hackers :
➢ Le Hacker White Hats : les white hats utilisent leurs savoirs et leurs connaissances au
service de la société actuelle. Ils peuvent être consultants en sécurité, administrateurs
réseaux ou travailler au sein de la communauté open source. Certains d'entre eux sont
d'ailleurs à l'origine de l'open source et de la philosophie qui en découle. Devenir un
hacker white hats c'est assimiler des connaissances et de l'expérience en participant aux
projets de la communauté afin d'être accepté par ses membres. Cela nécessite de
-8-
20. Chapitre 1 Présentation du projet et État de l'art
l'investissement dans des projets open source et d'adopter une certaine culture.
➢ Le Hacker Black Hats : les black hats utilisent leurs connaissances pour défaire ou
contourner, à but malveillant, les systèmes et les réseaux d'informations. Ils ont
également leur propre communauté. Nous pouvons les qualifier de « pirates
informatiques » dans le sens où leurs actions sont nuisibles.
➢ Le Hacker Grey Hats : les grey hats sont entre les White Hats et les Black Hats: ils n'ont
pas de buts nuisibles mais n'hésitent pas à pénétrer certains réseaux ou systèmes de façon
illégale. Ils cherchent plutôt l'exploit et la renommée.
4.1.1.2. Les Hacktivistes
« Hacktivisme » vient de la fusion des mots Hacker et activisme. L'Hacktiviste est un
Hacker dont les objectifs sont politiques et emploie ses connaissances en informatique pour
diffuser et promulguer ses opinions. Ses actions les plus spectaculaires sont notamment le
piratage de sites informatiques en altérant les données, en détournant des serveurs, en remplaçant
des pages d'accueil afin de détourner la signification et l'engagement de ces sites. Si le
Hacktivisme est une nouvelle forme de protestation et bien souvent une manière de se faire
entendre, cela reste une action totalement illégale. « Hacktiviste » est donc évidemment un autre
sens que nous donnons au « pirate informatique » [4].
4.1.1.3. Les Crackers
Le cracker est spécialisé dans le cassage des protections des logiciels. Il possède de très
bonnes connaissances en assembleur ainsi que des outils (désassembleur, débogueur…) qui lui
permettent d'analyser le code d'un programme transmis au processeur. Cela lui permet de
neutraliser ou contourner les mesures de protections d'un logiciel en créant un patch (ou crack),
ou bien un « keygen » dans le cas de logiciels protégés par des clefs [4].
4.1.1.4. Les Carders
Ce sont les Hackers pour les systèmes embarqués. Ces pirates s'attaquent principalement
aux systèmes de cartes à puces (en particulier les cartes bancaires) pour en comprendre le
fonctionnement et en exploiter les failles [4].
-9-
21. Chapitre 1 Présentation du projet et État de l'art
4.1.1.5. Les Phreakers
Les Phreakers sont les Hackers des systèmes téléphoniques. Ils peuvent se décrire comme
le détourneurs de services de télécommunication, par divers procédés, dans le but d'éviter les
grosses factures de téléphone ou les oreilles indiscrètes. Un autre type de piratage téléphonique
est l'utilisation détournée des téléphones cellulaires. Avec ce type de téléphones, aucune
connexion physique n'est nécessaire et il est facile d'écouter les conversations au moyen de
scanners GSM et autres. Les téléphones cellulaires sont aussi facilement reprogrammables : les
malfaiteurs peuvent ensuite les utiliser sans payer leurs communications, qui seront facturées aux
véritables propriétaires [4].
4.1.2. Le défacement Web
4.1.2.1. Présentation du défacement
Parmi les attaques les plus répondues, le Web « defacement », défaçage ou défiguration
de page web, est un anglicisme désignant la modification non sollicitée de la présentation d'un
site Web, suite au piratage de ce site. Il s'agit donc d'une forme de détournement de site Web par
un pirate. Elle touche la crédibilité et la réputation de l'organisation en général.
Les défacements sont provoqués par l'utilisation de failles présentes sur une page Web ou
tout simplement une faille du système d'exploitation du serveur Web. En effet, le pirate doit en
premier lieu récupérer les noms et les mots de passe des utilisateurs pour accéder au serveur qui
héberge les sites web. Ceci est faisable par le biais des techniques de collecte de données, qui
exploite les vulnérabilités du système (par exemple : la lecture des pages web global.asa [G8] qui
sont supposées inaccessibles, les informations publiques telles que les enregistrements des noms
de domaines (domain registration records))… Après avoir récupérer un nom d'utilisateur du
système, il peut deviner le mot de passe. Cette tâche est facilitée par les études sociales menées
(date de naissances, numéro de téléphone…)
Une fois introduit, le pirate a pour but de bénéficier des droits d’administration pour avoir
accès à toutes les données et les opérations. Il s’informe sur la version exacte et les niveaux des
patchs associés au système d’exploitation, les versions des paquets installés sur la machine ainsi
que les services et les processus actifs sur la machine. Il peut par la suite s’infiltrer par une faille
qu’il découvre dans les programmes installés. Ainsi il gagne des privilèges d'accès et contrôle du
serveur. Le défacement est effectué ensuite par la modification du contenu des pages du site visé.
- 10 -
22. Chapitre 1 Présentation du projet et État de l'art
La plupart du temps, les sites défacés le sont uniquement sur la page d'accueil.
Une page défacée peut contenir plusieurs éléments :
• Un fond uni, qui peut être le seul indice de défacement d'un site; la plupart du temps la
page d'accueil est blanche ou noire.
• Généralement, un simple mot, comme « owned », « hacked » ou bien le pseudonyme du
défaceur.
• Une image est assez souvent présente, et affiche les revendications du défaceur. Nous
trouvons souvent des symboles se référant à la mort (crânes…), un drapeau sous lequel le
défaceur est fier d'agir etc.
• Parfois plus qu'un simple mot, plusieurs phrases pouvant être de différentes natures
(insultes envers des États, des défaceurs adverses, une revendication spécifique…).
• Une explication simple de la façon dont le défaceur a acquis l'accès en écriture sur le site
accompagnée à l'occasion d'une moquerie envers le webmestre ou l'administrateur du site
en question.
• plus rarement des fichiers audio, vidéo ou même Flash.
4.1.2.2. Exemples de pages web défacées
• Google Maroc : Google.co.ma, illustré dans la figure N°2, a été défacé par le groupe de
pirates pakistanais "PAKbugs". Une fois encore une faille d'injection SQL a été utilisée
chez le registrar domain.ma, les défaceurs ont ensuite accédé au NIC marocain (nic.ma)
avec les mêmes identifiants d'administrateurs récupérés sur domain.ma afin de modifier
les serveurs DNS associés au nom de domaine.
Avant Après: le 09/05/2009
Figure N°2 : Google Maroc avant et après le défacement – Le 09/05/2009
- 11 -
23. Chapitre 1 Présentation du projet et État de l'art
• Le 21/04/2009, certains defacers turcs ont pénétré dans le bureau d'enregistrement basé
en Nouvelle-Zélande « Domainz.net » (qui appartient à MelbourneIT) et ont défacé
certains de leurs sites Web de leurs clients de haut niveau comme Microsoft, HSBC,
Coca-Cola, F-secure, Bitdefender, Sony et Xerox.
Avant Après: le 21/04/2009
Figure N°3 : sony.co.nz avant et après le défacement – Le 09/05/2009
• Le site Internet de la police Britanique piraté par un cyber intrus Tunisien : Après le
Home Office Crime Reduction Unit, la police britannique a connu le 09/06/2008 un
nouveau passage d'un pirate informatique dans ses e-murs. Le site web de la police de
Bedfordshire a été piraté par un jeune internaute de 17 ans qui a signé son attaque sous le
pseudonyme de <nom_et_prénom_du_pirate>. Le jeune barbouilleur a affiché, en plus
d'une tête de mort et d'un porte drapeau le message « This site was hacked by
<nom_et_prénom_du_pirate> » [5].
Figure N°4 : Site de la police Britannique après l'attaque d'un pirate Tunisien – Le 09/05/2009
- 12 -
24. Chapitre 1 Présentation du projet et État de l'art
4.1.3. Motivations des Hackers
Certains affirment s'attaquer aux systèmes informatiques juste pour le plaisir et pour le
challenge. Certains veulent juste se faire connaître, d'autres, cherchent à trouver un emploi parce
que le Hacking est devenu aujourd'hui un métier. Aujourd'hui, les pirates qui attaquent des
serveurs pour gagner de l'argent ou accéder aux données financières ne sont pas très nombreux.
Car ce type de piratage nécessite des compétences de très haut niveau. Dans le monde entier, la
majorité des attaques proviennent des script-kiddies [G4]. Ils n'ont pas besoin de compétences
pointues et se contentent d'installer des chevaux de Troie téléchargés sur le Net.
4.1.4. Cibles des Hackers
Contrairement aux idées reçues, les particuliers font partie des cibles privilégiées des
pirates informatiques car ils ne disposent souvent d'aucun moyen de protection. Certain affirment
que c'est un jeu d'enfant pour un Hacker d'accéder à leurs mots de passe Internet ou à leurs
documents personnels. Mais qu'est-ce qu'un Hacker espère trouver sur un ordinateur personnel ?
Les histoires de piratage ne sont-elles pas réservées aux grandes entreprises?
Les chevaux de Troie ou « Troyens » constituent pour les pirates un des meilleurs
moyens pour s'infiltrer dans un ordinateur. A la différence des virus, les chevaux de Troie ne
cherchent pas à contaminer les fichiers mais agissent comme un espion au service du pirate qui
l'a envoyé. Cachés derrière une apparence innocente, généralement les images ou des document
PDF, mais aussi des logiciels gratuits, un accélérateur d'affichage ou un jeu, ils contiennent
souvent des logiciels de prise de main à distance qui permettent au pirate de voir toutes les
actions sur les ordinateurs de ses victimes pendant leurs connexion Internet, y compris les mots
de passe tapés à l'écran via les Keyloggers qui permettent d'enregistrer tous caractères saisie par
le clavier. Le pirate prend ainsi le contrôle total de la machine cible : il peut lancer des logiciels,
bouger le curseur, lire les courriers, détruire les documents ou encore redémarrer l'ordinateur.
Les chevaux de Troie ouvrent aux pirates les portes virtuelles de l'ordinateur. Au nombre
de 65000 sur un ordinateur, ces ports sont des voies virtuelles d'entrée et de sortie des
informations provenant de l'Internet. Généralement, les port les plus utilisés sont les ports
TCP/IP qui permettent la communication des ordinateurs sur Internet, le port 80 qui est consacré
au chargement des pages web et le port 25 dédié à la messagerie.
Les chevaux de Troie utilisent un de ces ports pour communiquer via le web avec le
- 13 -
25. Chapitre 1 Présentation du projet et État de l'art
pirate. Un ralentissement notable de l'ordinateur victime ou l'activité inhabituelle du modem
alors que la victime n'est pas entrain de l'utiliser peuvent être des signes d'infection par un cheval
de Troie.
Mais l'objectif principal des Hackers en prenant contrôle les machines des particuliers
reste sans doute la possibilité des attaques par rebond [G5] ou attaques DDOS [G6]. Pour cela, et
pour faciliter la propagation du Cheval de Troie, les Hackers font recourt aux sites les plus
visités ou les sites de confiance comme les sites gouvernementaux ou des établissement publics.
Et pour arriver à leurs bout, les Hackers commencent par déterminer les failles dans ces sites afin
d'injecter un virus ou un cheval de Troie dans la page principale des sites. Lors du chargement de
ces sites par un simple internaute, le malware sera télécharger et installer automatiquement et
d'une manière transparente vis à vis de l'internaute. Au bout de quelques jours, le Hacker
construira toute une armé de bots (pouvant atteindre les des millions de bots) et à ce moment, un
désastre est attendu pour le serveur victime.
Notre projet, entre dans le cadre de lute contre ce genre de propagation de malwares en
essayant de détecter les malwares dans les sites Tunisiens et informer les administrateurs des
serveurs contaminés d'une tel existence de malwares.
4.1.5. Le piratage en Tunisie
En Tunisie, l'histoire du piratage a commencé non pas par l'apparition de l'internet mais
bien plus que cela. En effet, le piratage a commencé avec deux entreprises profondément
touchées : la Société Tunisienne d'Électricité et de Gaz (STEG) par le vol des connections
électriques et Tunisie Télécom avec le piratage des lignes téléphoniques « phreaking » puis le
piratage des communication dans les taxiphones en modifiant les règles de taxations.
L'arrivée d'internet marque l'introduction des pirates Tunisiens expatrié (principalement
en Allemagne) mais aussi des jeunes « newbie » et des lamers Tunisiens. Vers la fin des années
90 et début des années 2000, un groupe de lamers fait son apparition sur la scène. Parmi les
premières activités de ce groupe fut l'achat du nom de domaine tunisietelecom.com et le rediriger
vers leur site (ce n'est pas un acte de piraterie mais son impact dans le domaine fut grandiose) le
groupe se nomme Magattack. Ce groupe de lamers a réussi à l'époque à faire un défacement de
plusieurs sites en utilisant des scripts et des outils développés par les autres pirates. Plusieurs
jeunes y ont adhéré et rapidement Magattack est devenu le plus grand groupe de pirates
Tunisiens. Il regroupe aussi bien des lamers, defacers que de hackers professionnels, des
- 14 -
26. Chapitre 1 Présentation du projet et État de l'art
phreakers et des crackers. Parmi les Hackers Tunisiens, on peut citer: darkr0ot, blackr0ot,
localhost, azraael, yvan, blackdevil, blackhat, et le petit dernier K3M (k3vin Metnick).
Parmi leurs exploit fut l'ATI, TT, AmenBank et beaucoup d'autres établissements publics.
Enfin, il est à noter qu'un nouveau né dans le domaine du Hacking Tunisien, c'est le
groupe de lamers « Tunisian Power Team ».
4.1.6. Aspects juridiques pour intrusion aux systèmes
informatiques
• Est puni d'un emprisonnement de deux mois à un an et d'une amende de mille dinars ou
de l'une de ces deux peines seulement quiconque, frauduleusement, aura accédé ou se
sera maintenu dans tout ou partie d'un système de traitement automatisé de données. La
peine est élevée à deux ans d'emprisonnement et l'amende à deux mille dinars lorsqu'il en
résulte, même sans intention, une altération ou la destruction du fonctionnement des
données existantes dans le système indiqué.
• Est puni d'un emprisonnement de trois ans et d'une amende de trois mille dinars,
quiconque aura intentionnellement altéré ou détruit le fonctionnement du traitement
automatisé.
• Est puni d'un emprisonnement de cinq ans et d'une amende de cinq mille dinars,
quiconque aura frauduleusement introduit des données dans un système de traitement
automatisé de nature à altérer les données que contient le programme ou son mode de
traitement ou de transmission. La peine est portée au double lorsque l'acte susvisé est
commis par une personne à l'occasion de l'exercice de son activité professionnelle. La
tentative est punissable.
• Est puni d'un emprisonnement de deux ans et d'une amende de deux mille dinars,
quiconque aura introduit une modification de quelque nature qu'elle soit sur le contenu de
documents informatisés ou électroniques originairement véritables, à condition qu'elle
porte un préjudice à autrui.
• Est puni des mêmes peines, quiconque aura sciemment détenu ou fait usage des
documents susvisés. La peine es t portée au double lorsque les fais susvisés sont commis
par un fonctionnaire public ou assimilé. La tentative est punissable [6].
- 15 -
27. Chapitre 1 Présentation du projet et État de l'art
4.2. Les malwares
Dans le domaine des codes malveillants, il existe plusieurs types de malwares, nous nous
limitons à présenter les plus vulnérables et les plus répondus [4].
4.2.1. Les Virus
Un virus est un programme informatique malicieux conçu et écrit pour qu'il se
reproduise. Cette capacité à se répliquer, peut toucher généralement les ordinateurs ayant les
systèmes d'exploitation Windows, d'une manière transparente et sans prendre la permission du
propriétaire. En termes plus techniques, le virus classique s'attachera à des programmes
exécutables et se copiera systématiquement sur tout autre exécutable. Il n'y a pas de génération
spontanée de virus informatiques. Ils doivent avoir été écrits dans un but spécifique.
A part se répliquer, le virus peut avoir ou non une action plus ou moins néfaste, allant de
l'affichage d'un simple message à la destruction de toutes les données. Tandis que certains virus
vont tout simplement se manifester par l'apparition d'un message sur l'écran de ordinateur,
d'autres vont être plus dangereux. Par exemple, ils pourront supprimer des données, formater un
disque dur et même endommager quelques composant physique de la machine cible. La majorité
des virus se propagent par courrier électronique en pièce-jointe ou par une simple consultation de
pages web. Néanmoins, nous pouvons classer les virus en plusieurs catégories:
• Virus furtifs : ces virus, comme leur nom l'indique, vont se camoufler de façon à ne pas
être détecté par les antivirus. Un virus furtif, va se cacher lorsque l'antivirus ou
l'utilisateur accède au fichier infecté, à ce moment, le virus le saura et va se cacher offrant
à l'antivirus et à l'utilisateur une version non infectée du fichier.
• Virus polymorphes : ces virus, assez rare, ont la faculté de changer de signature de
façon à berner les antivirus. Les virus polymorphes incluent un code spécial permettant
de rendre chaque infection différente de la précédente. Ce changement constant rend la
détection de ce type de virus compliqué. Souvent le code change, mais l'action pour
lequel il a été créé est toujours la même. Par exemple, le virus peut intervertir l’ordre des
instructions de son action en son sein, ou rajouter de fausses instructions afin de tromper
la vigilance de l'antivirus, qui lui, recherche une signature précise.
Beaucoup de virus polymorphes sont aussi encryptés. Le virus encryptera son code et ne
le décryptera que lorsqu’il doit infecter un nouveau fichier, le rendant encore plus
difficile à détecter.
- 16 -
28. Chapitre 1 Présentation du projet et État de l'art
• Macros : ce sont des virus écrits en VBA (Visual Basic Application) de la suite
Microsoft Office. Les virus Macros sont la plus grande menace à ce jour, ils se propagent
lorsqu’un document Microsoft Word, Excel ou PowerPoint contaminé est exécuté. c'est
une série de commandes permettant d’effectuer un certain nombre de tâches
automatiquement au sein des applications ci dessus. Les Virus Macros non supprimés se
répandent très rapidement. L’ouverture d’un document infecté va contaminer le
document par défaut de l’application, et ensuite tous les documents qui seront ouverts au
sein de l’application. Les documents Word, Excel et PowerPoint étant les documents les
plus souvent partagés, envoyés par Internet, ceci explique la diffusion rapide de ces virus.
De plus le langage de programmation des Macros est beaucoup plus facile à apprendre et
moins compliqué qu’un langage de programmation classique.
• Virus composites : ces virus sont tout simplement une combinaison des catégories
mentionnées ci-dessus.
4.2.2. Les Vers
Un Ver est un logiciel malveillant indépendant qui se copie d’ordinateur en ordinateur.
La différence entre un ver et un virus est que le premier ne peut pas se greffer à un autre
programme et donc l’infecter, il va simplement se copier via un réseau ou Internet, d’ordinateur
en ordinateur. Ce type de réplication peut donc non seulement affecter un ordinateur, mais aussi
dégrader les performances du réseau dans une entreprise. Comme un virus, ce ver peut contenir
une action nuisible du type destruction de données ou envoi d'informations confidentielles.
L'objectif d'un ver n'est pas seulement de se reproduire. Le ver est un logiciel malveillant
qui permet d'espionner et de détruire des données sur l'ordinateur où il se trouve, d'ouvrir une
porte dérobée à des pirates informatiques ou même de participer à une attaque DDOS en
envoyant de multiples requêtes vers un serveur Internet dans le but de le saturer.
L'activité d'un ver a souvent des effets secondaires comme le ralentissement de la
machine infectée ou du réseau utilisé par cette machine infectée. En plus, les vers peuvent
planter quelques services ou complètement le système d'exploitation de la machine infectée.
Des vers écrits sous forme de script peuvent être intégrés dans une page HTML [G8] et
ils sont activés par simple consultation de la page Web.
- 17 -
29. Chapitre 1 Présentation du projet et État de l'art
4.2.3. Les Chevaux de Troie
Un Cheval de Troie est un programme en apparence légitime mais conçu pour exécuter
d'une façon cachée vis à vis de l'utilisateur des actions au profil du pirate. Leur nom vient du
fameux Cheval de Troie de la Grèce antique, offert en cadeau, mais qui en fait avait pour but de
causer la ruine et la destruction de la ville ayant reçu ce cheval en bois.
Un Cheval de Troie sur un ordinateur est un programme exécutable indépendant présenté
comme ayant une action précise. Néanmoins lorsque ce programme est lancé, il va détourner,
diffuser ou détruire des informations, formater le disque dur, voler les mots de passe, envoyer
des informations confidentielles au créateur via Internet ou encore pour ouvrir une porte dérobée
« backdoor » qui permettra à un attaquant de prendre à distance le contrôle d'un ordinateur.
Un Cheval de Troie peut aussi être à l'origine d'une bombe logique qui, une fois exécutée,
produira ses effets à un moment précis. Par exemple, la bombe logique Tchernobyl s'est activée
le 26 avril 1999 (jour du 13ème anniversaire de la catastrophe nucléaire en Bulgarie), mais la
bombe peut également attendre une combinaison de touches bien précise de la part de
l'utilisateur pour se déclencher ou attendre qu'un fichier s'exécute. Le choix des programmeurs
quant à son déclenchement est sans limite.
4.2.4. Les Spywares
Un spyware, ou logiciel espion, est un logiciel malveillant qui s'installe dans un
ordinateur dans le but de collecter et transférer des informations sur l'environnement dans lequel
il s'est installé, très souvent sans que l'utilisateur n'en ait connaissance. Après la collecte
d'informations, le Spyware transmet les données au pirate.
Un logiciel espion est composé de trois mécanismes distincts :
◦ Le mécanisme d'infection qui installe le logiciel. Ce mécanisme est identique à celui
utilisé par les virus, les vers ou les chevaux de Troie.
◦ Le mécanisme assurant la collecte d'information.
◦ Le mécanisme assurant la transmission des informations aux pirates. Ce mécanisme
est généralement assuré via le réseau Internet. La destination peut être le concepteur
du programme ou une entreprise.
Le logiciel espion peut afficher des offres publicitaires, télécharger un virus, installer un
cheval de Troie (ce que fait WhenU.SaveNow, par exemple), capturer des mots de passe en
- 18 -
30. Chapitre 1 Présentation du projet et État de l'art
enregistrant les touches pressées au clavier (keyloggers), espionner ou exécuter les programmes
à une heure précise ou encore espionner les sites internet visités.
5. Conclusion
Ce chapitre a donné une vue globale sur le cadre spatial temporel du projet de fin des
études. Nous avons essayé d’introduire la problématique du sujet et notre approche suivie pour
résoudre les problèmes relevés, Nous avons aussi présenté une étude sur le piratage en Tunisie,
les malwares et les menaces d'internet que nous risquons et qui sont indispensables à la
compréhension de l'objectif de notre projet.
Le chapitre suivant présentera une étude sur les moteurs de recherche open source.
- 19 -
31. Chapitre 2 Étude sur les moteurs de recherche Open Source
CHAPITRE 2
Étude sur les Moteurs de Recherche
Open Source
1. Introduction
Parfois comparé à la Bibliothèque d’Alexandrie, le Web est composé d’un nombre
inestimable de sites, eux-mêmes composés d’un nombre incalculable de pages... Heureusement,
les moteurs de recherche sont une des principales ressources mises à la disposition de
l’internaute pour l'aider à trouver son aiguille dans des milliers de pages Web.
Le moteur de recherche (ou Search Engine) est un programme, comparable à une base de
données archivant des sites web, des pages web et les mots les composant. Cette base est mise à
jour régulièrement, à mesure que de nouveaux sites web sont créés ou que le contenu des pages
est modifié.
Pour trouver le thème recherché, le moteur « scrute » dans sa base de données l’existence
de la chaîne de caractères demandée et la restitue, le cas échéant, sous la forme d’une liste de
sites ou de pages web, selon sa nature.
De nos jours, le nombre de moteurs de recherche diminue drastiquement et la situation
d'oligopole dans laquelle nous nous trouvons risque de se transformer en monopole avec une
seule compagnie « Google », contrôlant presque toute la recherche Web, avec des visées
commerciales.
Tous les principaux moteurs de recherche ont des formules de classement propriétaires et
n'expliqueront jamais pourquoi telle ou telle page a été classée d'une certaine façon. De plus,
certains moteurs de recherche choisissent les sites à indexer en échange d'une rémunération plus
- 20 -
32. Chapitre 2 Étude sur les moteurs de recherche Open Source
que sur la valeur intrinsèque du site. Donc la solution est de faire appel à un moteur Open Source
gratuit. Cette solution nous permet de configurer le délai de ré-indexation des sites et les
composantes à y récupérer (texte brut : recherche textuelle).
Dans ce chapitre, nous procédons à une étude théorique sur les moteurs de recherche
Open Source, suivi d'une implémentation et configuration du moteur de recherche Nutch.
2. Définition
Un moteur de recherche est un outil de recherche sur internet permettant de retrouver des
informations demandées associées à des mots quelconques. Ces moteurs sont constituées
essentiellement de Crawlers (robots) qui parcourent les sites web de façon régulière et
automatique afin de chercher de nouvelles adresses web, et de collecter les ressources jugées
intéressantes. Ensuite, ces liens et ces ressources collectés seront indexés et accessibles par la
suite par la recherche.
3. Moteurs de recherche et les systèmes de gestion de base de données
Les moteurs de recherche ont une structure similaire à un système de base de données, les
documents sont stockés dans un dépôt et un index est maintenu. les requêtes utilisateurs sont
évaluées par traitement de l'index et les entrées correspondantes sont retournées à l'utilisateur.
Cependant, il existe quelques différences, les requêtes utilisateurs sont simples : un
ensemble de mots (ou termes) ou une phrase alors que les requêtes aux bases de données sont
complexes (avec par exemple des expressions logiques ou régulières).
Une autre différence est que les bases de données retournent tous les enregistrements
correspondant à la requête alors qu'un moteur de recherche ne retourne qu'un nombre fixé de
documents classés par pertinence, selon des mesures statistiques.
4. Fonctionnement
Un moteur de recherche est composé essentiellement de trois outils :
4.1. Un outil d'exploration
L'exploration ou le crawling consiste à injecter un ensemble de robots sur internet
permettant de chercher de nouvelles adresses web, et de collecter les ressources jugées
intéressantes. Depuis l'apparition d'internet, sa taille ne cesse d'augmenter, cette croissance
- 21 -
33. Chapitre 2 Étude sur les moteurs de recherche Open Source
touche à la fois le nombre de pages, mais aussi la taille moyenne de chaque page, en effet,
images, vidéos et les animations flash deviennent de plus en plus utilisés dans nos sites.
Par contre, la bande passante disponible pour crawler le web est toujours limitée. Il est
donc indispensable, et même stratégique, d'optimiser les crawlers pour qu'ils puissent indexer la
Toile de manière efficace.
Cette efficacité se mesure en fonction de trois facteurs :
1. L'exploration doit être rapide : c'est la condition la plus exigée pour qu'un robot
puisse passer souvent et assurer que les pages figurants dans l'index aient une "fraîcheur
suffisante".
2. L'exploration doit être complète : nous savons qu’elle ne peut pas être
exhaustive, car certaines portions du web ne sont pas reliées entre elles par des liens. Mais le
robot doit être capable d’indexer une portion significative de la Toile.
3. Dans le même temps, l'exploration doit respecter les sites visités : notamment,
le robot doit tenir compte de la configuration du moteur de recherche de telle façon qu'il n'aspire
pas des centaines de pages à la seconde...
4.2. Un outil d'indexation
L'indexation permet aux moteurs de recherche d'extraire les mots considérés comme
significatifs à partir des pages web récupérés, ils seront ensuite enregistrés dans une base de
données organisée compréhensible par le moteur de recherche. Le poids, attribué à chaque mot
récupéré, correspond à une probabilité d'apparition du mot dans la page web.
A cette étape, nous pouvons intervenir un Anti-dictionnaire qui permet d'ignorer les mots
« vides » (mots non désirables tels que "de", "le", "la") qui sont définies au préalable par
l'administrateur du moteur de recherche.
4.3. Un outil de recherche
La recherche nous permet de retrouver les sites contenants l'objet recherché, cette phase
consiste à analyser les informations disponibles dans la base de données des sites web crawlés et
indexés, et de retourner une liste de sites par ordre de pertinence. Subissant l'évolution de
l'internet, les algorithmes de recherche sont devenus de plus en plus complexes. Ainsi, nous
retrouvant des moteurs de recherche très simples qui se limitent à une recherche booléenne de
- 22 -
34. Chapitre 2 Étude sur les moteurs de recherche Open Source
l'objet (comparer les mots d'une requête avec ceux des documents). Les moteurs plus évoluées se
basent dans leurs recherche sur le poids de l'objet recherché, ce poids est calculé pour chaque
recherche par la formule TF-IDF [G9].
Pour améliorer encore plus les performances d'un moteur de recherche, il existe de
nombreuses méthodes telles que la méthode d'analyse sémantique latente qui permet de faire la
recherche aussi des co-occurrences du mot recherché, ainsi, par exemple, le terme "voiture" est
automatiquement associé à ses mots proches tels que "garage" ou BMW, etc.
Autres techniques consistent à utiliser différents plugins tels que les traducteurs, la
correction d'orthographe ou les dictionnaires de synonymes et d'acronymes.
5. Moteurs de recherche propriétaires
Bien que plusieurs moteurs de recherche Open Source commencent à prendre leurs parts
dans le marché des moteurs de recherche, ce domaine reste toujours dominé par les trois acteurs
majeurs: Google, Yahoo, et MSN [7] :
• Google: environ 65.4% des 64.3 milliards de recherches sur internet
(90.61% de part de marchés en France sur le mois de Juin 2008 [8]).
• Yahoo: 8,5 milliards de recherches, soit 14% du total
• Live Search: 2,1 milliards de recherches, 3,4%
Moteur Janvier 2008 Février 2008
63.1% 62.8%
12.2% 11.9%
4.6% 4.5%
3.1% 3.1%
Tableau N°1 : Parts du marché des moteurs de recherche dans le monde.
- 23 -
35. Chapitre 2 Étude sur les moteurs de recherche Open Source
6. Moteurs de recherche Open Source
Étant donné que la quantité d'informations disponibles sur les sites Internet ne cesse
d'augmenter, il devient nécessaire de donner à l'utilisateur la possibilité d'effectuer des
recherches sur des domaines bien définis. En décidant d'installer un moteur de recherche pour un
besoin bien spécifique, les administrateurs sont face à un choix entre les solutions commerciales,
et dans ce cas, des frais supplémentaires non négligeables sont exigés, ou opter pour une solution
Open Source qui peut donner pour quelques moteurs de recherche les mêmes fonctionnalités que
les solutions commerciales, avec les avantages de la philosophie Open Source : transparence du
fonctionnement de ces moteurs de recherche, la gratuité de ces solutions, les logiciels mis à jour
activement, possibilité de personnaliser les codes afin de répondre à des besoins bien spécifiques,
etc
Aujourd'hui, il existe de nombreuses solutions Open Source qui peuvent être utilisées, et
chacune d'entre elles présente des caractéristiques différentes qui doivent être prises en
considération afin de déterminer laquelle choisir. Ces moteurs de recherche peuvent être classés
selon plusieurs critères à savoir le langage de programmation utilisé, la façon dont il stocke les
indexes, ses capacités de recherche, le type de fichiers capables d'indexation (HTML, PDF, texte,
etc).
D'autres facteurs importants à considérer sont la dernière date de mise à jour du logiciel,
la version actuelle et l'activité du projet. Ces facteurs sont très importants, car un moteur de
recherche qui n'a pas été mis à jour récemment, peut présenter des problèmes au moment de sa
personnalisation. Ces caractéristiques sont utiles pour faire une classification globale des
moteurs de recherche et être capable de limiter le nombre de solutions disponibles. Ensuite, il est
important de tenir compte de la performance de ces moteurs de recherche (temps de l'exploration
(crawling), le temps d'indexation, et de recherche sur des bases très volumineuses).
7. Étude comparative sur les moteurs de recherche Open Source
Se limitant sur les moteurs de recherche Open Source les plus utilisés, nous essayons
dans cette partie de présenter une étude comparative entre les trois moteurs les plus utilisés à
savoir DataParkSearch, Solr et Nutch.
- 24 -
36. Chapitre 2 Étude sur les moteurs de recherche Open Source
7.1. DataParkSearsh
DataParkSearch est un moteur de recherche Open Source écrit entièrement en C, il est
destiné à organiser la recherche dans les sites Web, un groupe de Sites Web, ou sur intranet. Ce
moteur de recherche dispose d'une large variété de fonctionnalités, il se compose essentiellement
de deux mécanismes qui fonctionnent simultanément, le premier, c'est un mécanisme
d'indexation pour la recherche de nouvelles ressources sur internet, et le deuxième partie qui est
un mécanisme de recherche.
Doté de plusieurs outils de reconnaissance linguistique, DataParkSearch permet la
reconnaissance automatiquement des langues, et de faire des recherches en utilisant une
technologie de négociation du contenu1 pour récupérer les versions de la même page dans
différentes langues, il peut effectuer aussi une recherche avec les caractères spéciaux ou faire de
la segmentation de phrases en Chinois, Japonais, Coréen et Thai. Il est possible d'utiliser des
synonymes, des acronymes et et des abréviations pour étendre les résultats de la recherche.
Afin d'optimiser la recherche et de répondre aux attentes des utilisateurs, DataParkSearch
utilise la technique de « Neo Popularity Rank » qui permet de classer les pages web selon les
pays du réseau neurologique, il permet aussi de construire automatiquement le sommaire de
chaque page index « Summary Extraction Aalgorithm, SEA », ce sommaire sera par la suite
utilisé pour améliorer le rang des sites web.
Enfin, DataParkSearch permet la personnalisation des résultats de la recherche en
fournissant aux utilisateurs la possibilité de classer les pages web par pertinence, popularité,
importance ou par date de la dernière modification.
7.2. Nutch
Initié en 2003 par Doug Cutting, Nutch est un moteur de recherche Open Source complet
: il dispose de son propre outil de crawling, alors que l'indexation et la recherche se basent sur les
bibliothèques de Lucene. Développé entièrement en Java et basé sur une architecture hautement
modulaire, Nutch permet aux développeurs de créer des plugins pour différentes phases du
processus : exploration, indexation et recherche.
1. Négociation de contenu : c'est un mécanisme qui permet de négocier le contenu de la page afin de fournir la
forme la mieux adaptée aux utilisateurs, ainsi un utilisateur qui ne comprend pas la forme PNG, peut avoir la forme
GIF (bien évidement, chaque ressource doit être disponible sous plusieurs formes).
Autre forme de négociation du contenu, c'est la négociation de la langue à afficher.
- 25 -
37. Chapitre 2 Étude sur les moteurs de recherche Open Source
En juin 2003, Nutch fût un grand succès après sa présentation d'une version
opérationnelle sur une base regroupant 100 millions de documents, ce succès lui a permis de
prendre sa place dans le domaine des moteurs de recherche.
Publiée le 1er juin 2004, l'étude2 [9] menée par Lyle Benedict présente une comparaison
des résultats du célèbre Google et de son homologue libre Nutch dans le cadre restreint du site
internet de l'Université de l'État de l'Oregon sur une base de 100 requêtes. Par exemple, sur des
notes allant de 0 à 10 où 10 est la meilleure note, elle a trouvé 28 requêtes pour lesquelles Nutch
et Google ont obtenu la note maximale.
Ce succès a énormément encouragé plusieurs organismes internationaux d'adopter cette
solution Open Source. En effet, en décembre 2006, le gouvernement du Québec a opté pour
Nutch comme moteur de recherche pour le repérage de l'ensemble de ses sites selon une
présélection. Autre migration vers Nutch fût celle de l'Oregon State University en septembre
2004, qui a remplacé son pôle de recherche Google par Nutch. Cela lui a permit de réaliser des
réductions de coûts significatives (estimée à 100 000$ par an selon l'Open Source Lab) et de
promouvoir la transparence de ce moteur de recherche [10].
En janvier 2005, l'équipe de Nutch décide de migrer vers la licence Apache. Et après cinq
mois d'incubation, Nutch devient un sous-projet de Lucene.
7.3. Solr
Tout comme Nutch, Solr est un moteur de recherche Open Source basé sur la
bibliothèque Lucene. D'abord, il a était développé chez CNET Networks pour améliorer les
capacités de recherche de l'entreprise, puis en début 2006, CNET Networks décide de rendre le
code source ouvert et de le remettre à Apache Software Foundation. Solr est maintenant un sous-
projet de Lucene qui lui ajoute une surchouche XML lui permettant de recevoir les requêtes en
HTTP et de rendre le résultat en XML [G10].
2. Comparision of Nutch and Google search engine implementations on the Oregon State University website - Lyle
Benedict - 1 Juin 2004: cette étude montre bien l'efficacité de Nutch par rapport à Google. Parmi les 54 résultats
utilisables, une comparaison entre ces deux moteurs de recherche montre que:
- Pour 28 requêtes: Nutch et Google ont tous deux répondu parfaitement à la demande et 3 un peu moins
parfait.
- Pour 5 requêtes Nutch a été légèrement en avance par rapport à Google (les deux étaient presque parfaits)
- Pour 8 requêtes Google a été légèrement en avance par rapport à Nutch (les deux étaient presque parfaits)
- Pour 3 requêtes Nutch a été beaucoup mieux que Google
- Pour 4 requêtes de Google a été beaucoup mieux que Nutch de 10 à 6
- Pour 2 requêtes Nutch a très mal répondu, Google a fait un peu mieux
- Pour 1 requête, Nutch n'a pas pu satisfaire la demande, Google, un peu mieux, mais il a répondu très mal.
- 26 -
38. Chapitre 2 Étude sur les moteurs de recherche Open Source
Bien qu'il dispose d'une interface graphique d'administration, Solr ne fournie pas encore
aucune interface graphique de recherche, ce qui pousse les utilisateurs de Solr à développer leurs
propres interfaces recherche avec leurs langages de programmation préférés (Java, PHP, Ruby,
Python ...). Cet outil peut aussi prendre la forme d'un Web service et permet donc d'être intégré à
n'importe quel programme, indépendamment du langage de programmation (Java, PHP, C# et
autres).
Le point fort de Solr c'est sans doute son outil de recherche qui lui permet de
personnaliser les recherches. Par exemple, Solr supporte le “faceting” qui permet de
personnaliser la recherche en ajoutant des critères supplémentaires ou d’implémenter des filtres
sur des champs variés. (par exemple, faire un filtre par gamme de prix, couleur et taille pour la
recherche d'un article donné).
En se basant sur Lucene (qui lui fournit des outils d'indexation, et de recherche),
l'inconvénient majeur de Solr reste toujours qu'il ne dispose pas encore d'un outil de crawling. En
effet, pour utiliser Solr, les administrateurs doivent toujours faire recours à des outils de crawling
propriétaires tel que WebCrawler, Methabot, FAST Crawler, Google crawler, etc. Ou même des
Crawlers Open Source tels que Heritrix, GNU WGet, HTTrack, Aspseek, Nutch, etc.
Ce tableau résumera les caractéristiques de chacun des trois moteurs de recherche :
DATAPARKSEARCH SOLR NUTCH
Date première 27 Novembre 2003 17 Janvier 2006 Juin 2003
version
Date dernière 25 Avril 2009 15 Septembre 2008 23 Mars 2009
version
Version actuelle 4.52 1.3.0 1.0
Système FreeBSD, Linux, Solaris Windows, Linux, Mac, BSD, Windows, Linux, Mac, BSD,
d'exploitation Unix Unix
Langage de C Java Java
programmation
Communauté Réduite: Forums, Mailing Active : Forums, Mailing List, Très active:Forums, Mailing
List, Blogs, Pages Wiki patch List, patch, Tutoriels, Astuces,
consultants indépendants
offrant une assistance
spécialisée.
Licence GNU GPL - Version 2 Apache License 2.0 Apache License 2.0
Exploration Oui Non Oui
Indexation Oui Oui, utilisant les bibliothèques Oui, utilisant les bibliothèques
- 27 -
39. Chapitre 2 Étude sur les moteurs de recherche Open Source
de Lucene de Lucene
Recherche Oui Oui, utilisant les bibliothèques Oui, utilisant les bibliothèques
de Lucene de Lucene
Interface Non Seulement d'administration Oui
Graphique
Fichiers supportés Texte, HTML, XML, Audio, Pas de crawler Texte, HTML, XML,
Vidéo, Images/GIF, PDF, JavaScript, OpenOfice.org
Flash, Word, Excel, RTF, ODF & Star Office, Microsoft
PowerPoint Power Point & Word, Adobe
PDF, RSS, RTF, MP3, ZIP,
Flash, etc
Personnalisable Avec divers templates Avec divers templates Code compréhensible
Extensible Non Non Nutch-Wax, Hadoopi, solr, etc
Distribué Non Oui Hadoopi
plugin Non Non LanguageIdentifierPlugin
XMLParser Plugin,
DocumentationTemplate
GeoPosition , German
JapaneseAnalyzer plugin
index-extra, protocol-smb
Autres ● Indexation multilangues ● Hit Highlighting ● Communauté très active.
caractéristiques des sites (coloration du mot recherché) ● Code source
● Recherche de tous les ● Communication via HTTP, compréhensible.
mots proches JSON, XML, PHP, Ruby et ● Robuste et complet
● Support des synonymes, Python. ● Extensible avec plusieurs
acronymes, abréviation ● Simple à mettre en place: plugins
● Liste d'interdictions de pas de Tomcat. ● Possibilité d'intégrer Solr
mots. ● Interface d'administration avec Nutch.
● Indexation et recherche (en HTML). ● Support de Base de données
en même temps sur la même ● Possibilité de réplication de très volumineuse.
base de données serveurs. ● Nécessite le générateur de
(Multithread). ● Extensible avec de servlette Tomcat.
● Résultat par importance, nouveaux plugins. ● Possibilité de réplication de
pertinence, popularité ou par ● Caching (mémorisation en serveurs.
date. cache de toutes recherches).
● Correction d'orthographe. ● Recherche filtrée et par
● Recherche par abréviation catégorie (faceted search)
. ● Optimisé pour une
● Support des caractères recherche web très
spéciaux. volumineuse.
● Support du Chinois, ● Configuration
japonais, etc. personnalisable et flexible.
● Nécéssite un SGBD. ● Statistiques complètes sur
(MySQL, PostGreeSQL ou l'utilisation du cache, mises à
Oracle) jour, requêtes, etc.
Site offciel http://www.dataparksearch.org/ http://lucene.apache.org/solr/ http://lucene.apache.org/nutch/
Tableau N°2 : Étude comparative sur les moteurs de recherche Open Source.
- 28 -
40. Chapitre 2 Étude sur les moteurs de recherche Open Source
8. Choix technologique
La solution du départ consistait à l'utilisation d'un moteur de recherche Open Source,
cette solution nous permet d'économiser, en premier lieu, de l'argent vis à vis des solutions
propriétaires3 [11]. En plus, l'adoption des solutions Open Source nous permet de profiter de tout
les atouts de ces derniers à savoir la possibilité de modifier le code source ainsi l'adapter à nos
besoins, elle nous permet aussi d'avoir une idée détaillée sur les algorithmes de classement des
sites.
Parmi les solutions proposées, Nutch se distingue comme étant la solution la plus
appropriée pour répondre à nos besoins à savoir principalement la recherche textuelle dans une
base de quelques milliers de sites tunisiens. En effet, Nutch est un moteur de recherche basé sur
la Bibliothèque Lucene qui est une bibliothèque écrite en java destinée pour la création de
puissants moteurs de recherche orientés texte.
L'avantage indéniable aussi de Nutch c'est qu'il permet de crawler plusieurs milliards de
pages par mois et donc d'avoir un crawler très performant et d'avoir un corpus de très grande
taille.
9. Étude sur le moteur de recherche Nutch
9.1. Introduction
La recherche textuelle a pris une importance considérable depuis quelques années, suite
notamment au succès de l'Internet et de ses moteurs de recherche. Elle n'est pas seulement
utilisée sur le Web mais l'est également par les systèmes d'exploitation par exemple, pour la
recherche de fichiers sur les ordinateurs personnels ainsi qu'au sein des entreprises pour faciliter
la recherche des données en intranet.
Les outils de recherche d'informations indexent aujourd'hui un nombre gigantesque de
pages. Pour avoir un ordre d'idée, Google référençait en 2005 plus de 8 milliards de pages avant
de cesser de communiquer ce chiffre. Ainsi, le défi de la recherche documentaire est de toujours
améliorer les algorithmes de classement des documents (méthodes statistiques ou autres) et les
structures de données mises en place.
3. Google Mini est un moteur de recherche destiné pour les entreprises. Existant en plusieurs versions, la moins
chère permet de lancer des recherches sur 50 000 documents pour 2 600 €. La version de 300 000 documents peut
aller jusqu'à 8 600 €.
- 29 -