Professional Documents
Culture Documents
Rostom Mhiri
Encadrant (s) :
-1-
Ddicaces
A mon pre Sans ton soutien je ne serais rien devenue. A ma mre Sans ta tendresse et ton affection je ne pourrais arriver jusquau bout. A mes frres A toute la famille Mhiri et a tous mes amis Merci infiniment !
Rostom Mhiri
III-
1- Les failles lies aux systmes et aux applications..11 2- Les failles lies aux protocoles...12 IIILes diffrents types dattaques rseau...13
1- Ecoute du rseau.13 2- Abus de droits lgitimes..14 3- Usurpation didentit16 4- Injection de codes17 IVVPolitique de scurit dans un rseau informatique..19 Les services offerts par la scurit informatique..19
Conclusion..20
Chapitre 2 : Mise en place des solutions Open Source pour scuriser un rseau dentreprise.21
Introduction.21
III-
1- Principe dun systme pare-feu.25 2- Dploiement dun pare-feu IPtables ...26 3- Exemple de politique de filtrage.28 4- Validation du fonctionnement de IPtables29 IIILa solution IDS30
1- Les diffrentes sortes dIDS30 2- Implantation dun NIDS Snort ..33 3- Implantation des HIDS.36 IVLes solutions Anti-Spam/Anti-Virus..37
1- Anti-Spam pour la messagerie lectronique.37 2- Anti-Virus pour la messagerie lectronique..38 3- Anti-Virus pour les postes de travail..38 -3-
IIIIII-
1- Identification des acteurs..47 2- Identification des cas dutilisation48 3- Reprsentation du diagramme des cas dutilisation.49
Conclusion.51
III-
1- Le module Authentification 55 2- Le module Manip_IHM ...55 3- Le module Scan_Rseau ..56 4- Le module Stat_Rseau 57 5- Le module Sec_Rsaeu 60
Conclusion61
I-
Environnement de dveloppement62
-4-
Projet de fin dtudes 1- Installation et premire utilisation de Csys Security63 2- La phase dauthentification..64 3- Linterface principale de Csys Security..65 4- Changement du mot de passe.67 5- Recherche des machines.67 6- Les outils danalyse et de supervision69 7- Les outils dintervention76
Conclusion78
Conclusion gnrale79 Annexe A.80 Annexe B.81 Bibliographie..82 Liste des abrviations.83
-5-
Partie II
Chapitre 1 Figure.3.1 : Diagramme des cas dutilisation de lapplication Csys Security ..50 Chapitre 2 Figure.4.1 : Conception gnrale de Csys Security 54 Figure.4.2 : La classe Authentification .55 Figure.4.3 : La classe Manip_IHM ..56 Figure.4.4 : La classe Scan_Rseau .56 Figure.4.5 : La classe Statistiques ..57 Figure.4.6 : Diagramme de classe du module Connexions 58 Figure.4.7 : La classe Pare-feu ...59 Figure.4.8 : La classe Processus_Actifs 59 Figure.4.9 : La classe Sec_Rseau ...60 Chapitre 3 Figure.5.1 : Raccourci de Csys Security ...64 Figure.5.2 : Phase dauthentification.64 Figure.5.3 : Message de vrification de lidentifiant et du mot de passe65 Figure.5.4 : Message derreur de blocage de lapplication ..65 Figure.5.5 : Interface principale de Csys Security..66 Figure.5.6 : Fentre de changement du mot de passe..67 Figure.5.7 : Recherche dans un sous rseau.68 Figure.5.8 : Dtection des machines actives..69 Figure.5.9 : Surveillance en temps rel des connexions..70 Figure.5.10 : Etude du comportement du rseau..71 Figure.5.11 : Contrle des activits dune machine sur le rseau..72 Figure.5.12 : Analyse statistique du fonctionnement du Firewall72 Figure.5.13 : Statistiques des connexions..73 Figure.5.14 : Contrle des processus actifs74 Figure.5.15 : Contrle des ports ouverts..75 Figure.5.16 : Exemples dinformations gnrs par NTOP..76 Figure.5.17 : Fentre de configuration de IPtables77 Figure.5.18 : Paramtres ncessaires pour configurer IPtables partir dun Script77 Figure.5.19 : Contrle dune machine distante...78
-6-
AVANT-PROPOS
Au terme de ce travail effectu au sein de lentreprise Computer System (CSYS), je tiens exprimer ma grande reconnaissance Mr Hassen Ellouze, le directeur technique, qui ma accept de passer mon stage au sein de lentreprise et qui a suivi de prs lvolution de ce projet et na pas cess de me prodiguer ses prcieux conseils dont javais largement bnfici. Je tiens galement exprimer mes sentiments de gratitude et de reconnaissance mon encadreur Mr Adel Bouhoula, matre de confrence lcole suprieure des communications de Tunis, pour laide considrable et judicieuse quil ma gnreusement prodigue. S Avec beaucoup dgard, je ne manquerai pas de remercier tout le personnel de CSYS pour leur aide, leur serviabilit et leur accueil chaleureux tout au long de mon stage. Enfin, je tiens remercier tous les enseignants et administrateurs de lcole suprieure des communications de Tunis et tous les membres du jury pour avoir accept de juger ce modeste travail.
Introduction gnrale
-7-
Projet de fin dtudes Le dploiement fulgurant de lInternet et son omniprsence en tant que moyen de communication dans les entreprises auraient du entraner la prise en compte des risques associs la visibilit des machines sur le rseau des rseaux. Il nen a pas t ainsi : de plus en plus de moyens informatiques se trouvent exposs la malveillance des pirates. Trois facteurs rendent indispensable le dploiement de la scurit informatique : La prservation du patrimoine de lentreprise. Lexistence dune menace extrieure, mme potentielle. Les failles des systmes.
Lobjectif de notre projet est de dployer une solution de scurit (mise en place des diffrents outils de scurit) pour un rseau dentreprise, ainsi que de dvelopper un outil qui permet daider un administrateur pour grer la scurit dun rseau. Cet outil doit permettre la supervision des machines du rseau, la prvention des anomalies et des attaques rseaux en temps rel, la dtection des problmes locaux (machines infectes) et des problmes rseaux ainsi que la gestion et le contrle des machines pour bloquer les tentatives dattaques. Ce travail est compos de deux parties. La premire sera consacre aux principes et outils de la scurit dun rseau. Nous prsenterons dans un premier chapitre les diffrents aspects thoriques des attaques et des vulnrabilits informatiques. Nous dvelopperons aussi les dmarches adopter et les services attendus par la mise en place dune politique de scurit informatique. Le deuxime chapitre est une tude de cas pratique de dploiement dune solution de scurit. Nous prsenterons dune part larchitecture adopte et dautre part les diffrents outils ncessaires limplantation de la solution. Lanalyse, la conception, limplmentation et la validation dune application de gestion de la scurit informatique feront lobjet de la deuxime partie du prsent travail. Aprs une tude des besoins que nous prsenterons dans un premier chapitre, nous consacrerons le deuxime la conception de lapplication que nous avons baptise CSYS-SECURITY . Cest une application qui permet dune part de superviser les diffrents aspects de la scurit informatique et dautre part de prendre les mesures ncessaires pour pallier aux problmes dtects. Limplmentation et la validation des ces fonctionnalits feront lobjet du troisime et dernier chapitre de cette seconde partie. -8-
-9-
I-
La scurit informatique utilise un vocabulaire bien dfini utilis dans les articles. De manire bien comprendre ces articles, il est ncessaire de dfinir certains termes : Les vulnrabilits : ce sont les failles de scurit dans un ou plusieurs systmes. Tout systme vu dans sa globalit prsente des vulnrabilits, qui peuvent tre exploitables ou non. Les attaques (exploits): elles reprsentent les moyens d'exploiter une vulnrabilit. Il peut y avoir plusieurs attaques pour une mme vulnrabilit mais toutes les vulnrabilits ne sont pas exploitables. Les contre-mesures : ce sont les procdures ou techniques permettant de rsoudre une vulnrabilit ou de contrer une attaque spcifique. Les menaces : ce sont des adversaires dtermins capables de monter une attaque exploitant une vulnrabilit [1]. - 10 -
- 11 -
- 12 -
Projet de fin dtudes Pour corriger ce type de vulnrabilit, il faut configurer le serveur DNS pour quil ne rsolve directement que les noms de machine du rseau sur lequel il a autoris [2].
III-
Il existe un grand nombre dattaques permettant une personne mal intentionne de sapproprier des ressources, de les bloquer ou de les modifier. Certaines requirent plus de comptences que dautres. Ces attaques ont plusieurs types savoir :
Fig.1.1 : Sniffing
- 13 -
III.1.2- Le Scanning
Le scanning consiste balayer tous les ports sur une machine en utilisant un outil appel scanner. Le scanner envoie des paquets sur plusieurs ports de la machine. En fonction de leurs ractions, le scanner va en dduire si les ports sont ouverts. C'est un outil trs utile pour les hackers. Cela leur permet de connaitre les points faibles d'une machine et ainsi de savoir par o ils peuvent attaquer. D'autant plus que les scanners ont volus. Aujourd'hui, ils peuvent dterminer le systme d'exploitation et les applications associes aux ports [3].
Fig.1.2 : Scanning
- 14 -
- 15 -
Fig.1.4 : Spoofing IP
Comme l'indique le schma ci-dessus (Fig.1.4), la technique du spoofing peut permettre un pirate de faire passer des paquets sur un rseau sans que ceux-ci ne soient intercepts par le systme de filtrage de paquets (firewall). En effet un firewall fonctionne grce des rgles de filtrage indiquant quelles adresses IP sont autorises communiquer avec les machines internes. Ainsi, un paquet spoof avec l'adresse IP d'une machine interne semblera provenir du rseau interne et sera transmis la machine cible, tandis qu'un paquet contenant une adresse IP externe sera automatiquement rejete par le firewall [5].
Projet de fin dtudes vidents comme leur propre prnom ou ceux de leurs enfants. Ainsi, si un pirate, qui a espionn sa victime auparavant, teste quelques mots de passe comme le prnom des enfants de la victime, il aura accs l'ordinateur. D'o l'utilit de mettre des bons mots de passe. Mais mme les mots de passe les plus robustes peuvent tre trouvs l'aide de logiciels spcifiques appels craqueur. Les craqueurs de mots de passe s'appliquent souvent un fichier contenant le nom des utilisateurs ainsi que leurs mots de passe encrypt. Ces fichiers sont ncessaires pour permettre l'authentification sur un systme. L'encryptage des mots de passe s'effectue l'aide d'une fonction de hachage. Les fonctions de hachage sont des fonctions univoques, c'est--dire qu'il est impossible de les inverser pour dcrypter un mot de passe encrypt. Une autre particularit importante des fonctions de hachage est que deux mots de passe diffrents auront forcment un hachage diffrent. Ainsi, il est impossible de dcrypter un mot de passe encrypt. En revanche, il est possible d'encrypter un mot au moyen de cette fonction et de comparer le rsultat avec le mot de passe encrypt. S'il y a correspondance, on a devin le mot de passe. Mais, il est fastidieux d'encrypter des milliers de mots pour trouver les mots de passe. C'est l qu'intervient l'utilit d'un craqueur [3].
- 17 -
Projet de fin dtudes De tels virus dvoilent l'ensemble des systmes d'informations d'une machine et brisent ainsi la confidentialit des documents qu'elle renferme, on appelle ce type de virus les chevaux de Troie [5].
IV-
On a numr certains types dattaques informatiques et quelques failles lies aux systmes dexploitations et aux protocoles. En fait ces attaques visent dtruire ou espionner les donnes confidentielles, ce qui a pouss les entreprises dtablir une politique de scurit pour prserver leurs systmes dinformation. Une politique de scurit est un ensemble de rgles qui rgissent la faon de traiter l'information au sein de l'entreprise ou de l'organisme. Pour dfinir une politique de scurit il suffit de rpondre aux questions suivantes : 1- Quel est le primtre de rseau protger ? 2- Quelles sont les entits rseaux qui vont servir au trafic extrieur ? 3- Quels sont les services autoriss aux utilisateurs l'intrieur du domaine rseau ? 4- Quel contrle doit on faire ? 5- Quel est l'impact des services sur la scurit ? 6- Quel est l'impact sur le service ainsi que sur le comportement du systme ?
Toutefois, pour que la politique soit oprationnelle, on doit mettre en place des rgles de scurit. Les rgles de scurit sont des fonctions de cryptages, d'authentification, de filtrage de paquets, etc. permettant de vrifier si les units de donnes sont conformes la politique de scurit ou non.
Confidentialit : les donnes ne doivent tre visibles que pour des personnes autorises. authentification (entit, origine des donnes) - 19 -
Projet de fin dtudes intgrit : Il faut pouvoir garantir que les donnes protges nont pas t modifies par une personne non autorise. contrle d'accs : autorisation, diffrentier de l'authentification. non rpudiation (avec preuve d'mission ou avec preuve de rception) [1].
Conclusion
Les attaques des systmes informatiques sont de plus en plus automatises. Leurs scnarios est assez reproductible : dcouverte dune faille dans un service, publication dun exploit , scan rseau et tentative de compromission. Les pirates utilisent des panoplies doutils leur permettant de cacher leurs prsences, de capturer les mots de passe qui circulent sur le rseau, dinstaller une ou plusieurs portes drobes, de scanner un autre rseau Pour se protger contre ces attaques, nous dcrivons dans le prochain chapitre la mise en place dune politique de scurit qui se base sur des outils open source pour le rseau de lentreprise Computer System .
- 20 -
Chapitre 2 : Mise en place des solutions Open Source pour scuriser un rseau dentreprise
Introduction
Consciente de la situation de crise laquelle peut conduire un acte de piratage, la direction de Computer System dcide dentreprendre une complte rorganisation de ses moyens informatiques. La composante scurit devient primordiale dans la rflexion qui est entreprise. Cest la mise en uvre de cette rflexion que nous allons traiter au cours du prsent chapitre.
I-
Le rseau scuriser
COMPUTER SYSTEMS est une entreprise tunisienne, cre en 1991, spcialise dans les logiciels de gestion des systmes d'information. Il aide les organisations grer les environnements informatiques complexes l'chelle de l'entreprise afin qu'ils fournissent toute leur valeur ajoute et soient aligns aux objectifs mtiers. Csys est lun des plus importants diteurs de solutions de gestion et du systme d'information en Tunisie. Ces logiciels et son expertise permettent aux clients d'unifier et de simplifier leurs environnements informatiques complexes afin d'amliorer leurs rsultats. Csys comprend maintenant 50 personnes qui travaillent dans deux dpartements spars : Le dpartement de dveloppeurs : Constitue la valeur ajoute de lentreprise. Elle a en charge la spcification et la cration de nouveaux produits. Le dpartement technique pour tout ce qui est maintenance du matriel.
Projet de fin dtudes Service de messagerie lectronique utilis par le personnel pour la communication interne, mais aussi pour la communication avec le monde extrieur. Un service de stockage de donnes. Un serveur web pour des utilisations interne. Un service dimpression rseau permettant daccder aux diffrentes imprimantes du btiment partir de nimporte quel poste de travail. Un serveur de base de donnes. Un service dannuaire lectronique. Un service de partage de fichiers. Une connexion ADSL 1 Mga.
Biens que la socit se soit agrandie et ait dmnag dans des locaux plus vastes et plus confortables, linfrastructure systme et rseau initiale dploy depuis quelques annes a volu sans grande concertation et na jamais fait lobjet dune remise en cause globale. En tudiant les caractristiques du rseau existant, on constate de rels dfauts : Il ny a pas de segmentation physique ni de cloisonnement du rseau. Une fois dans la place, le pirate peut couter librement lensemble des communications, y compris dans les zones les plus sensibles. La gestion des accs au rseau en entre de site est inexistante. Chacune des machines de la socit est vue de lextrieur et devient par consquent une cible potentielle. Labsence doutils de surveillance nuit la dtection rapide des tentatives de compromissions. Les protocoles de communication utiliss sont fragiles (FTP, TELNET, IMAP). Ils laissent transiter sur le rseau des informations sensibles non chiffres, comme les noms de comptes et les mots de passe associs. Une rponse chaque problme soulev sera apporte dans la limite de ce que la technologie peut offrir de meilleur en terme de scurit, et sera dtaill au cours de ce chapitre. Le contenu du tableau2.1 rsume quelques solutions possibles.
Dfaut
Action - 22 -
Outils
Linux/IPtables utilis comme routeur filtrant Linux/IPtables Serveur Radius (FreeRadius) ssh remplace telnet IMAPS remplace IMAP Nmap, Snort, Tripwire, antivirus/mail, anti-spams
La figure 2.1 reprsente larchitecture que nous avons dploye et qui pris en compte la rflexion lie au problme de topologie. Trois groupes ont t dfinis. Les postes de travail du personnel de la socit ont t divises en deux groupes, le premier pour le dpartement des dveloppeurs et possde ladresse 192.168.0.0/24, alors que le second pour le dpartement technique et il possde ladresse rseau 192.168.1.0/24. Les serveurs (zone DMZ: Zone tampon d'un rseau d'entreprise, situe entre le rseau local et Internet, derrire le pare-feu, qui correspond un rseau intermdiaire regroupant des serveurs publics, et dont le but est d'viter toute connexion directe avec le rseau interne et de prvenir celuici de toute attaque extrieure depuis le Web.) ont t galement isols dans un segment 192.168.2.0/24. Le routeur ADSL possde ladresse IP 192.168.3.10.
- 23 -
A lentre du rseau, nous disposons dun serveur Linux RedHat Fedora Core 4 (Cest un serveur de scurit) qui dispose de 4 interfaces rseau : Eth0 : 192.168.3.2 : connect au routeur ADSL. Eth1 : 192.168.1.200 : connect au rseau du dpartement technique. Eth2 : 192.168.0.200 : connect au rseau du dpartement de dveloppement. Eth3 : 192.168.2.200 : connect la zone DMZ.
- 24 -
La dcision de rejeter ou daccepter un paquet peut tre prise de deux manires : Examen en dtail de son contenu : Adresse source, adresse destination, port source, port destination, flags (SYN, ACK, RST). Cest le filtrage sans tat, dsign communment par lexpression : filtrage de paquets. Analyse de lhistorique de la connexion. Cela implique que le routeur ou le pare-feu garde une trace ou tat de chaque connexion qui le traverse. La dcision de rejeter ou daccepter le paquet tient compte la fois du contenu du paquet comme ci-dessus et de lhistorique de la connexion. Ce mode de filtrage est appel filtrage avec tat, on parle aussi de suivi de connexion (connection tracking) [6].
- 25 -
Parmi ces trois fonctionnalits, les deux premires ont t exploites pour la scurisation du rseau de Computer System .
Chaque table contient un certain nombre de chanes qui contiennent leurs tours une srie de rgles. La chane et les rgles quelle contient sappliquent un moment prcis (avant le routage, aprs le routage) du parcours du paquet (figure 2.3). Elle dtermine le futur du paquet (transmis, intercept). Les chanes peuvent sappliquer cinq moments dans la vie du paquet : - 26 -
PREROUTING : Le paquet se prsente sur une interface de la machine. Les chanes appliques sur PREROUTING sont excutes avant danalyser ladresse IP du paquet pour prendre la dcision du routage. Le cas dutilisation typique est le DNAT.
POSTROUTING : Les chanes appliques sur POSTROUTING sont excutes juste avant denvoyer le paquet sur linterface de sortie, alors que le paquet est dj rout. Le cas dutilisation typique est le SNAT.
FORWARD : Le paquet nest pas destin la machine locale, mais il doit tre relay sur une autre interface. Les chanes appliques sur FORWARD ne concernent pas les paquets destination ou venant de la machine locale [7].
INPUT : Les chanes appliques sur INPUT concerneront tout paquet destination de la machine locale. OUTPUT : Les chanes appliques sur OUTPUT concerneront tout en provenance de la machine locale [7].
- 27 -
Les connexions sortantes (OUTPUT) : Serveur LAN : Toutes les connexions sont ouvertes afin de bien grer la totalit du rseau partir du serveur. Serveur Internet : On autorise les connexions vers les sites de mise jour de lantivirus (install sur le serveur) et des rgles de SNORT.
Les connexions de FORWARD : Toute connexion dun segment du rseau local un autre est autorise. Dpartement technique Internet : On nautorise que les connexions sur les ports 80 (http), 443(https) et 53 (DNS). Internet Dpartement technique : Les connexions qui sont dj tablies (ESTABLISHED) sont autorises. Dpartement de dveloppement Internet : Les connexions sont ouvertes pour certaines machines (Directeurs, les chefs projets et ladministrateur rseau). Pour les autres, seules les connexions sur les ports 80,443 et 53 sont autorises. Internet Dpartement de dveloppement : Les connexions qui sont dj tablies (ESTABLISHED) sont autorises. DMZInternet / Internet DMZ : Seul le service de messageries est ouvert lextrieur.
- 28 -
Projet de fin dtudes Aussi afin de bien contrler le fonctionnement de la passerelle, on dfinit des fichiers logs pour enregistrer tout ce qui se passe au niveau du firewall (les connexions acceptes, rejetes, les tentatives de connexion depuis Internet).
- 29 -
- 30 -
Si les capteurs se trouvent aprs un pare-feu (position 3), il leur est plus facile de dire si le pare-feu a t mal configur ou de savoir si une attaque est venue par ce pare-feu. Les capteurs placs derrire un pare-feu ont pour mission de dtecter les intrusions qui nont pas t arrtes par ce dernier. Il sagit dune utilisation courante dun NIDS. Il est galement possible de placer un capteur lextrieur du pare-feu (emplacement 1). Lintrt de cette position est que le capteur peut ainsi recevoir et analyser l'ensemble du trafic d'Internet. Si vous placez le capteur ici, il n'est pas certain que toutes les attaques soient filtres et dtectes. Pourtant, cet emplacement est le prfr de nombreux experts parce qu'il offre l'avantage d'crire dans les logs et d'analyser les attaques (vers le pare-feu...), ainsi l'administrateur voit ce qu'il doit modifier dans la configuration du pare-feu. Les capteurs IDS sont parfois situs lentre de zones du rseau particulirement sensibles (parcs de serveurs, donnes confidentielles), de faon surveiller tout trafic en direction de cette zone (position 2) [8].
- 31 -
- 32 -
Projet de fin dtudes TCP et UDP) par rapport des valeurs prcises : SNORT utilise des rgles pour dtecter les intrusions, il existe aujourdhui environ 1200 rgles diffrentes, ce qui est dj beaucoup, et chacune correspond un cas bien particulier... Aprs la dtection dintrusion, une srie de output plugins permet de traiter cette intrusion de plusieurs manires : envoie vers un fichier log, envoie dun message dalerte vers un serveur syslog, stocker cette intrusion dans une base de donnes SQL [9].
- 34 -
Comme il est montr dans la figure 2.6, ACID facilite linterprtation des donnes gnres par SNORT et stockes dans une base de donnes Mysql. Pour valider le fonctionnement de SNORT, nous avons effectu un scan du rseau laide de loutil NMAP. Le scan est dtect par SNORT et grce ACID lalerte est signal ladministrateur rseau comme il est indiqu dans la figure 2.7:
- 35 -
- 36 -
IV-
- 37 -
V-
La scurisation de laccs au rseau Wifi est une tape indispensable pour empcher un utilisateur malintentionn de lutiliser. Voici les tapes quon a suivre afin de scuriser le rseau Wifi de Computer System .
- 38 -
- 40 -
Conclusion
La scurit est un sujet de discussion inpuisable. Nous avons prsent au cours de ce chapitre les principaux outils open source que nous avons utiliss afin de protger le maximum possible un rseau dentreprise en tudiant le cas du rseau de Computer System .
- 41 -
PARTIE II : Analyse, conception et implmentation dun outil de gestion de la scurit dun rseau Csys Security
- 42 -
Dans la premire partie du projet, nous avons construit une palissade qui protge notre rseau. Nous allons maintenant dvelopper un outil logiciel pour surveiller les accs. La protection ne vaudra rien et notre entreprise ne sera pas labri, si nous ny ajoutons pas un mcanisme de surveillance qui permettra de dtecter les tentatives dintrusions russies ou non. Par ailleurs, les technologies que nous disposons pour dvelopper la scurit sont en courante volution. Les pirates disposent galement doutils plus sophistiqus de jour en jour ! Ainsi, un niveau de scurit qui tait confortable auparavant, savre nettement insuffisant aujourdhui et fera de nous la cible de toutes les compromissions sil na pas volu demain. Il faut donc tre capable de mesurer au quotidien la robustesse de notre politique de scurit. Cest le rle des outils de surveillance et daudit. Pour cela, lobjectif de cette partie est de dvelopper un outil daide la gestion de la scurit dans un rseau dentreprise qui permet de :
Contrler et superviser le fonctionnement des machines lintrieure du rseau local. Intervenir dans le cas dun problme li la scurit du rseau. Juger lefficacit de la scurit du rseau.
Introduction
Lanalyse des besoins est la premire tape pour dvelopper une application. Cest une tape dterminante qui se construit mesure que la problmatique est pose. Il est alors primordial de bien comprendre le sujet afin de cerner les problmes potentiels dun point de vue conceptuel, organisationnel et technique. Nous commencerons dans la premire partie par une tude de larchitecture existante pour en extraire dans une deuxime partie, les nouvelles orientations en terme de besoins. Finalement, une analyse dtaille sera ralise en utilisant les diagrammes de cas dutilisation.
I-
Etude de lexistant
Il existe une vingtaine de solution de Supervision de la Scurit (SIM : Security Information Management) sur le march. Parmi lesquelles il existe une seule solution open source (OSSIM : Open Source SIM) qui nest pas encore suffisamment abouti pour esprer un dploiement fiable sur un rseau de production [12]. En plus OSSIM est purement un outil de supervision, il ne comporte aucun outil dintervention (Scan rseau, Scan antivirus, grer une machine sur le rseau, Configurer le pare-feu). Pour toutes ces raisons, nous avons pens dvelopper notre propre outil Csys Security .
Projet de fin dtudes Scan_Rseau : Un sniffer rseau est un outil indispensable dans les logiciels de scurit. Pour cela il faut quiper notre application dun Sniffer qui doit analyser le trafic du rseau en temps rel. Connexions actives : Grce cet outil, ladministrateur rseau peut surveiller en temps rel les diffrentes connexions entrantes et sortantes du rseau local (les adresses sources et destination, ltat de la connexion et lusage de la bande passante). Statistiques : Permet un administrateur de prendre une ide gnrale, sous forme de graphes, sur lvolution dans le temps du nombre de connexions entrantes et sortantes qui traversent la passerelle. Stat_Rseau : Cest un outil de supervision de rseau. Il capture et analyse en temps rel les trames dune interface donne (celle de la passerelle) et permet un administrateur dobserver certaines des caractristiques du trafic (entrant et sortant) sous forme dune interface web. o Il trie et affiche le trafic rseau en fonction de nombreux critres (par protocole, adresse destination,). o Identifie les utilisateurs du rseau. o Identifie lOS de chaque machine. o Il suit la bande passante et les domaines DNS impliqus. o Il diffrencie le multicast, le broadcast et lunicast. o Gnre des graphes de statistiques. o Status_IDS : Cet outil permet un administrateur de visualiser laide dune interface PHP (ACID) les remontes d'alarmes gnres par lIDS SNORT. Cette partie sous-entend que nous avons une base de donnes qui rcupre les informations envoyes par SNORT. Statut_FW : Grce a cet outil, un administrateur rseau peut contrler et analyser le fonctionnement des firewalls prsents sur le rseau (dtecter la prsence et le type de firewall utilis, rcuprer le fichier log, consulter des statistiques sur les connexions, identifier les ports utiliss par un troyen). Dans un rseau, on distingue deux catgories de firewalls qui sont les firewalls personnels installs chez les machines du rseau ainsi que le firewall de la passerelle. Dans le rseau de Computer System , les firewalls personnels utiliss sont soit le firewall de Windows XP de Microsoft soit Kerio Personal Firewall, alors que celui de la passerelle cest Iptables . - 45 -
Projet de fin dtudes Processus : Permet de fournir la liste des processus actifs sur une machine du rseau (Windows ou Linux) afin didentifier la prsence dun programme malveillant (cheval de Troie, virus). Csys Security contient une base de programmes malveillants les plus fameux quon doit la mettre jour rgulirement. Scan_Ports : Cet outil est conu pour dtecter les ports ouverts, les services hbergs et les informations sur le systme d'exploitation d'un ordinateur prsent sur le rseau. Analyse du fonctionnement de la passerelle/Charge CPU de la passerelle : Un administrateur met en uvre ces deux fonctionnalits pour vrifier le bon tat de la passerelle rseau. Contrle_Machine : Cet outil permet de surveiller en temps rel les activits dune machine sur le rseau. Les outils dj traits sont des outils de surveillance et de dtections des anomalies au sein dun rseau local. Afin de ragir, on propose les outils suivants : Configurer_FW : Pour configurer ou mettre jour une configuration existante du firewall de la passerelle du rseau IPtables . Diffrentes mthodes de configurations sont proposes : o Application dune configuration par dfaut (une configuration minimale qui nautorise que les services web et ftp pour les machines du rseau). o La configuration laide dun script fourni par ladministrateur. o La configuration en utilisant un outil graphique webmin . Contrle_Machine : Permet ladministrateur daccder la machine du rseau slectionn dans la liste des machines afin de corriger les failles de configuration, lancer un scan antivirus Laccs se fait soit par une interface graphique dans le cas dune machine Windows ou par une session ssh pour les machines Linux. Conf_WiFi : Pour configurer les points daccs et le serveur Radius du rseau WiFi. Envoyer_MSG : Pour communiquer avec les utilisateurs du rseau.
Puisque Csys Security peut donner des informations critiques sur le rseau et ses utilisateurs, on a prvu davoir des outils dauthentifications pour limiter laccs et lutilisation de ce logiciel.
- 46 -
Projet de fin dtudes En effet, pour accder aux fonctionnalits de Csys Security, un processus dauthentification de lutilisateur est obligatoire :
Le nombre maximum de tentatives dauthentification est trois si non lapplication sera bloque. Les informations et les mots de passe doivent tre chiffrs. Lapplication doit permettre le changement du mot de passe tout en assurant le maximum de confidentialit grce loutil Changer_PWD.
- 47 -
- 48 -
Projet de fin dtudes Contrle de lactivit dune machine : Permet ladministrateur de surveiller lactivit de nimporte quelle machine du rseau (soit par tracking des connexions en cours soit par laccs direct cette machine).
- 49 -
CSYS SECURITY
Gestion IHM
Configuration wifi
Controle de pare-feu
- 50 -
Conclusion
Dans le prsent chapitre nous avons prsent la spcification de notre application qui comprend une tude de lexistant et une spcification des besoins ainsi que les cas dutilisation de lapplication. Pour illustrer la concrtisation de la spcification, le chapitre suivant prsente la conception des diffrentes fonctionnalits de notre application.
- 51 -
Introduction
Une fois l'analyse des besoins et la spcification des exigences de lapplication sont labores, on aborde la partie conception qui constitue la phase la plus importante dans le cycle de dveloppement d'un logiciel puisqu'elle permet de traduire l'ensemble des exigences exposes en une solution.
I-
Lanalyse des besoins, dans le chapitre prcdent, trace les grandes lignes de larchitecture de Csys Security . En effet, cinq modules principaux sont envisags, et qui interagissent ensemble derrire linterface Homme Machine (IHM).
Module de recherche des machines sur le rseau (Scan_Rseau): Pour dtecter les machines
connectes sur le rseau en les identifiants par leurs adresses IP et leurs noms dhte.
- 52 -
Projet de fin dtudes Des statistiques en temps rel sur le trafic rseau (trie et affichage du trafic en fonction de nombreux critres, des informations sur les machines connectes Internet). Statistiques sur lvolution du nombre de connexions entrantes et sortantes du rseau local. Tracking en temps rel des connexions entrantes et sortantes du rseau local. Statistiques sur lutilisation de la bande passante du rseau. Les alertes gnres par lIDS SNORT. Informations en temps rel ou consultation de lhistorique sur le fonctionnement de IPtables. Informations sur le fonctionnement des diffrents pares feux personnels utiliss par les machines du rseau local. Informations sur les ports ouverts pour chaque machine du rseau. Informations sur les processus actifs sur les machines. Surveillance en temps rel de lactivit dune machine (Les connexions en cours). Informations sur lutilisation de la passerelle (charge CPU).
- 53 -
IHM
Noyau
Manip_IHM
Statistiques rseau Statistiques Internet Bande passante Connexions actives Etat de l'IDS Etat du pare-feu Rapport antivirus Processus actifs Ports ouverts LAN
Administrateur
Stat_Rseau
Audit rseau
- 54 -
Conception dtaille
Changer-pwd ( ) : Pour crer une interface qui permet lutilisateur de changer son mot de
passe. Elle permet aussi la gnration des messages derreurs ainsi que les messages de confirmations.
Crypte ( ) : On utilise cette mthode pour chiffrer le mot de passe avant son enregistrement
dans un fichier (lors du processus de changement du mot de passe), aussi il est utilis pour chiffrer ce qui est crit par un utilisateur dans la page dauthentification avant de le comparer avec le mot de passe (chiffr) enregistr dj dans le fichier.
- 55 -
Le constructeur Manip_IHM ( ) : permet la cration de linterface principale de lapplication. Supp_List ( ) : Cette mthode est utilise pour vider et initialiser la liste des machines. Supp_Mach ( ) : Cette mthode rcupre la machine slectionne par lutilisateur et la
supprime de la liste.
La mthode Chercher ( ) permet de dtecter les machines appartenant une plage dadresses
introduite par lutilisateur sur une interface graphique.
Projet de fin dtudes Daprs la phase de spcification des besoins, Csys Security est avant tout un outil de supervision et danalyse de statistiques sur le fonctionnement dun rseau dentreprise. Pour atteindre cet objectif, nous avons dfini ce module et vu la diversit des fonctionnalits, et afin de simplifier la programmation, nous avons dfini plusieurs sous modules.
Stat_Rx ( ) : Pour se connecter avec linterface web de loutil open source NTOP afin de fournir les statistiques dtailles sur le trafic circulant sur le rseau. Stat_Net ( ) : Cette mthode assure les fonctions : Se connecter la partie serveur install sur la passerelle rseau. Analyse le fichier log du firewall IPtables . Gnre des graphes de statistiques sur lvolution du nombre de connexions entrantes et sortantes du rseau local pour une journe, un moi ou toute lanne. Affichage des graphiques de statistiques sur lIHM. Stat_Bw ( ) : Le principe du fonctionnement de cette mthode est similaire celle de Stat_Rx( ), en effet elle connecte avec linterface web de loutil MRTG qui fournit des graphiques sur lvolution de la consommation de la bande passante sur linterface cot FAI de la passerelle.
La mthode Stat_IDS ( ) permet douvrir linterface web de loutil ACID pour consulter
les alertes gnres par le NIDS.
- 57 -
La classe mre Connexions permet danalyser la totalit du trafic rseau, ces mthodes sont :
La deuxime (Scan ( )) capte le trafic circulant sur le rseau en temps rel. La troisime fonction est laffichage des connexions entrantes et sortantes du rseau.
La classe Track_Conn est une classe fille de la classe Connexion , elle hrite ses
mthodes mais elle naffiche que les paquets concernant une seule machine du rseau. Pour cela elle a en plus la mthode Get_mach () qui rcupre la machine slectionne par lutilisateur et la mthode affich_Mach () qui naffiche que les paquets qui la concerne.
II.4.3- Sous-module Pare-feu Il permet lanalyse et la gestion du fonctionnement des firewalls installs sur les machines du
rseau (machine local ou la passerelle). Il utilise :
- 58 -
Une mthode Detect ( ) qui dtecte la machine slectionne par lutilisateur. Une mthode pour rcuprer ladresse IP de la machine slectionne. Une fonction qui assure la connexion avec la partie serveur installe sur la machine distante
(qui peut tre la passerelle du rseau ou une machine locale) et la rcupration du log sans perturber le fonctionnement du firewall.
Une fonction danalyse statistique. Une fonction de dtection des anomalies. Une fonction daffichage sur la console de lapplication.
Pare-feu + + + + + + + Pare-feu () Detect () get_machine () Connect () Stat () Detect_error () Affich ()
Detect ( ) : Dtecter la machine slectionne par lutilisateur. Get_Machine ( ) : Rcuprer ladresse IP de la machine slectionne. Connect ( ) : Assure la connexion avec la partie serveur installe sur la machine distante et
rcupre des informations concernant tous les processus actifs.
Proc_mal ( ) : Dtecter les processus malveillants qui tournent sur la machine slectionne. Stop_Proc ( ) : Terminer le processus slectionn par lutilisateur. Ports_Open ( ) : Dtecter les ports ouverts sur la machine. Affich ( ).
Control_PC ( ) : Accder une machine distante du rseau afin de rgler les problmes et les
failles de scurit.
Analyse_Pass ( ) : Lancer un Scan pour vrifier lintgrit des fichiers, rpertoires et les
donnes confidentielles de la passerelle.
Conclusion
Dans ce chapitre, nous avons dtaill larchitecture de Csys Security avec ces diffrents modules : Identification, Manip_IHM, Scan_Rseau, Stat_Rseau et Sec_Rseau. A ce stade l, il ne reste quimplmenter et tester lapplication.
Chapitre 3 :
- 61 -
Introduction
Aprs avoir tudi lexistant, exprim les besoins, procd une tude thorique et enfin spcifi et conu le systme raliser, il ne reste plus qu limplmenter. Dans ce chapitre on prsentera les techniques utilises pour la ralisation de notre application, lenvironnement du dveloppement ainsi que les tapes de la ralisation.
I-
Environnement de dveloppement
Serveur ALIS Entry Level Linux base de processeur Pentium 4, dune mmoire de 512
Mo et dun disque dur SATA de 80 GO.
Une poste de travail Windows XP base de processeur Celeron, dune mmoire de 512 Mo
et dun disque dur 80 Go.
Une connexion Internet ADSL ddie au projet. Une infrastructure rseau de test.
WinPcap : Bibliothque de traitement des paquets pour Windows. WinPcap est l'outil
standard pour l'accs au rseau dans les environnements de Windows: il peut tre employ pour capturer et transmettre les paquets des protocoles comme TCP / IP. Cela veut dire quil n'est pas capable de bloquer, filtrer ou manipuler le trafic produit par les autres programmes sur la mme machine, il capture simplement les paquets qui transitent sur le mdia.
LibPcap : Cest lquivalent de WinPcap mais sous Linux. Il est utilis dans le cas o
lapplication tourne sur une machine Linux.
JFreeChart : Cest une API Java permettant de crer des graphiques et des diagrammes de
trs bonne qualit.
J2SSH : Cest une API Java permettant daccder des ordinateurs distants sur le rseau en
utilisant le protocole ssh.
Ghost Installer : Cet outil est un logiciel libre, il permet la cration des paquetages
dinstallation. Il se base sur le XML avec une interface lisible qui facilite le travail.
II-
- 63 -
Projet de fin dtudes Linstallation de la partie client de Csys Security sur le PC de ladministrateur rseau permet de crer un raccourci sur le bureau comme il est indiqu par la figure.5.1.
Lapplication sera installe avec un identifiant par dfaut (Admin) et son mot de passe (AdminSys). Ds la premire utilisation de Csys Security, ladministrateur peut changer ces paramtres. Si lutilisateur nest pas authentifi, un message saffiche qui demande la rcriture des paramtres.
- 64 -
Au bout de trois tentatives, un message derreur saffiche (figure 5.4) et lapplication sera bloque.
1 2
- 65 -
A partir de cette interface, lutilisateur peut accder aux diffrentes fonctionnalits offertes par Csys Security . Cette interface se compose de quatre parties :
La premire partie (Numro 1) cest la barre de menu qui contient les liens vers les
diffrentes fonctionnalits de lapplication.
La deuxime partie (Numro 2) : Une barre doutils qui contient une liste des boutons les
plus utiliss.
Une partie (Numro 3) pour laffichage des machines dtectes sur le rseau, elle contient
aussi les boutons : Chercher : Permet de chercher les machines connectes au rseau et qui appartiennent au sous rseau introduit par lutilisateur. Scanner : Permet de dtecter toutes les machines qui sont connectes au rseau.
- 66 -
Sur cette fentre, lutilisateur doit introduire ladresse IP initiale et finale et cliquer sur le bouton Lancer pour commencer la recherche. Une fonction sert se connecter linterface principale de Csys Security et afficher la liste des machines actives (Figure.5.8).
Lautre type de recherche consiste balayer la totalit du rseau. Pour utiliser ce type utiliser la commande Scanner tout le rseau du menu Recherche ou tout simplement cliquer sur le bouton Scanner . Linconvnient de cette mthode cest le temps dexcution, en effet une recherche pour un rseau 192.168.0.0/24 dure peu prs 15 mn. A la fin de la procdure de recherche, par lune ou lautre des deux mthodes les machines actives seront affiches avec leurs noms dhte comme il est indiqu dans la figure.5.8:
- 68 -
Projet de fin dtudes Parmi ces outils il y a ceux qui sont propres Csys Security , mais aussi nous avons utilis des outils Open Source comme NTOP, ACID et FirewallEyes pour bien rpondre nos besoins.
Comme il est indiqu par la figure, loutil distingue entre les connexions sortantes du rseau local vers Internet et les connexions entrantes, affiche pour chaque paquet ladresse source, ladresse destination, le protocole utilis, le port source, le port destination et permet aussi de gnrer des alertes pour toute demande de connexion TCP depuis lextrieur.
II.6.2- Statistiques sur lvolution dans le temps des nombres de connexions Internet.
Afin dvaluer le comportement du rseau, ladministrateur utilise cet outil qui gnre des graphiques qui montrent lvolution dans le temps du nombre de connexions entrantes et sortantes du rseau local. - 69 -
Projet de fin dtudes La figure.5.10 nous montre lvolution du nombre de connexions pour un jour (Vendredi 25 mai 2007) de 0h jusqu 11h du matin :
La courbe de la figure.5.10 prsente un pic (une volution massive du nombre de connexions entrantes et sortantes) 4h du matin et ce-ci prsente un tat anormal. En analysant le fichier log du firewall IPtables , nous avons remarqu des tentatives de connexions dune machine du rseau local qui utilise un logiciel de tlchargement peer-to-peer.
- 70 -
- 71 -
Conn_TCP : permet dafficher toutes les connexions utilisant TCP comme protocole de
transport.
Conn_UDP : permet dafficher toutes les connexions utilisant UDP comme protocole de
transport.
Conn ICMP : permet de traiter les paquets ICMP. Statistiques : permet dafficher des statistiques. Ports troyens : permet dillustrer toutes les connexions qui utilisent un port qui peut tre
utilis par un troyen.
Lanalyse statistique des connexions permet davoir le nombre de connexion total ainsi que les pourcentages des connexions TCP, UDP et ICMP. On peut voir aussi les pourcentages des connexions bloques, fermes et ouvertes pour chaque protocole (Figure 5.13).
- 72 -
Cet outil contient deux principaux modules qui permettent de faciliter la tche de ladministrateur afin de protger une machine sur le rseau :
Proc_malveillant : Permet de chercher dans la liste des processus actifs ceux qui sont
malveillants (virus, troyen). Ce module est fond sur une base de donnes qui contient une liste des processus malveillants les plus fameux que ladministrateur doit mettre jour rgulirement.
Projet de fin dtudes Lexemple de la figure.5.15 prsente le rsultat de scan des ports dune machine (192.168.0.177) du rseau de Computer System.
Loutil NTOP : Ntop dlivre une quantit impressionnante d'informations sur le trafic
dun rseau informatique qui aident le responsable de scurit pour la prise des dcisions. Parmi les informations les plus utilises dans notre cas on cite ; Tri du trafic rseau selon plusieurs critres (protocole, niveau applicatifs, taille des paquets), lidentification des utilisateurs du rseau (internes ou externes) en spcifiant pour chacun la bande passante quil utilisePour lancer Ntop il suffit dutiliser le bouton Rseau de la barre doutils.
- 74 -
Loutil ACID : Cet outil permet au responsable de scurit danalyser les alertes gnrs
par le NIDS Snort (figure.2.7). pour le lancer, utiliser le bouton Stat_IDS de la barre doutils.
FirewallEyes : Outil graphique danalyse des logs gnrs par IPtables . Il suffit de
slectionner la passerelle (sur laquelle est install IPtables) de la liste des machines et cliquer sur le bouton Stat_FW ou utiliser le lien (barre de menu : RseauEtat du pare-feu) (figure.2.4).
- 75 -
Trois mthodes sont possibles pour configurer IPtables. Par exemple la premire mthode consiste exporter un script de configuration vers le serveur et de le lancer. Quelques paramtres de configurations sont alors ncessaires (figure.5.17).
- 76 -
Conclusion
Ce dernier chapitre a permis de prsenter les diffrentes fonctionnalits de lapplication. L application dveloppe est oprationnelle et a apport une valeur ajoute puisque elle est utilise par la direction de Computer System depuis un mois. En effet, elle offre une panoplie de fonctions qui permettent doptimiser ladministration du rseau, revoir la politique de scurit adopte par lentreprise et assurer une meilleure protection et gestion du trafic.
- 77 -
Conclusion gnrale
Le travail prsent dans le cadre de ce projet de fin d'tudes a consist principalement en la conception et l'implmentation d'une solution de scurit dun rseau informatique. Le projet a t divis en deux parties ; Au cours de la premire partie, nous avons prsent et implment une architecture de base (form par des programmes Open Source) pour scuriser un rseau informatique, alors quau cours de la deuxime partie nous avons dvelopp notre propre application de gestion et de supervision de la scurit rseau Csys Security et on a montr comment on a pu, laide de cet outil, grer la scurit de notre rseau. Comme nous avons dj indiqu dans ce rapport, les pirates disposent doutils plus sophistiqus et volus de jour en jour ! Ainsi, un niveau de scurit qui savre confortable un moment donn devient nettement insuffisant ultrieurement. Par consquent, le niveau de scurit atteint par larchitecture que nous avons dploy peut ne pas satisfaire certains types de rseaux. Tout d'abord, le pare-feu doit laisser passer une partie du trafic et l'attaque peut avoir lieu justement sur le service qui est accessible. videmment, le systme IDS est capable de dtecter une attaque quun pare-feu a laiss pass. Mais toutefois il est incapable de la faire chouer tant donn quil nest quun simple observateur : sa prsence n'aura qu'une valeur informative. Aussi un systme IDS peut provoquer beaucoup de faux positifs (alerte gnre alors qu'il n'y a pas d'attaque) et de faux ngatifs (absence d'alerte alors qu'il y a une attaque). Pour rsoudre ces problmes et amliorer le niveau de scurit atteint, il existe des nouveaux outils qui permettent la prvention et le blocage des attaques nomms IPS (Annexe A), et aussi des nouvelles mthodes de dtection dintrusion qui sont les pots de miels (Annexe B). Dautre part, suite lachvement et lessai de lapplication Csys Security , on ne prtend pas que le travail effectu est ce quon dsire au mieux. En effet, - 78 -
Projet de fin dtudes il reste quelques dtails examiner, soit pour mieux adapter lapplication soit pour ajouter de nouvelles alternatives.
- 79 -
- 80 -
Projet de fin dtudes Un grand nombre de projets Open Source sur les honey pots ont vu le jour (HoneyD, HoneyNet) pour collecter des informations sur les outils utiliss par les pirates, leurs mthodes dattaque et les failles de scurit quils exploitent.
Bibliographie
[1] Hassen Turki Dveloppement dun outil daide la gestion de la scurit dans les rseaux TCP/IP : SATAN Projet de fin dtude filire ingnieur en tlcommunications- SUPCOM promotion 2005. [2] Alexandre Viardin Un petit guide pour la scurit : Livre ouvert sur Internet www.mirabellug.org [3] Site Internet : www.securiteinfo.com Ralis par des professionnels du conseil et de la prestation dans la scurit informatique. [4] Jamila Ben Slimene Conception et implmentation dun systme de corrlation hors ligne dalertes dintrusions Projet de fin dtude filire ingnieur en tlcommunications- SUPCOM promotion 2004. [5] Site Internet : www.commentcamarche.com : Un livre ouvert sur linformatique. [6] Bernard Boutherin Scuriser un rseau Linux : Cahier de lAdmin : Une collection dirig par Nat Makarvitch EYROLLES out 2003. [7] Christian Casteyde Guide dinstallation et de configuration Linux : Un livre ouvert sur Internet. [8] Nicolas Baudoin NT Rseau : IDS et IPS extrait dun cours Tlcom Paris 2003. [9] Rafeeq abd Rehman Intrusion Detection Systems with Snort: Advanced IDS Techniques Using Snort, Apache, MySQL, PHP, and ACID Edition Eyrolles May 2003. [10] Eric Cole Network Security Bible Publi par: Wiley Publishing 2005. [11] Michal Piotrowski : extrait dune magazine de scurit informatique Hakin9 N1 2006. [12] Site web www.supinfo-projects.com Un site qui contient tous les projets des lves de lcole suprieure dinformatique Paris. [13] Olivier de Vaublanc, Installer un rseau WiFI , dition Dunod, Paris, 2004
- 81 -
Projet de fin dtudes NSA: National Security Agency POP: Post Office Protocol SNAT: Source Network Address Translation SMTP: Simple Mail Transfer Protocol SIM: Security Information Management SSID : Service Set IDentifier TCP : Transmission Control Protocol UDP : User Datagram Protocol WEP : Wired Equivalent Privacy WPA : WiFi protected Access
- 83 -