Free Essay

Gestion de Log

In:

Submitted By mirakus
Words 19106
Pages 77
Projet de Fin d’Etudes
Pour l’Obtention du Diplôme Master en
Ingénierie Informatique et Internet

Intitulé :

Gestion et centralisation des logs avec leurs corrélations
Présenté par :
BENZIDANE KARIM
Le, 06/07/2010
Encadrants :
Moussaid Khaild , Faculté des Sciences, Casablanca
Zoubir Sami , Crédit du Maroc, Casablanca
Ouali Youness, Crédit du Maroc, Casablanca

Membres du Jury :
Mr Abghour, Faculté des Sciences, Casablanca
Mr Bouzidi, Faculté des Sciences, Casablanca
Mme Fetjah, Faculté des Sciences, Casablanca

Année Universitaire 2009 / 2010

1

Remerciements

J’adresse mon remercîment à Mr. Zoubir sami pour sa disponibilité et écoute ainsi de m’avoir accepté dans son département et m’avoir permis le choix du sujet.
Je remercie également Mr. Youness OUALI pour ses valeureux conseils ainsi que son encadrement au cours de ce stage allant de la démarche du travail jusqu’au technique de déploiement.
Je remercie également Mr Abderahim SEKKAKI pour nous avoir donnée l’opportunité d’acquérir ces connaissances, ainsi que tous les enseignants que j’ai eu au long de ces 2 années du Master.
Un grand merci à mon encadrant Mr Moussaid pour son aide et conseil pour que ce stage soit réalisé et finalisé.
Je tiens aussi à remercier toute l’équipe du plateau ou j’étais à CDM, pour leur aide afin de me fournir les informations nécessaires pour le bon déroulement du projet .
Mes remerciements aux membres des jurys qui m’ont honoré en acceptant de juger ce travail. 2

Table des matieres
Liste des figures ................................................................................................................ 4
Introduction ..................................................................................................................... 5
Chapitre 1 : Contexte du projet ......................................................................................... 7
1.1 Crédit du Maroc .................................................................................................................................. 8
1.4 Définition du besoin ........................................................................................................................... 9
1.2 Définition d’un SIMS ......................................................................................................................... 11
1.3 Fonctionnalité : ................................................................................................................................. 11

Chapitre 2 : Etat de l’art .................................................................................................. 15
2.1 Choix de la solution SIMS : ............................................................................................................... 16
2.1 Prelude-SIEM........................................................................................................................................ 17
2.2 Format standard ............................................................................................................................... 25
2.3 Compatibilité ..................................................................................................................................... 27

Chapitre 3 : Sondes et sources

d’informations ........................................................... 29

3.1 Qualité indispensable ...................................................................................................................... 30
3.2 Intégration de sources d’information externes ............................................................................ 41

Chapitre 4 : Etude et réalisation de la maquette de test .................................................. 44
4.1 Architecture ...................................................................................................................................... 45
4.2 Fonctionnalités ................................................................................................................................. 46
4.3 Outils et sondes utilisées ................................................................................................................. 46
4.4 Stockage des informations dans une BD ............................................................................................... 48
4.5 Schéma de la structure de base adoptée .............................................................................................. 48
4.5 Enregistrement des sondes .................................................................................................................. 49
4.6 Haute disponibilité ........................................................................................................................... 51


Elaboration de Prelude en haute disponibilité ........................................................................... 52

4.7 Performance ...................................................................................................................................... 53

Chapitre 5 : Fonctionnement et test ................................................................................ 55
5.1 Scan de Port ....................................................................................................................................... 56
5.2 Brute force attaque........................................................................................................................... 58
5.3 Analyse via Prelude-LML ................................................................................................................. 60
5.4

L’interface Prewikka: ................................................................................................................. 63

Conclusion ...................................................................................................................... 68
Annexe ........................................................................................................................... 69
Reference ....................................................................................................................... 83
3

Liste des figures

Figure 1 : Schéma de l'organisme DSIG ............................................................................................................. 9
Figure 2 : Topologie analogique d'une SIEM ................................................................................................... 10
Figure 3 : Illustration des étapes du SIMS ....................................................................................................... 11
Figure 4 : Tableau comparatif des solutions SIEM .......................................................................................... 16
Figure 5 : Architecture simple ......................................................................................................................... 23
Figure 6 : Architecture à relai ......................................................................................................................... 24
Figure 7 : Architecture à relai inversé ............................................................................................................. 24
Figure 8 : Structure d'un message IDMEF ....................................................................................................... 26
Figure 9 : Tableau de compatibilité de Prelude............................................................................................... 28
Figure 10 : Modèle avec la couche SSH ........................................................................................................... 30
Figure 11 : Fonctionnement des NIDS ............................................................................................................. 31
Figure 12 : Fonctionnement d'un HybIDS ....................................................................................................... 34
Figure 13 : Fonctionnement d'un pare-feu ..................................................................................................... 36
Figure 14 : Maquette de teste proposée......................................................................................................... 49
Figure 15 : Remonté d'une alerte corrélée (EvantScan) .................................................................................. 58
Figure 16 : Remonté d'une alerte corrélée (Brute Force) ................................................................................ 60
Figure 17 : Fichier syslog , journalisant HoneyD .............................................................................................. 61
Figure 18 : Remonté d'alerte de la sonde HoneyD via Prelude-LML ................................................................ 62
Figure 19 : Formulaire d'authentification ....................................................................................................... 63
Figure 20 : Page principale Prewikka .............................................................................................................. 64
Figure 21 : Liste des alertes ............................................................................................................................ 65
Figure 22: Détail d'une alerte ......................................................................................................................... 65
Figure 23 : Pages des alertes corrélées ........................................................................................................... 66
Figure 24 : Liste et pages des agents ............................................................................................................... 67
Figure 25 : Graphes de la page statistiques .................................................................................................... 67

4

Introduction
De nos jours, les réseaux d’entreprise sont exposés à toutes sortes d’attaques informatiques qui vont du simple challenge entre hackers, aux attaques ciblées d’autres organisations ou entreprises concurrentes en passant par le sabotage de serveurs (dénis de service) dans le but de discréditer l’entreprise en tant que fournisseur de services ou simplement en tant qu’entreprise. Les attaques indoor semblent aussi prendre de l’ampleur. Ainsi, les problèmes de protection et préventions contre les attaques informatiques sont de plus en plus complexes et variés puisque :
 Les entreprises sont de plus en plus délocalisées et donc disposent de réseaux intranet et extranet nationaux ou/et mondiaux,
 Les attaques peuvent être externes (outdoor) et internes (indoor),
 Les collaborateurs sont de plus en plus mobiles et donc les réseaux d’accès de plus en plus nombreux et variés.
Donc, le responsable des services informatiques et le responsable de la sécurité doivent travailler de plus en plus en étroite collaboration pour garantir la consistance des données administratives.
Pour l’administrateur réseau et sécurité, le nouveau challenge consiste donc à :
 Définir et promouvoir une politique sécurité,
 Déployer les dispositifs de défense,
 Assurer par des outils d’observations performants la détection de failles éventuelles et le cas échéant,
 Redéfinir et redéployer rapidement de nouvelles défenses, voire même redéfinir une nouvelle politique de sécurité.
Malheureusement la gestion de la sécurité consiste actuellement à superposer aux outils et données existantes celles relatives à la sécurité. Cela créé des redondances très néfastes au niveau des investissements et surtout au niveau des données avec par exemple des conséquences très fâcheuses lors de révocation de droits d’accès suite à une réaffectation ou au départ d’un collaborateur.
Cependant, les solutions sont trop complexes et coûteuses pour répondre aux besoins des entreprises. Dans notre évaluation du marché, nous avons constaté surtout l’émergence de nouvelles plateformes de gestion de sécurité, très spécialisées et plus adaptées. Cette nouvelle génération de produits dispose d’outils d’analyse et corrélation pouvant dans une certaine mesure déterminer, parfois même en temps réel, la gravité de la menace ou la profondeur de l’intrusion en cours. Cette intelligence est cependant très

5

redevable du flux d’information provenant des différents organes à surveiller respectivement à protéger.
Dans l’urgence, les entreprises investissent des sommes colossales dans des logiciels et des matériels sensés garantir la sécurité et l’intégrité du réseau.
• Un réseau d’entreprise digne de ce nom est formé d’équipements réseau hétérogènes et d’une certaine variété de systèmes d’exploitation, chacun fournissant ses logs1 dans un format bien propriétaire. Selon le type de solution utilisé, il est souvent nécessaire de parcourir tous ces logs séparément et manuellement.
• Certains de ces logs sont envoyés en clair sur le réseau (syslog et SNMPv.1 en sont de bons exemples) vers un serveur central, offrant ainsi à des personnes malveillantes une magnifique opportunité de masquer leurs agissements en inondant ledit serveur de faux messages ou alertes.
• Dans l’état actuel des choses, aucune solution commerciale ou Open Source ne peut prétendre garantir seule la sécurité du réseau . . . il faut avoir recours à plusieurs produits de conception et de source différentes. Chacun de ces produits possède bien sûr un format de message et une interface qui lui sont propres.
• Bien que la qualité des sondes réseaux et hôtes se soit grandement améliorée, ces dernières sont toujours sujettes à un pourcentage non négligeable de faux positifs2 et faux négatifs3. • Il existe toutefois une petite proportion d’entreprises où la surveillance du réseau ne souffre peu ou pas des points mentionnés ci-dessus. Malheureusement, le travail du responsable de la sécurité n’en est pas facilité pour autant, car il doit ”jongler” avec un flot incessant d’alertes provoquées par des comportements qui n’ont, dans 90% des cas, aucun impact sur l’intégrité du réseau(En effet, quelle est l’utilité de signaler des attaques propres à Microsoft IIS dirigées contre un serveur Apache ?).
• Un dernier point noir est le fait que les réseaux 100% switchés ont de plus en plus la cote auprès des entreprises . . . ce qui est une bonne chose du point de vue de la (pseudo) confidentialité des données. Malheureusement, ces derniers sont plus problématiques à surveiller. En effet, suivant le nombre de postes connectés et le débit des données, le port ”monitoring” du switch devient complétement saturé, rendant soit impossible l’analyse complète des données (perte de paquets) ou ralentissant l’ensemble de son fonctionnement (throttling).
A la vue du triste palmarès des solutions actuelles de sécurité, nous pouvons aisément constater qu’il devient impératif de trouver rapidement une solution. Force est de constater qu’à l’heure actuelle, seuls des produits commerciaux très onéreux prétendent offrir une alternative viable et se destinent naturellement au marché des grandes entreprises. L’arrivée d’un produit tout aussi efficace à prix plus modéré serait extrêmement bien accueillie offrant ainsi un bon SIMS4.

1

Fichier journal
Une alerte est levée sans raison
3
Aucune alerte n’a été levée alors que l’attaque a bien eu lieu
4
Security information management System
2

6

Chapitre 1 : Contexte du projet

7

1.1 Crédit du Maroc
Etablissement financier marocain de premier ordre, le Crédit du Maroc, filiale du Groupe
Crédit Agricole SA (France)
1.1.1 Présentation CDM
La banque Crédit du Maroc est un groupe financier marocain multi-métiers ayant une présence nationale.
CDM exerce ses activités en direct et à travers plusieurs filiales spécialisées. Ses activités directes sont organisées en 2 pôles Métiers et 1 pôle transverse organisé. Ainsi, les pôles Métiers comprennent :
 Le pôle Banque Réseau et de Détail;
 Le pôle Banque de Financement et d’Investissement;
 Le pôle Industrialisation;
 Le pôle Industrialisation comprend :
 La Direction des Systèmes d’Information Groupe « DSIG »
 La Direction de l’Organisation Groupe « DOG »
 La Direction des Services à la Clientèle et des Flux « DSCF »
 La Direction des Immeubles et de Logistique « DIL »
1.1.2 Organisation et présentation DSIG
La Direction des Systèmes d’Information Groupe a pour objectif de répondre aux besoins informatiques de l'ensemble des utilisateurs ou maîtrises d'ouvrage du Groupe CDM en accord avec la stratégie globale de la banque visant à améliorer la rentabilité, la qualité de service, la productivité et la sécurité. Elle assure cet objectif en veillant à la cohérence globale du système d'information.
Les départements qui constituent la DSIG veillent à :
 Définir et contrôler l'application des normes et standards informatiques régissant la conduite des projets et définissant les rôles des différents acteurs,
 Organiser et assurer le rôle de la maîtrise d'œuvre fonctionnelle à travers les métiers traditionnels de l'informatique à savoir la gestion cohérente de l'architecture fonctionnelle, les études et développements, la gestion des projets et la maintenance,
 Organiser et assurer la gestion de l'infrastructure du système d'information et le déroulement des traitements périodiques dans les meilleures conditions de qualité de service. Cette mission comprend la gestion de l'architecture technique (informatique centrale et distribuée, télécommunications) avec comme objectifs la sécurisation des données et des traitements informatiques, la cohérence et le dimensionnement optimal de l'infrastructure technique et la pérennité des investissements.

8

Le schéma ci-dessous donne une vision globale de l’organisation DSIG :

Figure 1 : Schéma de l'organisme DSIG

1.4 Définition du besoin
1.4.1 Problématique :
Comme cité dans la partie ci-dessus , le stage est effectué à «Crédit du Maroc »(Siège ) là où réside le système d’information central. Tous facilement constaté une banque requiert toujours un système d’information robuste et surtout bien sécurisé.
De nos jours, le système d’information (S.I.) est devenu vital pour la majorité des entreprises. Garant de l’activité de l’entreprise pour certaines ou simple garant des données confidentielles pour d’autres, une interruption de service du S.I. induirait des risques majeurs pour l’entreprise
 Risque de perte financière
 Risque de perte d’image
 Risque d’impact juridique
Face à ces risques, les entreprises n’ont pas d’autre choix que d’investir dans une politique de sécurité. Cependant le coût de ces investissements est loin d’être négligeable et les entreprises sont souvent confrontées aux problèmes suivants :
9

 La multiplicité et la complexité croissante des technologies.
 L’émergence de nouvelles attaques (phishing, virus, etc …) sans cesses plus pertinentes qui imposent aux entreprises une veille permanente
 La spécificité. Chaque entreprise est différente, donc chaque entreprise à ses contraintes propres (au niveau stratégique comme au niveau technique).
1.4.2 Le besoin :
Le besoin de base consiste à mettre en place un manager de sécurité centralisé (Figure
1) capable de faire face au flot d’alertes et autres problèmes rapportés par les HIDS et
NIDS du réseau, ainsi que différent autre composant de sécurité .
Le premier but est de récolter toutes ces alertes et de les présenter dans un format unique et homogène, rendant ainsi possible l’analyse de ces informations par l’administrateur. Une fois toutes les alertes brutes récupérées, il faudrait mettre en place un mécanisme de corrélation. Ce dernier permettra de diminuer une partie des faux-positifs, sans toutefois les éradiquer totalement.
Ainsi, l’administrateur de sécurité aura une vue globale sur les attaques qui ont réellement abouties, sans devoir visualiser les unes après les autres les milliers d’alertes générées.

Figure 2 : Topologie analogique d'une SIEM

10

1.4.3 Cahier des charges
En partant de ce qui a été énoncé au paragraphe précédent, l’étude sera faite sur l’établissement d’une solution SIMS. Cette solution semblant répondre aux problématiques précédemment citées, permettant ainsi de gérer de manière centralisée les remontées d’information de différents outils, de les stocker et les traiter afin de faciliter l’administration et la gestion de la sécurité pour l’ administrateur.
Après concertations avec l’encadrant et aux vues des besoins, la liste des taches sera la suivantes :
Etude de la problématique.
Choix d’une solution SIMS :
NetForensics
OSSIM
Prelude
Etude de la solution SIMS choisie
Mise en œuvre d’une maquette de test
Rapport de test
1.2 Définition d’un SIMS
Un SIMS appelés également SEM (Security Event Management) ou SEIM (Security Event
Information Management) ou encore SIEM (Security Information and Event Management) est un système servant à automatiser la collecte et l’analyse des informations de tous les nœuds de sécurités dans un réseau. Mis à part les informations obtenues des logs et des alertes des firewall, IDS , Anti-virus, VPN et autre système de sécurité , un
« Security Manager» peu obtenir tous ces informations dans une seul consol SIM . Il y a différent types de SIM , quelques’ un servent à faire une agrégation de tous les rapports venant des différentes composantes, et d’autre font la corrélation des logs pour améliorer la qualité d’ensemble de la sécurité de l’information .
Il y a deux avantages clés dans l’agrégation des donnés : premièrement , la réduction du cout et l’amélioration de l’efficacité de l’administration. Deuxièmement, la simplification et l’amélioration du reporting pour l’audit.
1.3 Fonctionnalité :

Figure 3 : Illustration des étapes du SIMS

11

La collecte
Les logiciels de SIEM prennent en entrée les événements collectés du SI : les logs des équipements (firewalls, routeurs, serveurs, bases de données, etc.). Ils permettent de prendre en compte différents formats (syslog, Traps SNMP, fichiers plats, OPSEC, formats propriétaires, etc.).
La collecte peut être de façon passive en mode écoute ou active en mettant en place des agents directement sur les équipements ou à distance.
La normalisation
Les logs bruts sont stockés sans modification pour garder leur valeur juridique. On parle de valeur probante. Les logs sont généralement copiés puis normalisés sous un format plus lisible. En effet, la normalisation permet de faire des recherches multicritères, sur un champ ou sur une date. Ce sont ces évènements qui seront enrichis avec d'autres données puis envoyés vers le moteur de corrélation.
L’agrégation
Fait référence au processus d’acquisition de plus en plus de données .Plusieurs règles de filtrage peuvent être appliquées, ils sont ensuite agrégés selon les solutions, puis envoyés vers le moteur de corrélation.
La corrélation
La corrélation est une méthode combinat diffèrent événement relié afin d’avoir une image précise de ce qui se passe, ainsi donc limiter les lacunes des IDS. Son but majeur est d’y mettre une bonne concentration de logs et aussi une réduction du bruit générer par les faux positives ou négatives afin de découvrir les nouvelles attaques bien construites.
L’atout majeur de la corrélation est de détecter des séquences d’alertes présenté par une ou plusieurs sondes. L’analyse de ces séquences résulte une nouvelle alerte représentant ainsi la signification globale de toutes les séquences.
Il y a deux types de corrélations :
– Une corrélation passive : Déduit une alerte uniquement depuis les infos que l’on a par éliminations de doublons, factorisations, ou par fusion simple ou complexe
.
– Une corrélation active : Dérivé de la corrélation passive pour faire générer à l’IDS de nouvelles alertes, elle va chercher les informations correspondant à des alertes émises. Par exemple, lorsqu'une personne se connecte en dehors des heures de travail, ceci a un impact élevé qui n'aurait pas été en temps normal d'activité.
Exemples : o Compression : A+B = A’ o Seuillage : A+A+A+A+A+A=A o Modification : A->B
12

o Enrichissement : A=A+CVE
Après avoir fait la collecte d’un maximum d’information , on peut passer par deux étapes assurant ainsi un bon niveau de corrélation .la première étape reposant sur l’élimination des duplicata , se basant sur la suppression des alertes identiques ou similaires , la deuxième étape consiste à factoriser les alertes ; réduisant ainsi le nombre d’alerte en une seul alerte corrélée , cet alerte résume donc toutes les informations contenues dans les alertes et ajustes leurs propriétés .
On trouve deux niveaux d’analyse distinct ; une corrélation simple et corrélation global.
La corrélation simple :
Une séquence d’alerte ciblant le même service ou hôte peut être regroupé afin de produire une alerte corrélée. L’analyse de cette séquence d’attaque n’a pas besoins d’informations additionnelles.
La corrélation globale :
La corrélation simple n’est pas efficace contre une attaque bien construite ; l’attaque ne va pas attaquer le même service ou hôte ainsi que pas dans la même intervalle de temps. La corrélation global considère le contexte de tous les évènements qui nous amène à l’attaque courante et essaye de trouver des similitudes afin de reconstruire les séquences de l’attaque.
Il y a plusieurs éléments utiles pour un bon niveau d’analyse :
 @ IP : Le lien entre le trafic entrant et le trafic sortant est important et généralement pas considérer par les NIDS, l’@ IP est une source utile pour comprendre la relation entre différente alerte et les lier à la même séquence.
 Comportement : Un changement soudain de comportement dans une activité régulière est considérer comme suspicieuse.
 Temps de travail : Une connexion hors l’intervalle de travail permise déclenche une alerte corrélée.
 Règlement : La Policy de la sécurité interdit la connexion à certain serveur ou service mise à part l’administrateur, donc toute connexion est interprété comme malicieuse.
Le reporting
Les SIMS permettent également de créer et générer des tableaux de bord et des rapports. Ainsi, les différents acteurs du SI, RSSI, administrateurs, utilisateurs peuvent avoir une visibilité sur le SI (Nombre d'attaques, nombre d'alertes/jour...).
Archivage
Les solutions SIEM sont utilisées également pour des raisons juridiques et réglementaires. Un archivage à valeur probante permet de garantir l'intégrité des traces. Les solu-

13

tions peuvent utiliser des disques en RAID, calculer l'empreinte, utiliser du chiffrement ou autre pour garantir l'intégrité des traces.
Rejeu des évènements
La majorité des solutions permettent également de rejouer les anciens évènements pour mener des investigations post-incidentes. Il est également possible de modifier une règle et de rejouer les évènements pour voir son comportement.
Les différentes5 solutions SIM:
 ArcSight
Solutions: ArcSight ESM; ArcSight Interactive Discovery; ArcSight Pattern Discovery
 Cisco
Solution: CiscoWorks Security Information Management Solution (SIMS)
 Computer Associates
Solution: CA Security Command Center
 eIQnetworks
Solution: SecureVue
 Enterasys
Solution: Dragon Security Command Console
 High Tower
Solution: SEM 3200
 netForensics
Solution: nFX SIM One
 NitroSecurity
Solution: NitroView ESM
 Novell
Solution: ZENworks Endpoint Security Manager
 RSA
Solution: enVision Platform
 Symantec
Solution: Symantec Security Information Manager
 TriGeo
Solution: TriGeo Security Information Manager
 PreludeIDS Technologies
Solution: Prelude-SIEM
 AlienVault
Slolution : OSSIM

5

Listes non exhaustives

14

Chapitre 2 : Etat de l’art

15

2.1 Choix de la solution SIMS :

Figure 4 : Tableau comparatif des solutions SIEM

Nos choix se sont focalisés sur les solutions les plus utilisées sur le marché (Open Source et commercial) ; nFX SIM one de NetForensic , OSSIM de AlienVault et Prelude-SIEM de
Prelude.
nFX SIM one est considéré parmi les solutions commercial les plus imposées et qui s’est répandue dans le marché d’une façon large, mais elle ne reste pas sans inconvénient car comme toute solution commercial le coté payant reste toujours un obstacle majeur , toujours dans le coté payant de la solution ou réside sa limitation pour la gestion des sondes ; c’est qu’il faut avoir une licence pour chaque sonde ajouté au-delà des dix sondes offerte au achat de la solution , nombre qui est faible pour un déploiement d’une solution SIM dans un réseau d’une grande entreprise ou une banque . Mise à part cet inconvénient, une solution commerciale est toujours une boite noire qui est loin d’être modelable ou personnalisable (personnalisation des règles de corrélations par exemple) en vis-à-vis ce qu’on peut faire dans une solution Open Source.

16

La deuxième solution étudié est OSSIM , l’une des première solutions SIM Open Source, mais elle reste moyennement utilisé suite à sa difficulté de déploiement due à une documentation peu abondante et rare aussi , sauf qu’elle offre une interface graphique riche et une grande modularité par rapport aux autres solutions SIM Open Source. Mais l’inconvénient majeur de OSSIM est liés au format des alertes ; une alerte OSSIM peut contenir plusieurs champs ( type, date, sensor, interface, plugin_id, plugin_sid, priority, protocol, src_ip, src_port, dst_ip, dst_port, log, snort_cid, snort_sid, data, condition, value
), le champ log chargé de contenir le log original n’est pas traité par le serveur pour une partie des plugins (NTsyslog, …), ce qui signifie que le log original est perdu et ne pourra pas être utilisé. Si on ajoute à cela le fait qu’OSSIM ne permet la transmission que d’une seule valeur du log (champ value) au moteur de corrélation, nous nous retrouvons avec une granularité insuffisante comparée à la richesse d’informations que peuvent contenir les logs originaux, et c’est là où vient la robustesse de Prelude-SIEM en sa centralisation et normalisation des données collectées, ainsi qu’une interface graphique amélioré
(Prewikka) bien plus que ses précédents (piwi, perl-front end ou php-front end ) , ainsi qu’une flexibilité modulaire pour combler les différents manques par rapport au solution du marché. Prelude-SIEM est une solution de grande qualité qui peut être déployer dans un environnement de production non pas comme OSSIM qui pose passablement des problèmes au niveau des phases d’installation et test préliminaire.
Après longue réflexion, nous avons décidé d’exploiter la suite Prelude-SIEM comme structure d’échange et de récolte des messages de sécurité, car elle répond à tous les critères de base qui ont été défini comme besoin.
2.1 Prelude-SIEM
2.1.1 Création
Le Système de Détection d’Intrusions (IDS) open source Prelude a été créé en 1998 par
Yoann Vandoorselaere. Depuis sa création, des ingénieurs et spécialistes en sécurité ont, dans l’esprit open source, contribué activement à Prelude. Ce travail mènera, quelques années plus tard, au développement d’un système de management de la sécurité (SIM) performant et universel devenu l’un des plus largement déployé au monde.
La société PreludeIDS Technologies a été co-fondée en mars 2005 par M. Yoann Vandoorselaere (Ingénieur en développement, Expert sécurité et Responsable R&D) et Mlle
Audrey Girard (Ingénieur en systèmes industriels et Gérante) avec l’objectif de repousser les frontières de Prelude open source au travers d'un nouveau type de solutions commerciales. PreludeIDS Technologies a connu une croissance rapide sur le marché hautement compétitif de la sécurité informatique et plus particulièrement sur le marché des systèmes de management de la sécurité. Ils ont développé, avec succès, un portefeuille clients

17

étoffé et prestigieux, incluant certains leaders des télécoms, banques, groupes industriels ainsi que des organisations gouvernementales.
2.1.2 Définition
Prelude est un SIM Universel. Prelude collecte, normalise, catégorise, agrège, corrèle et présente tous les événements sécurité indépendamment de la marque ou de la licence du produit dont ces événements sont issus : il est "Agentless".
En plus d'être capable de collecter tout type de logs (journaux systèmes, syslog, fichiers plats, etc.), Prelude bénéficie d'une compatibilité native avec certains systèmes de façon à enrichir encore l'information (snort, samhain, ossec, auditd, etc.)
Les événements sécurité sont normalisés grâce à un format unique : l'IDMEF (Intrusion
Detection Message Exchange Format). IDMEF est une norme internationale créée à l'initiative de l'IETF avec la participation des équipes Prelude pour permettre l'interaction entre les différents outils sécurité du marché.
2.1.3 Composant :
Interface Prewikka
Prewikka est la console d'analyse graphique du SIM Universel Prelude. En fournissant de nombreuses fonctionnalités, Prewikka facilite le travail des utilisateurs et analystes.
Cette interface permet de visualiser les alertes, que un ou plusieurs concentrateurs Prelude (“prelude-manager”) ont stocké en base de données, de façon conviviale. Prewikka fournit aussi des outils externes tels que "whois" ou "traceroute".
Manager Prelude
Le Manager Prelude est un concentrateur capable de prendre en charge un grand nombre de connexions et de traiter de grandes quantités d'événements. Il utilise des files d'ordonnancement par sonde afin de traiter les événements reçus de façon équitable entre les différentes sondes.
Il est responsable de la centralisation, de la journalisation à travers deux fonctions :
 Celle de relais : un contrôleur relais va assurer le routage vers un contrôleur maître (ou un autre relais dans le cas d'architecture en cascade) d'alertes provenant des sondes qui lui sont rattachées
 Celle de maître : un tel contrôleur va assurer la réception des messages et alertes provenant des sondes et/ou des contrôleurs relais qui lui sont rattachés ainsi que leur journalisation dans un format unique et lisible par l’analyste.
Il enregistre les événements reçus sur des médias spécifiés par l’utilisateur (base de données, journaux système, Email, etc.) et établit les priorités de traitement en fonction de la criticité et de la source des alertes.

18

Un manager Prelude assure également la remontée des tests de connexion (" heartbeats
") échangés avec les sondes réseaux et locales. Ces tests permettent de vérifier la continuité de la communication entre sondes et contrôleurs.
Libprelude
La bibliothèque Libprelude permet la communication sécurisée entre les différentes sondes et un Manager Prelude. Elle fournit une interface de programmation (API6) pour la communication avec les sous-systèmes Prelude et la génération d’alertes au format standard IDMEF. Elle automatise l’enregistrement et la retransmission des données en cas d’interruption d’un des composants du système.
Libprelude facilite également la mise en compatibilité de systèmes externes qui deviennent ainsi capables de communiquer avec les composants Prelude. Cette bibliothèque fournit aussi des fonctionnalités communes et utiles à toutes les sondes.
LibpreludeDB
La bibliothèque PreludeDB fournit une couche d'abstraction par rapport au type et au format de la base de données utilisée pour stocker les alertes IDMEF7. Elle permet aux développeurs d'utiliser la base de données Prelude IDMEF facilement et efficacement sans se soucier de SQL et d'accéder à la base de données indépendamment du type/format de cette dernière.
Prelude-LML
Cette sonde prend en charge la remontée d’alertes détectées localement sur l’hôte. Cette détection est basée sur l’application à des objets (fichiers de journalisation et/ou d’application) de règles construites autour d’expressions régulières compatibles Perl
(PCRE8).
Prelude-LML est comparable à la façon qu’utilise Snort pour analyser des paquets via des règles. Dans le cas de Prelude-LML ses règles essayent de correspondre des données dans les fichiers de logs au lieu des paquets réseau.
Prelude-LML a deux modes de fonctionnement principaux :
 Monitoring des fichiers de logs
 Réception upd des messages Sys log

6

Application Programming Interface

7

Intrusion Detection exchange format
Perl Compatible Regular Expression

8

19

Cette fonctionnalité fait de Prelude un outil extrêmement flexible et facile à mettre en œuvre dans n'importe quel réseau de production. Si un dispositif (machines distantes, routeurs, firewalls…) n'a pas la compatibilité natale avec Prelude, il peut être configuré pour enregistrer ses Logs vers un serveur Syslog que Prelude-LML pourra contrôler.
Voici une liste presque exhaustive des formats reconnus par cette sonde :
• Firewalls Checkpoint6
• Famille Cisco
• Serveur SMTP exim7
• Firewall grSecurity8
• IPChains (Linux principalement)
• IPFW (Familles *nix & Linux)
• Firewalls utilisant IPSO (Checkpoint Firewall-1 & Nokia)
• Netfilter / IPTables9
• Windows NT (via l’utilitaire NTSyslog)
• Psionic PortSentry (Cisco)10
• ProFTPd
• Serveur POP3 QPopper (Eudora)11
• Proxy HTTP Squid12
• SSHd
• vPOPMail
• Firewall Zyxel Zywall
• Equipements Zyxel (modems, routeurs, etc. . .)
Prelude-Correlator
Prelude-Correlator rend possible la corrélation multiflux grâce à un langage de programmation puissant permettant l'écriture de règles de corrélation. Tout type d'alertes pouvant être corrélée, l'analyse des événements devient plus simple, plus rapide et plus pointue. La mise en évidence des scénarii d'attaque par Prelude-Correlator nous permet de pointer de façon performante les événements de sécurité importants ayant lieu sur nos infrastructures.
Sa fonctionnalité est la suivante :

Identification rapide des événements de sécurité importants permettant de donner une priorité d'intervention et de hiérarchiser les actions qui en découlent

Corrélation d'alertes en provenance de sondes hétérogènes déployées sur l'ensemble de l'infrastructure




Analyse en temps réel des événements reçus par le Manager Prelude

20

Prelude-Correlator permet de corréler, en temps réel, les multiples événements reçus par Prelude. Plusieurs alertes isolées, issues de sondes multiples, peuvent ainsi déclencher une seule alerte de corrélation si les événements sont liés. L'alerte de corrélation apparait alors dans l'interface Prewikka et met en évidence les informations que nous aurions choisi de pointer grâce aux règles de corrélation.
La création de signature Prelude-Correlator est basée sur le puissant langage de programmation Python. Le moteur de corrélation intégré de Prelude est distribué avec des règles de corrélation pré-enregistrées mais il nous est possible de configurer n'importe quelle règle de corrélation répondant à nos besoins.
Le Mail Reporting Plugin
Le Mail Reporting Plugin envoie automatiquement des rapports d’événements par email à une liste de destinataires enregistrés. Le corps et le sujet de l'email généré peuvent être totalement configurés pour y faire apparaitre, par exemple, l'événement en entier ou seulement certaines parties.
Ce plugin permet aussi l'interrogation de la base de données afin de joindre aux événements entrants des événements anciens qui leur sont liés. En utilisant le Mail Reporting plugin en combinaison avec la fonctionnalité de filtrage du Manager Prelude, il est possible de générer des emails uniquement pour des événements correspondants à des critères spécifiques ou atteignant certains seuils.
Prelude-PFLogger
Prelude-PFlogger récupère les paquets journalisés par le firewall OpenBSD et envoie les alertes au Manager Prelude.
2.1.4 Architecture :
Distribuée
Le caractère distribué d'un IDS construit au-dessus de Prelude est un fait qu'il ne faut jamais perdre de vue lorsque l'on déploie des composants Prelude.
A l'inverse d'un autre produit issu du libre plus célèbre, Prelude est bien une suite de composants et non un logiciel monolithique.
Les composants Prelude - sondes et managers - ont été pensés et développés pour être autonomes (donc légers car dédiés à une tâche) et interactifs (les uns ne fonctionnent pas sans les autres). Ainsi les sondes - réseau comme local - n'effectuent que les opérations de surveillance et de génération des alertes. Les managers quant à eux prennent en charge la gestion des sondes et la journalisation des alertes. Dans certains cas, ils peuvent également ne prendre en charge que le routage des alertes vers d'autres managers
(relay). Enfin, ils peuvent être utilisés pour déclencher des actions de contre-mesure au niveau d'un sous-réseau particulier tout en assurant la remontée des alertes vers les contrôleurs de niveau supérieur.
21

Cela se traduit en pratique par la possibilité d'installer autant de sondes et de contrôleurs que souhaité ou nécessaire, afin d'assurer la redondance des composants et/ou de s'adapter à la charge et la complexité d'un réseau, tout en ayant l'assurance d'obtenir une journalisation centralisée dans un format homogène.
Sécurisée
Le "modèle de sécurité" de Prelude est un des points forts du produit.
Tous les composants sont construits au-dessus de la librairie libprelude qui peut être compilée avec le support SSL (utilisant les fonctions fournies par la suite openSSL).
Ce support permet deux choses :
- Une authentification "forte" des composants entre eux ;
- Le chiffrement des communications entre composants.
L'authentification des sondes par les managers est donc effectuée sur la base de certificats et le transfert des messages entre ces composants bénéficient du chiffrement.
Cela signifie qu'il est possible de :
- Déployer un IDS Prelude sur des sous-réseaux distants reliés entre eux par des canaux non sûrs (comme Internet) tout en conservant la possibilité de centraliser la journalisation des alertes ;
- Ne pas avoir à installer un LAN dédié à la détection d'intrusions sur les réseaux concernés par l'IDS.
Donc, pour être prise en compte par un manager, une sonde doit au préalable avoir été déclarée - enregistrée - auprès de celui-ci. Dans le cas de sondes et managers supportant
SSL, cela se traduit par la génération d'une clef privée sur la sonde et d'un certificat sur le manager qui la prendra en compte.
Fiable
Si pour une raison ou une autre une sonde n'arrive plus à envoyer ses alertes à un manager auprès duquel elle est enregistrée, ces dernières sont conservées localement jusqu'à rétablissement de la connexion avec un manager. Cette fonctionnalité est fournie par la librairie libprelude, brique de base de tout composant Prelude.
Extensible.
A tous les niveaux ou presque il est possible d'étendre les capacités des composants Prelude à l'aide de module additionnel (plugin).
Ces modules peuvent ainsi au :
- Niveau des sondes : assurer le support de nouveaux protocoles ou d'applications ;
- Niveau des managers : permettre un mode alternatif de journalisation.
Il est également possible d'étendre les capacités et fonctionnalités de l'IDS en intégrant d'autres produits (exemple : des sondes plus performantes, des programmes plus spécifiques, etc…) toujours grâce à la librairie libprelude.

22

Exemple d’architecture possible :
 Architecture simple :
Prelude est divisé en plusieurs composantes. Les capteurs sont responsables de la détection d'intrusion, et faire des rapports sur les événements d'une manière centralisée en utilisant une connexion TLS à un serveur ‘Prelude-manager '. Le serveur PreludeManager peut alors traiter les rapports des événements et les délivrer à un utilisateur d’un serveur données (base de données MySQL, base de données PostgreSQL, XML, tout format à condition qu'il y est un plugin).
La console Prelude peut alors être utilisée pour afficher les rapports d’événements.
Voici un exemple simple de la façon dont les différents composants Prelude interagissent:


Figure 5 : Architecture simple

 Architecture à relai:
Le relais est une fonction qui permet au programme de ‘Prelude-Manager’ de faire un
Frowarding des événements reçus à un autre programme de ‘Prelude-Manager’.
Dans l'exemple de la figure 6, «Branch A» de l'organisation a seulement l’accès aux événements générés par le capteur A, B et C . Toutefois, le «Security Center» peut voir les événements générés tant par ses propres capteurs (D, E et F), ainsi que les événements générés par les autres branches de l'organisation (comme A, B, C, etc.)

23

Figure 6 : Architecture à relai

 Architecture Relai-Inversé :
Sur certains réseaux, il peut parfois être difficile ou gênant d’organiser des autorisations réseau afin qu'un programme peut se connecter à un serveur hors d'une zone donnée
(par exemple, un pare-feu pourrait ne pas permettre aux machines de la DMZ9 de se connecter en dehors de leur propre réseau).
Dans ce cas précis, on peut configurer un ‘Prelude-Manager’ externe pour se connecter à un autre ‘Prelude-Manager’ interne situé à l'intérieur du réseau DMZ, et à lire les événements émis par elle.

Figure 7 : Architecture à relai inversé

9

Zone démilitarisée (Demilitarized Zone)

24

2.2 Format standard
Les deux principales propositions de standards allant dans le sens d’une uniformisation des échanges de messages liés à la sécurité sont le CIDF10 et l’IDMEF11.
2.2.1CIDF
Le CIDF, pour Common Intrusion Detection Framework a été une tentative du US governement’s Defense Advanced Research Project (DARPA) pour développer un langage
(Protocole & format de messages) d’échange entre IDS et manager pour leur utilisation interne en premier lieu. Cette proposition de standard a été jugée très lourde et peu utilisable par les développeurs de solutions IDS et n’a été que très rarement utilisée dans des applications concrètes. Toutefois, une partie du concept et des bons points de ce langage ont été réutilisés dans IDMEF.
2.2.2 IDMEF
Présentation
L’Internet Engineering Task Force (IETF) est l’organisme responsable du développement de nouveaux standards Internet. Cet organisme a formé un groupe de travail, l’Intrusion
Detection exchange format Working Group (IDWG12), à qui incombe maintenant la création d’un format d’échange commun pour les alertes provenant d’IDS.
Ce groupe de travail a proposé IDMEF, un format de description des alertes basé sur
XML, comme base d’échange entre les IDS et les managers ou tout autre équipement qui doit interagir avec ces derniers. Une grande attention a été portée aux besoins des applications qui analysent les alertes des IDS, afin qu’elles se voient fournir toutes les informations nécessaires à leur bon fonctionnement. Notons encore qu’IDMEF est totalement indépendant du protocole de communication et que sa construction basée sur XML le rend ”compatible” avec les futurs firewalls applicatifs intelligents XML.
Structure d’un message IDMEF
La structure des messages IDMEF est hiérarchique et peut s’apparenter à un modèle de classe en programmation orientée objet. La classe parente est IDMEF-Message et tous les messages IDMEF sont dérivés de cette dernière. Actuellement, il y a deux types (classes dérivées) de messages IDMEF : l’alerte (Alert) et le Heartbeat. Nous pouvons voir les relations entre les principaux composants dans la figure 8. Cette représentation est une version simplifiée du modèle complet, mais est suffisamment détaillée pour en comprendre le concept.

10

http://www.isi.edu/gost/cidf/

11

http://www.ietf.org/internet-drafts/draft-ietf-idwg-idmef-xml-10.txt

12

http://www.ietf.org/html.charters/idwg-charter.html

25

Il est encore important de noter que ce modèle de données ne précise pas comment une alerte doit être classifiée ou identifiée. Par exemple, un port-scan peut être identifié par un analyseur comme attaque unique contre de multiples cibles, alors qu’un autre y verra une attaque multiple depuis une source unique. Toutefois, dès qu’un analyseur a déterminé le type d’alerte qu’il souhaite envoyer, le modèle de données lui indique comment la formater.
Contenu d’un message IDMEF
Comme il existe un grand ”panorama” d’IDS (HIDS, NIDS, à détection basée sur les signatures ou heuristique). L’IDWG a fait grand travail afin qu’IDMEF puisse s’adapter à cette diversité, en focalisant les informations sur ”ce que l’IDS a détecté” plutôt que ”Comment il l’a détecté”.
La figure 8 nous montre la construction hiérarchique en classe du message IDMEF.

Figure 8 : Structure d'un message IDMEF

26

La signification et l’utilité de ces principales propriétés :
• La classe IDMEF-Message : Tous les messages IDMEF sont dérivés de cette classe.
C’est le niveau supérieur du modèle IDMEF et de sa DTD13 associée. Il y a actuellement deux types de messages IDMEF : l’alerte (Alert) et le Heartbeat.
• La classe Alert : Généralement, chaque fois qu’un analyseur détecte un événement, il envoie une alerte à son (ses) manager(s). Suivant le type d’analyseur, ce message peut correspondre à un événement unique ou à de multiples événements.Cette classe Alerte comporte aussi une propriété optionnelle ident, qui permet d’attribuer un identificateur à l’alerte.
• La classe Classification : Elle peut être instanciée de manière unique ou multiple.
Elle contient, si possible, un nom identifiant l’alerte d’après une liste standardisée (bugtraq5, cve6, etc. . .) ou un identifiant spécifique à l’implémentation, si ladite alerte n’est pas encore répertoriée. Cette propriété est intéressante, car elle permet à deux IDS n’utilisant pas le même algorithme de détection de ”rapporter” la même erreur à leur manager. • La classe Analyzer : Cette classe définit s’il s’agit d’un message d’alerte ou d’un heartbeat. Notons qu’il est impératif qu’une seule de ces classes ne soit instanciée dans un message d’alerte.
• La classe AdditionalData : Cette classe peut être vide ou contenir des informations qui n’ont pas leur place ailleurs dans le message. On peut aussi imaginer utiliser cette classe pour fournir un dump complet du trafic qui a provoqué l’alerte.
• La classe Heartbeat : Les analyseurs envoient périodiquement des messages heartbeat pour indiquer à leur manager qu’ils sont en fonction (up and running). L’absence de réception de ces messages indique que la connexion réseau est défectueuse ou que l’analyseur a un problème.
• La classe CreateTime : Une estampille temporelle y est placée, indiquant la date de création de l’alerte ou du heartbeat.
De par sa construction intelligente et sa gratuité d’utilisation, l’adoption d’IDMEF comme standard d’échange de messages semble incontournable. De plus, il permettrait à notre futur produit d’être compatible avec d’autres solutions.
2.3 Compatibilité
Prelude est un SIM interopérable avec tous les systèmes disponibles sur le marché. Quelle que soit notre configuration, inutile de remplacer nos équipements sécurité :
Prelude s’adapte à l’infrastructure et non l’inverse.

13

Document Type Definition. C’est un fichier annexe ou une définition intégrée à tout document XML, afin de définir sa structure et de valider son contenu.

27

Lorsqu’on installe Prelude, deux solutions s'offrent à nous :
 Renvoyer les logs des solutions vers Prelude
 Connecter directement les solutions compatibles nativement avec Prelude .

Figure 9 : Tableau de compatibilité de Prelude

28

Chapitre 3 : Sondes et sources d’informations 29

3.1 Qualité indispensable
Garantir la sécurité et l’intégrité des transactions
Un système de sécurité ne peut être considéré comme efficace s’il est lui-même vulnérable aux attaques et aux dénis de service. De plus, il est impératif de garantir l’authenticité et l’intégrité des messages reçus des différentes sondes. Les trois notions clés ici sont confidentialité, intégrité et authentification (CIA).
Le protocole de choix pour ce travail est SSL en version 2.0, pour Secure Sockets Layers, que l’on pourrait traduire par couche de sockets sécurisée. C’est un procédé de sécurisation des transactions effectuées via Internet mis au point par Netscape, en collaboration avec MasterCard, Bank of America, MCI et Silicon Graphics. Il repose sur un procédé de cryptographie par clef publique afin de garantir la sécurité de la transmission de données sur Internet ou sur un LAN. Le système SSL est indépendant du protocole utilisé, ce qui signifie qu’il peut aussi bien sécuriser des transactions faites sur le Web par le protocole HTTP que des connexions via le protocole FTP, POP ou autres. En effet, SSL agit telle une couche supplémentaire, permettant d’assurer la sécurité des données, située entre la couche application et la couche transport.(fig10).

Figure 10 : Modèle avec la couche SSH

Format des messages
Vu que le choix s’est porté sur une plateforme de base Prelude et aussi un choix d’adopter un format de message standard, compatible avec de futures applications, il est clair que l’utilisation d’IDMEF est incontournable. On fera appel aux fonctions d’authentification et de cryptage fournies par LibPrelude pour garantir la sécurité des échanges. Les IDS
Les IDS14 est un mécanisme destiné à repérer des activités anormales ou suspectes sur la cible analysée (un réseau ou un hôte). Il permet ainsi d'avoir une connaissance sur les tentatives réussies comme échouées des intrusions.

14

Intrusion Detection System/système de détection d'intrusion

30

Il existe trois grandes familles distinctes d’IDS :





Les NIDS (Network Based Intrusion Detection System), qui surveillent l'état de la sécurité au niveau du réseau.
Les HIDS (HostBased Intrusion Detection System), qui surveillent l'état de la sécurité au niveau des hôtes.
Les HbIDS ( IDS hybrides), qui utilisent les NIDS et HIDS pour avoir des alertes plus pertinentes.
NIDS

Figure 11 : Fonctionnement des NIDS

Un NIDS se découpe en trois grandes parties : La capture, les signatures et les alertes.


Capture :

La capture sert à la récupération de trafic réseau. En général cela se fait en temps réel, bien que certains NIDS permettent l'analyse de trafic capturé précédemment.
La plupart des NIDS utilisent la bibliothèque standard de capture de paquet libpcap. La bibliothèque de capture de paquets Packet Capture Library est portée sur quasiment toutes les plateformes, ce qui permet en général aux IDS réseau de suivre.
Le fonctionnement de la capture d'un NIDS est donc en général fortement lié à cette libpcap. Son mode de fonctionnement est de copier (sous Linux) tout paquet arrivant au niveau de la couche liaison de données du système d'exploitation. Une fois ce paquet copié, il lui est appliqué un filtre BPF (Berkley Packet Filter), correspondant à l'affinage de ce que l'IDS cherche à récupérer comme information.

31



Signatures

Les bibliothèques de signatures (approche par scénario) rendent la démarche d'analyse similaire à celle des antivirus quand ceux-ci s'appuient sur des signatures d'attaques.
Ainsi, le NIDS est efficace s'il connaît l'attaque, mais inefficace dans le cas contraire. Les outils commerciaux ou libres ont évolué pour proposer une personnalisation de la signature afin de faire face à des attaques dont on ne connaît qu'une partie des éléments. Les outils à base de signatures requièrent des mises à jour très régulières.
Les NIDS ont pour avantage d'être des systèmes temps réel et ont la possibilité de découvrir des attaques ciblant plusieurs machines à la fois. Leurs inconvénients sont le taux élevé de faux positifs qu'ils génèrent, le fait que les signatures aient toujours du retard sur les attaques de type 0day et qu'ils peuvent être la cible d'une attaque.


Alertes

Les alertes sont généralement stockées dans le syslog. Cependant il existe une norme qui permet d'en formaliser le contenu, afin de permettre à différents éléments de sécurité d'interopérer. Ce format s'appelle IDMEF dans la RFC4765. IDMEF est popularisé par le projet Prelude, qui offre une infrastructure permettant aux IDS de ne pas avoir à s'occuper de l'envoi des alertes. Cela permet aux IDS de n'avoir qu'à décrire les informations qu'il connaît et Prelude se charge de les stocker pour permettre une visualisation compréhensible.


Pattern matching15

Le pattern matching est ce qui permet à un NIDS de trouver le plus rapidement possible les informations dans un paquet réseau.
Dans le cas d'un NIDS, le pattern matching est souvent le nœud d'étranglement. Pouvant consommer plus de quatre-vingt pourcent de temps de calcul.


Analyse

Le moteur d'analyse met ces éléments de relation en employant plusieurs techniques : la refragmentation, la dissection protocolaire ou encore l'analyse comportementale.


La refragmentation

Les paquets dépassant une certaine taille (qui en général est de 1 500 octets) sont fragmentés. La fragmentation de l'en-tête de la couche transport étant aussi possible, cela

15

La recherche de motif

32

rendait les NIDS vulnérables aux attaques de Stick et de Snot16 car les paquets fragmentés n'étaient pas analysés.
Les NIDS ont le devoir de refragmenter les paquets avant analyse, afin de ne pas manquer une attaque. Il s'agit d'une opération relativement complexe, étant donné que chaque hôte de destination ne refragmente pas de la même façon, selon le système d'exploitation sur lequel l'attaque est visée. Il s'agit encore d'une technique d'évasion utilisable aujourd'hui car les NIDS ne sont pas forcément configurés correctement pour gérer un cas précis.


La dissection protocolaire

La dissection permet de comprendre un protocole donné, de le décoder pour l'analyser.
Il s'agit de la partie la plus sensible des NIDS car c'est elle qui est le plus grand vecteur d'attaques. Cependant, la dissection est essentielle sur certains protocoles, comme RPC, afin de pouvoir détecter des attaques qui seraient invisibles sans cette indispensable dissection.
Cette étape permet aussi de récupérer un champ précis d'un protocole applicatif ce qui peut simplifier l'écriture de signatures.
HIDS
Les HIDS, pour Host based IDS, signifiant "Système de détection d'intrusion machine" sont des IDS dédiés à un matériel ou système d'exploitation. Contrairement a un NIDS, le
HIDS récupère les informations qui lui sont données par le matériel ou le système d'exploitation. Il y a pour cela plusieurs approches : signatures, comportement (statistiques) ou délimitation du périmètre avec un système d'ACL. Un HIDS se comporte comme un daemon ou un service standard sur un système hôte qui détecte une activité suspecte en s’appuyant sur une norme. Si les activités s’éloignent de la norme, une alerte est générée. La machine peut être surveillée sur plusieurs points :


Activité de la machine : nombre et listes de processus ainsi que d'utilisateurs, ressources consommées, ...



Activité de l'utilisateur : horaires et durée des connexions, commandes utilisées, messages envoyés, programmes activés, dépassement du périmètre défini...



Activité malicieuse d'un ver, virus ou cheval de Troie

16

Techniques utilisées pour tromper le moteur de l’IDS en fragmentant l’attaque dans plusieurs paquets, ainsi la reconstruction se fait après qu’ils aient traversés l’IDS

33

Le HIDS a pour avantage de n'avoir que peu de faux positifs, permettant d'avoir des alertes pertinentes. Quant à ses inconvénients il faut configurer un HIDS par poste et cela demande une configuration de chaque système.

IDS hybride

Figure 12 : Fonctionnement d'un HybIDS

Les IDS hybrides sont basés sur une architecture distribuée, où chaque composant unifie son format d'envoi d'alerte (typiquement IDMEF) permettant à des composants divers de communiquer et d'extraire des alertes plus pertinentes.
Les avantages des IDS hybrides sont multiples :




Moins de faux positifs
Meilleure corrélation
Possibilité de réaction sur les analyseurs
Les Honey Pot

Un Honeypot (littéralement pot de miel) c’ est une méthode utilisée dans le domaine de la détection d'intrusion se basant un serveur ou programme volontairement vulnérable, destiné à attirer et à piéger les pirates. Situé devant ou derrière un pare-feu, cet appât laisse croire aux intrus qu'ils se trouvent sur une machine de production « normale » alors qu'ils évoluent sur un leurre. On aura alors tout loisir d'observer leur manière de faire et d'enregistrer leurs méthodes d'attaques.
Les honeypots sont des systèmes de sécurité qui n’ont aucune valeur de production. Dès lors, aucun utilisateur ni aucune autre ressource ne devrait en principe avoir à communiquer avec lui. L’activité ou le trafic attendu sur le honeypot étant nul à la base, on en déduit alors que toute activité enregistrée par cette ressource est suspecte par nature.
Ainsi, tout trafic, tout flux de données envoyé à un honeypot est probablement un test,
34

un scan ou une attaque. Tout trafic initié par un honeypot doit être interprété comme une probable compromission du système et signifie que l’attaquant est en train d’effectuer des connexions par rebond.
Généralement, un honeypot se comporte telle une boîte noire, enregistrant passivement toute l’activité et tout le trafic qui passe par lui.
Il faut savoir que le trafic capté par les honeypots est à la fois réduit (effet microscope) et suspect par nature. Les fichiers des enregistrements d’évènements (fichiers de logs) sont donc peu volumineux et il est plus aisé d’identifier une activité malveillante. En fonction de la nature des données collectées, on pourra ainsi retracer précisément les flux échangés:






provenance, activité, date, durée, volume ... et parfois même, le contenu des données échangées (keystrokes, messages IRC par exemple).

Il existe différentes catégories de honeypot selon le niveau d’interaction que l’on souhaite offrir aux attaquants :
– Les honeypots de très faible interaction se contentent de simuler certains services notoirement connus tels que l’activité apparente d’un serveur web, d’un serveur de messagerie, d’un serveur de transfert de fichier, etc. L’objectif de ce type de honeypot est par exemple d’identifier les adresses sources de pirates et aussi et surtout les premières commandes de base. Ce type de honeypot n’apporte guère d’information précise sur les procédés et les méthodes d’attaque.
– Les honeypots de moyenne interactivité fournissent un ensemble de services élaborés à l’attaquant. Ce type de honeypot est souvent déployé sur un poste hôte.
– Les honeypots de très grande interactivité fournissent des systèmes d’exploitation ou un réseau tout entier à l’attaquant. Ce dernier type de honeypot est souvent dédié à la recherche comportementale et psychologique pour le profilage des pirates. Les Firewall
Un pare-feu/firewall, est un système logiciel, reposant parfois sur un matériel réseau dédié (appliance) , constituant un intermédiaire entre le réseau local (ou la machine locale) et un ou plusieurs réseaux externes, qui a pour fonction de faire respecter la politique de sécurité du réseau, celle-ci définissant quels sont les types de communication autorisés ou interdits . Pour cela, le pare-feu analyse les informations contenues dans les couches 3, 4 et 7 du modèle OSI et contrôle ainsi les informations en transit.
C’est est un système permettant de protéger un ordinateur ou un réseau d'ordinateurs des intrusions provenant d'un réseau tiers (notamment internet), il s'agit ainsi

35

d'une passerelle filtrante comportant au minimum les interfaces réseau ; une interface pour le réseau à protéger (réseau interne) et une interface pour le réseau externe.

Figure 13 : Fonctionnement d'un pare-feu

Il a pour principale tâche de contrôler le trafic entre différentes zones de confiance, en filtrant les flux de données qui y transitent. Généralement, les zones de confiance incluent Internet (une zone dont la confiance est nulle), et au moins un réseau interne (une zone dont la confiance est plus importante.)
Le but ultime est de fournir une connectivité contrôlée et maîtrisée entre des zones de différents niveaux de confiance, grâce à l'application de la politique de sécurité et d'un modèle de connexion basé sur le principe du moindre privilège.
Le filtrage se fait selon divers critères. Les plus courants sont :
– l'origine ou la destination des paquets (adresse IP, ports TCP ou UDP, interface réseau, etc.) ;
– les options contenues dans les données (fragmentation, validité, etc.) ;
– les données elles-mêmes (taille, correspondance à un motif, etc.) ;
– les utilisateurs pour les plus récents.
Un pare-feu fait souvent office de routeur et permet ainsi d'isoler le réseau en plusieurs zones de sécurité appelées zones démilitarisées ou DMZ. Ces zones sont séparées suivant le niveau de confiance qu'on leur porte.

36

Un système pare-feu contient un ensemble de règles prédéfinies permettant :
– D'autoriser la connexion (allow) ;
– De bloquer la connexion (deny) ;
– De rejeter la demande de connexion sans avertir l'émetteur (drop).
L'ensemble de ces règles permet de mettre en œuvre une méthode de filtrage dépendant de la politique de sécurité adoptée par l'entité. On distingue habituellement deux types de politiques de sécurité permettant :
– soit d'autoriser uniquement les communications ayant été explicitement autorisées
– soit d'empêcher les échanges qui ont été explicitement interdits.
Principales techniques de détection


Le filtrage de paquets

Les premiers pare-feux étaient les routeurs eux-mêmes. Ceux-ci s’appuyaient donc sur du filtrage de paquets IP, à l’aide d’une analyse des entêtes des datagrammes en transit.
Les pare-feux peuvent effectuer du filtrage, sur la couche 3 du modèle OSI, basé sur les adresses IP (source ou destination), on parle de filtrage par adresse (address filtering), ou peuvent effectuer du filtrage sur les protocoles de transmission, on parle alors de filtrage par protocole (protocol filtering). Enfin le pare-feu peut être configuré pour bloquer tout le trafic arrivant sur certains ports afin d’empêcher des postes extérieurs d’accéder à des services non indispensables de l’extérieur. Un firewall possédant plusieurs interfaces, dont une DMZ, peut affiner ces règles de blocage pour les réorienter vers l’interface réseau adéquate (ex. : le port 80 vers le serveur WEB de la DMZ).


Le filtrage dynamique

Il existe des services comme le FTP qui utilisent un port statique pour la connexion, puis des ports dynamiques (au-dessus des ports réservés pour les services standards <1024) pendant les transferts.
Il existe donc un système de filtrage dynamique de paquets (stateful inspection) basé sur l'inspection des couches 3 et 4 du modèle OSI. Il permet d'effectuer un suivi des transactions entre le client et le serveur et donc d'assurer la bonne circulation des données de la session en cours. Un paquet qui n’appartiendrait pas à une session encore active sera soumis au filtrage prédéfini.
Le filtrage dynamique est plus performant que le filtrage de paquets standard mais ne protège pas contre les failles applicatives (failles liées aux logiciels).

37



Le filtrage applicatif

Le dernier type de filtrage utilisé est au niveau applicatif (couche 7 du modèle OSI). Il permet de contrôler les communications au niveau des applications (analyse application par application). Ce filtrage nécessite une connaissance parfaite de la structure des données échangées par les applications.
Un firewall effectuant un filtrage applicatif est appelé passerelle applicative car il permet de relayer des informations entre deux réseaux en effectuant un filtrage fin au niveau du contenu des paquets échangés. Ce type de filtrage est très performant et assure une bonne protection du réseau mais nécessite une grande puissance de calcul au niveau du firewall. Sur des réseaux de taille importante, l’utilisation d’un tel firewall est difficile à mettre en place et ralentit les communications.
Certaines applications propriétaires ou non standards ne permettent pas la mise en place de ce type de firewalls.
Les pare-feu récents embarquent de plus en plus de fonctionnalités, parmi lesquelles on peut citer :

















17

Filtrage sur adresses IP/Protocole,
Inspection stateful et applicative,
Intelligence artificielle pour détecter le trafic anormal,
Filtrage applicatif
HTTP (restriction des URL accessibles),
Courriel (Anti-pourriel)
Logiciel antivirus, anti-logiciel malveillant
NAT17,
Tunnels IPsec, PPTP, L2TP,
Identification des connexions,
Serveurs de protocoles de connexion (Telnet, SSH), de protocoles de transfert de fichier, Clients de protocoles de transfert de fichier (TFTP),
Serveur Web pour offrir une interface de configuration agréable,
Serveur mandataire ( proxy ),
Système de détection d'intrusion ( IDS )
Système de prévention d'intrusion ( IPS )

Traduction d'adresse réseau/ Network Address Translation

38

La corrélation
SEC
SEC (Simple Event Correlator) est un programme écrit en PERL qui permet de surveiller des fichiers de logs pour y détecter des motifs. Il est aussi utilisé pour corréler certains évènements afin de diminuer le nombre de fausses alertes.
SEC est un logiciel multiplateforme de corrélations d'évènements Open Source ,il accepte les entrées d'un fichier, d'un tube nommé (pipe) ou de l'entrée standard et peut donc être employer comme couche de corrélation par tous programmes écrivant leurs sorties d'évènements dans un flux de fichier.
La configuration de SEC est stockée comme règles dans des fichiers texte, chaque règle décrivant l'évènement sur lequel réagir, l'action à mener. Les expressions régulières peuvent être utilisées pour définir les conditions de l'évènement. SEC peut lui-même produire des évènements en sortie en exécutant des scripts shell ou des programmes externes (snmptrap, courrier électronique, filtrage ip) et/ou en écrivant des messages vers des tubes ou des fichiers.
SEC est utilisé dans des domaines aussi variés que la gestion des réseaux, le monitoring système, la sécurité des données, la détection d'intrusions, la surveillance et l'analyse de fichiers journaux, etc. SEC est utilisé ou intégré dans des produits aussi différents que HP
OpenView NNM, CiscoWorks, BMC Patrol, Nagios, SNMPTT, Snort IDS, Prelude IDS, etc.
Les types de règles de corrélation suivants sont implémentées dans SEC :
 Single : Détection d’un motif et exécution d’action parmi celles supportées par SEC.
 SingleWithScript : Détection d’un motif et exécution d’action parmi celle supportée par SEC en fonction du code de sortie d'un script ou programme externe.
 SingleWithSuppress : Détection d’un motif et exécution d’action parmi celles supportées par SEC, mais ignore les motifs détectés suivants pendant « t » secondes suivantes.
 Pair : Détection d’un motif et exécution d’action parmi celles supportées par SEC, ignore les motifs détectés suivants jusqu'à la détection d'un motif différent.
Exécute une action à l'arrivée du deuxième motif.
 PairWithWindow : Détection d’un motif et attente pendant « t » secondes d’un motif différent. Si ce deuxième motif n'est pas détecté au bout de ce temps, exécution d’action. Si ce deuxième motif est détecté dans le laps de temps, exécute une autre action.  SingleWithThreshold : Calcul du nombre de motifs semblables pendant « t
» secondes et si un certain seuil est dépassé, exécution d’action et ignore les nouveaux motifs pendant le reste du temps. La fenêtre de temps précisée avec « t » est coulissante.
 SingleWith2Thresholds : La même règle que précédemment combiné à deux fenêtres de temps.
 Suppress : Suppression de motif détecté.
 Calendar : Exécution d’action à une certaine date et heure.

39

Prelude-IDS et Snort
Projet
Ce sont tous les deux des outils libres. Parmi les avantages de Snort sont sa popularité et sa disponibilité sur de nombreuses plateformes. Prelude-IDS se restreint sur les plateformes POSIX18 alors qu’on peut retrouver Snort sur Windows. A cela s’ajoute l’importance de la base de données des signatures d’attaque de Snort, pour expliquer sa plus grande popularité. Mais Prelude-IDS est de plus en plus connu dans le monde des professionnels de la sécurité.
Une différence importante cependant, au désavantage de Snort est sa nature , il est NIDS pur alors que Prelude-IDS intègre des fonctionnalités NIDS et HIDS.
Moteur d’analyse et banque de signatures
Les deux font une analyse par recherche de similitudes avec un scénario préalablement définis. Le mode de fonctionnement est alors similaire. Autant pour Prelude-IDS que pour Snort, les solutions sont stables. Notons que même en intégrant les alertes de
Snort, Prelude-IDS relève une quantité plus importante d’alertes. Prelude-NIDS archive aussi les payloads.
Prelude-IDS a l’avantage d’être très modulaire de par son architecture client-serveur. Un manager peut gérer plusieurs sondes, et une sonde peut envoyer ses alertes à plusieurs managers. La remontée d’alertes
En utilisant ces outils, on se rend compte du fait que Prelude-IDS remonte un nombre plus important d’alertes que Snort. Là où Snort remonte 30 alertes de 2 types différents,
Prelude-IDS remonte parfois 2000 alertes de 3 types différents. Prelude à la capacité de détection d’un plus grand nombre d’attaque. Cela est dû à l’utilisation des mêmes signatures que Snort en plus des siennes.
Intégration d’outils externes
La grande force de Prelude-IDS est de pouvoir intégrer les fonctionnalités d’autres outils de sécurité de référence. On peut, par exemple, utiliser Honeyd comme une sonde, envoyer les résultats vers le manager qui les intègrera ensuite dans la base de donées.
La banque de scénario de Snort peut aussi être récupérée par Prelude-NIDS et ajoutée aux règles de Prelude-IDS. Ainsi, le nombre important de signatures reconnues par Snort
(et qui participe à sa popularité) bénéficie à Prelude-IDS.

18

Portable Operating System for Computer Environment. C'est une série de standards IEEE pour Unix

40

3.2 Intégration de sources d’information externes
Firewall
*BSD Packet Filter
Packet Filter (que nous appellerons désormais PF) est le système utilisé par OpenBSD pour filtrer le trafic TCP/IP et effectuer des opérations de Traduction d'Adresses IP
("NAT"). PF est aussi capable de normaliser, de conditionner le trafic TCP/IP, et de fournir des services de contrôle de bande passante et gestion des priorités des paquets. PF fait partie du noyau GENERIC d'OpenBSD depuis la version 3.0. Les précédentes versions d'OpenBSD utilisaient un ensemble logiciel pare- feu/NAT différent qui n'est plus supporté.

PFLogger est un composant utilisé pour rassembler les Logs du firewall PF d'OpenBSD.
Paquet Filter (PF) est un système de filtrage pour le trafic TCP/IP d'OpenBSD et aussi la
Traduction d'Adresse de Réseau NAT. Quand PFlogger est installé le plugin PreludePFlogger écoute les paquets journalisés et envoie les alertes à Prelude-Manager.
Firewall Personnel
Là encore, l’incorporation de différents firewalls personnels est très facilitée grâce à la structure fournie par Prelude. Ainsi, n’importe quel applicatif ou matériel de filtrage utilisant la journalisation NT, Syslog ou des fichiers locaux pour inscrire ses alertes est compatible avec Prelude. La seule limitation est l’existence d’une expression régulière
Perl dans le fichier de configuration de Prelude-LML qui permet à ce dernier de parser correctement les entrées. Dans la négative, il est toujours possible d’y ajouter ses propres expressions.
IDS :
Snort
SNORT est un NIDS (Network Intrusion Detection System), une création de Martin
Roesh, cette solution s’est imposée dans le marché pour être parmi les IDS les plus utilisés, possédant aussi une communauté importante contribuant à son succès. Actuellement SNORT appartient à SourceFire.
SNORT est capable d’effectuer en temps réel une analyse de trafic et de logger les paquets sur un réseau IP, aussi qu’une analyse protocolaire et le pattern matching de contenu. Son fonctionnement en ligne de commande le laisse riche en son utilisation avec de nombreuse option en main. Les fonctionnalités de SNORT permettent de faire un ‘SNIFFING’ de réseau, effectuant une journalisation ainsi donc pour détecter d’éventuels intrusion. Son moteur de détection utilise une architecture modulaire de plug-in, il a aussi une grande capacité modulaire d’alertes en temps réel, incorporant des mécanismes
41

d’alertes pour SYSLog, des fichiers spécifié pour l’utilisateur , une socket UNIX, ou des messages WINPOPUP à des clients WINDOWS en utilisant smbClient de SAMBA. Sans oublier qu’il peut faire de la journalisation sous différentes format, un format binaire tcpdump ou aussi le format ASCII décodé de SNORT vers un ensemble hiérarchique de réponse qui sont nommés d’après l’adresse IP du système « étranger » .
SNORT utilise un langage de règle flexible lui permettant de soit collecter ou de laisser passer le trafic réseau. Il peut être considérer comme NIPS19 via SNORT-Inline , interdisant ainsi tout trafic provenant de l’ adresse IP de l’attaquant ou bien toute une classe d’adresse IP.

Bien que l’utilisation de Snort en parallèle avec Prelude-NIDS soit redondante (ils sont issus de sources très communes et emploient une base de signatures identique), il suffit de patcher les sources de Snort à l’aide des correctifs mis à disposition sur le site de Prelude-IDS pour que ce dernier fasse partie intégrante de la plateforme.
OSSEC
Ossec (http://www.ossec.net) est une application de détection d’intrusion, et plus précisément un HIDS (Host Intrusion Detection System). Il permet de surveiller l’intégrité des fichiers systèmes, aussi bien sur des postes Linux que Windows.
De plus, Ossec détecte également des attaques de pirates comme les rootkits, les scans de ports, et analyse les logs du système, des applications et des services. Le logiciel propose également un système de réponses actives, c’est-à-dire d’actions à réaliser en cas d’attaque, comme par exemple changer les paramètres d’un parefeu. Tout comme Snort, il dispose de nombreuses règles lui offrant un large panel de détection d’attaques, de problèmes sur le poste sur lequel il est installé.
Ossec peut également fonctionner selon le modèle client/serveur, avec un serveur dédié
Ossec, et sur tous les postes clients (serveurs) à surveiller une installation du logiciel client, qui est alors chargé d’envoyer les évènements, les alertes au serveur.
Ossec fonctionne essentiellement sur Linux, mais il peut surveiller également des postes
Windows grâce à une application cliente spécialement développée pour, mais pour la version serveur, seul un système d’exploitation Linux est supporté.

19

Network Intrusion Prevention System

42

Honey Pot :
HoneyD
HoneyD est un projet pot de miel Open Source sous licence GNU GPL développer par
Niles Provos ingénieur à Google. C’est un « Deamon » permettant de déployer des machines virtuelles sur un réseau utilisant des adresses IP non attribuées sur le réseau, ainsi donc pour détecter toute activité frauduleuse étant donné que personne n’est sensé s’y connecté voulant dire ainsi que toute tentative de connexion à une adresse IP définit
« virtuellement » peut être interpréter comme non autorisée et suspecte. Son but est aussi de détecter des attaques que de découvrir de nouvelles attaques. Toutes données entrantes et sortantes de ce Honey Pot20 est en vue d’être analyser.
HoneyD regroupe deux modes de fonctionnement distincts :
- Capable de simuler, sur un réseau, la présence de machines de tous types (jusqu’à
65536 machines à la fois ; PC et équipements de routages). Ces hôtes peuvent être configurés pour qu'ils paraissent fonctionner sous certains systèmes d'exploitations, et ce grâce à des Template ; afin d'accroitre l'effet de réalité, ces machines peuvent également virtuellement faire tourner certains services. Ceux-ci ne sont en fait que des scripts (développés en perl, python, ou encore en shell-script) qui simulent leur fonctionnement.
- Capable de simuler un réseau entier. Créant alors un "honeynet", il est possible de configurer ce que l'on appellera des "routing topologies", véritables interconnexions virtuelles de routeurs, permettant d'obtenir de faux réseaux d'une complexité des plus élevées. HoneyD peut être intégré dans l’architecture Prelude-IDS en tant que sonde réseau et ainsi on peut disposer d’un ”Pot de miel” afin d’obtenir de nouvelles informations sur ceux qui attaquent le réseau. Les alertes sont visibles à partir du frontend de PreludeIDS.
Pour cela, il suffit d’appliquer le plugin Prelude-lml sur la sonde HoneyD pourra être manipulée comme n’importe quelle autre sonde Prelude-IDS. Tout cela est expliqué en détail dans le chapitre à venir.

20

Pot de miel

43

Chapitre 4 : Etude et realisation de la maquette de test

44

Pour des raisons de clarté, on a séparé la partie technique (fonctionnement interne de la chose) de la partie utilisation (celle visible pour l’utilisateur en final).
 Partie technique
Dans cette section, nous allons énumérer tous les points techniques que devra respecter notre application. Cette liste nous permettra de faire un choix éclairé sur l’architecture à adopter :
 Architecture client-serveur.

La partie serveur tournera sur une plateforme Linux. Ce choix est obligatoire étant donné que nous avons utilisé une maquette de communication basé sur la solution Prelude et que, pour des raisons de sécurité, de disponibilité et de rapidité, le manager Prelude se trouve sur la même machine physique que le SGBD.

”Support” de l’authentification et du cryptage des communications entre client(s) et serveur ; chose qui indispensable et disponible au niveau de notre solution choisie .
 Partie utilisation
Cette partie recense les concepts obligatoires dont doit faire preuve Prelude, ceci en faisant abstraction à :

Le frontend doit offrir une prise en main simplifiée et être conviviale pour les utilisateurs.

Le fonctionnement analytique interne ne doit présenter que les événements sécuritaires ou les comportements qui méritent un réel suivi (filtrage).
 Un ‘real time ‘ surveillance via un serveur NTP .
4.1 Architecture
Afin de respecter les contraintes de séparation du traitement des données de la présentation, on a opté pour le modèle 3 tiers. Ce choix apporte son lot d’avantages :

Indépendance entre la partie traitant les informations (serveur) de celle les présentant (client). Etant donné que tous les traitements s’effectuent dès lors sur le serveur, la rapidité globale de la solution ne dépend plus de la puissance de calcul ou du traitement du client.

Stabilité et sécurité assurées. En effet, en installant la partie serveur en un endroit unique (DMZ privé), et aussi de préférence sur la même machine physique que la source des informations (la base de données) ; ainsi donc il n’y aura pas une surcharge de bande passante et il devient facile de gérer les accès et d’effectuer d’éventuelles mises à jour sur le logiciel.

45

4.2 Fonctionnalités
On va maintenant reprendre les points citer précédemment afin détailler la liste des fonctionnalités qui peuvent ou vont être implantées dans notre maquette de test afin de pouvoir identifier les réelles menaces sécuritaires de la masse d’alertes stockées dans la base de données.
Le but principal du projet repose sur le déploiement d’une solution SIEM qui fera la centralisation et la corrélation en premier degré, mais afin de pouvoir voir les résultats et l’efficacité de la solution, passer par une maquette de test est indispensable.
La maquette de teste s’est faite via une virtualisation sur VMware Workstation 7 reposant sur la ‘team’ afin de simuler toute une architecture de production pour cette solution.
Le résultat attendu repose en premier lieu sur la compatibilité et l’adaptabilité, d’où vient mon choix des différentes solutions ainsi que la diversification au niveau des OS.
4.3 Outils et sondes utilisées
Packet Filter
Le choix de ce firewall était plutôt simple reposant sur la simplicité des règles par rapport aux autres firewalls open source, et aussi sur la sécurité disponible au niveau de
FreeBSD et ses performances fortement prouvée.
HoneyD
L’atout majeur d’un honeyPot est la leurre qu’il fait pour les attaquants, le choix de HoneyD , un honeyPot à faible interaction ,c’est pour qu’il n’y aura pas un contrôle de la machine et d’en faire un rebond sur le réseau étant donnée qu’un honeyPot c’est une machine vulnérable intentionnellement . Son placement dans le LAN est juste pour avoir une sonde d’information de plus simulant tout un réseau factice composé de poste Windows et d’imprimantes au cas d’une intrusion ou une brèche au niveau du Firewall.
Ossec
Pour s’assurer le bon fonctionnement des postes informatiques à surveiller, l’installation d’un logiciel comme Ossec, un HIDS, est très utile. En effet, Ossec va nous permettre d’avoir le contrôle sur notre DMZ publique , afin d’assurer tout d’abord l’intégrité des fichiers critique au niveau du serveur ainsi que tout action frauduleuse au niveau ce serveur ,pour enfin nous en générer des alertes.

46

Snort
On a opter pour l’installation de SNORT, un NIDS permettant le contrôle sur le LAN afin de détecter le trafic suspicieux, comme par exemple le scan de ports, les rootkits, les attaques brute force, mais bien sûr selon des règles bien définies pour la situation .Ainsi donc tout trafic suspect capté est envoyé au manager pour en résulter une alerte. On s’est basé sur des règles personnelle crée spécifiquement pour la maquette de teste et les intrusions subites.
Prelude-Manager
Dans l’optique de pouvoir superviser l’ensemble des évènements générés par ces applicatifs, il faut pouvoir les centraliser, rendant de cette manière l’administration et la visualisation des alertes plus rapides. C’est ce que permet la solution Prelude, un IDS, qui utilise des applications tels qu’Ossec et Snort et autre multitude de nœud comme des sondes. Ainsi, après avoir intégré ces applications à Prelude-Manager, leurs alertes sont transmises et donc centralisés au sein d’un seul logiciel. De plus, cette solution permet de normaliser toutes les alertes au format IDMEF et les stocke dans la base de données.
Prelude-LML
Cette sonde et aussi un plugin de la solution Prelude , est un atout clé pour les sondes qui ne sont pas nativement compatible avec Prelude. Ainsi donc une configuration au niveau de ce module pour aider à la remonté des alertes au niveau de notre manager.
La corrélation
Prelude-Correlator
Afin de corréler des alertes, Prelude peut intégrer également un corrélateur, à savoir
Prelude-Correlator, un module ou plugin de l’application, donc parfaitement et nativement compatible.
Ce dernier permet ainsi de relier certaines alertes entre elles, spécifiques à une attaque par exemple, selon des règles de corrélation définies. Il intercepte alors les alertes et les corrèle (ou pas), avant de les retransmettre au Prelude.
SEC
Cette solution de corrélation sera integré avec SNORT afin d’avoir une corrélation local au niveau de notre NIDS et assurer une meilleur corrélation dans Prelude .
Ce logiciel de corrélation permet de définir un scénario de corrélation d’événements extraits de fichiers syslog de sortie de SNORT. Dans un premier temps, l’idée de base est d’avoir un IPS au niveau de notre NIDS, mais dû à des problèmes d’installation et de compatibilité. Mais grâce à l’étude de l’association de SEC avec notre NIDS, il nous a été possible d’entrevoir les capacités d’analyse qu’offre cet outil. Son utilisation pourrait jouer le rôle
47

d’un IPS intelligent, reposant sur la partie de corrélation qui en résulte une action offrant ainsi un système d’alerte rapide en cas de gros problèmes.
NTP
Le protocole NTP 21 permet la synchronisation des horloges systèmes des machines. Son fonctionnement s’appuie sur une hiérarchie d’horloges synchronisées. Il est donc indispensable de lui indiquer un serveur sur lequel il pourra s’appuyer ou bien juste d’une horloge en local qui nous servira de référence. Ensuite, chaque station synchronisée à l’aide de NTP pourrait jouer le rôle de serveur pour d’autres stations en demande de synchronisation. NTP nous permettra d’obtenir un timestamp synchronisée de toutes les alertes présentes dans la base de données de Prelude Manager. Il est alors indispensable d’installer un applicatif s’occupant de la gestion de la synchronisation de l’heure sur toutes les machines générant des alertes.
L’utilité majeur de ce serveur ou bien juste de la synchronisation des horloges est en premier degré le real time des alertes, afin d’avoir le temps d’intervenir ou de changer notre politique de sécurité.
Prewikka
ET enfin pour la visualisation des évènements stockés dans la base de données, nous allons intégrer dans Prelude-Manager son interface officiel, qui affichera en détail les alertes reçues par le corrélateur et les diverses sondes et nœuds réseaux. Cette interface sera dans la même machine comme cité précédemment que la base de données.

4.4 Stockage des informations dans une BD
Le manager Prelude dispose d’un plugin de sortie LibPreludeDB permettant de stocker les alertes dans une base de données MySQL.

4.5 Schéma de la structure de base adoptée
Le schéma suivant (fig.14) représente bien la configuration proposé pour maquette de test de la plateforme SIEM . Il est important de noter que le serveur MySQL se trouve sur la même machine physique que le manager principal pour des raisons évidentes de sécurité. 21

Network Time Protocol

48

Figure 14 : Maquette de teste proposée

4.5 Enregistrement des sondes
4.5.1 La déclaration
Pour qu’un agent puisse se connecter et communiquer avec Prelude-Manager, il doit être enregistré. L'enregistrement implique des étapes à suivre :
 Allocation d'une identité unique pour la sonde
 La Création de répertoire à être utilisé par la sonde (cas de Failover)

49

 Déclaration à Prelude-Manager d’obtenir un certificat X509 signé qui permettra la communication entre la sonde et le Manager en utilisant les permissions accordées.
Toutes ces informations sont stockées dans une sonde 'profil'.
4.5.2 Profile
Le profil d’une sonde est identifié par son nom. Quand une sonde est démarrée, il essayera de charger un profil du même nom que le programme lui-même, c'est-à-dire si notre sonde est nommée "Prelude-LML", le capteur essayera de charger un profil nommé ""Prelude-LML".
Le cas d’une sur lecture (override) d’un nom de profile peut être utiliser avec la commande _--prelude --profile name_of_my_profile_. Elle fournit le capacité de définir un nom de profile afin de pouvoir avoir de multiple instance de la même sonde avec différentes permissions, qui exigent de différents profils.
4.5.3 Enregistrement d’agent/Création de Profile
La déclaration des agents est assurée par un seul outil nommé prelude-admin.
$ prelude-admin register <nom_profile> <permission> <IP_manager> --uid <uid> --gid
<gid>
La première fois qu'un agent est enregistré, prelude-admin devra créer une clé privée pour l'agent. Sous Linux, l'opération peut prendre une très longue période de temps en raison du système . o Exemple :
Pour enregistrer la sonde snort on va procéder par suite :
# prelude-admin register snort "idmef:w admin:r" 192.168.20.111 –uid 501 –gid 502
Generating 1024 bits RSA private key... This might take a very long time.
[Increasing system activity will speed-up the process].
Generation in progress... X
Prelude-admin demandera après de demmarer l’instance prelude-admin sur la machine ou le serveur prelude-manager est en écoute.
You now need to start "prelude-admin" registration-server on 192.168.20.111: example: "prelude-admin registration-server prelude-manager"
Enter the one-shot password provided on 192.168.20.111:

50

Au niveau du manager (192.168.20.111) , on exécute la commande prelude-admin registrationserver en utilisant le nom de profile utilisé par notre manager .
$ prelude-admin registration-server prelude-manager
The "d0a9b7xf" password will be requested by "prelude-admin register" in order to connect. Please remove the quotes before using it.
Generating 1024 bits Diffie-Hellman key for anonymous authentication...++++++++++.+++++..++++++++++
Waiting for peers install request on 0.0.0.0:5553...

Ensuite, la saisie du mot de passé généré par le manager au niveau de notre sonde Snort à enregistrer.
Enter the one-shot password provided on localhost:
Confirm the one-shot password provided on localhost:
Connecting to registration server (192.168.20.111:5553)... Authentication succeeded.
Successful registration to 192.168.20.111:5553.

Le message affiché du coté serveur est le suivant :
Connection from 10.0.0.136:52507...
Registration request for analyzerID="229348179011709" permission="idmef:w admin:r".
Approve registration? [y/n]: y
10.0.0.136:52507 successfully registered.

4.6 Haute disponibilité
La haute disponibilité désigne le fait qu’une architecture ou service a un taux de disponibilité convenable.
La disponibilité est un enjeu important des infrastructures informatiques. On estime aujourd'hui que la non-disponibilité d'un service informatique peut avoir des coûts se chiffrant en millions.
Deux moyens complémentaires sont utilisés pour améliorer la haute disponibilité :
La mise en place d'une infrastructure matérielle dédiée, généralement en se basant sur de la redondance matérielle. Est alors créé un cluster de haute-disponibilité (par opposi-

51

tion à un cluster de calcul) : une grappe d'ordinateurs dont le but est d'assurer un service en évitant au maximum les indisponibilités.
La mise en place de processus adaptés permettant de réduire les erreurs, et d'accélérer la reprise en cas d'erreur. ITIL contient de nombreux processus de ce type.
Pour mesurer la disponibilité, on utilise souvent un pourcentage essentiellement composé de '9' :








99% désigne le fait que le service est indisponible moins de 3,65 jours par an
99,9%, moins de 8,75 heures par an
99,99%, moins de 52 minutes par an
99,999%, moins de 5,2 minutes par an
99,9999%, moins de 54,8 secondes par an
99,99999%, moins de 3,1 secondes par an etc. L'amalgame est souvent fait, à tort, entre la haute disponibilité et le plan de reprise d'activité. Il s'agit de deux tâches différentes, complémentaires pour atteindre une disponibilité continue.
Afin d’assurer une bonne disponibilité du serveur Prelude , notre configuration consiste consiste à fournir une haute disponibilité pour les services Prelude.
Heartbeat 22 prend le contrôle des Fail Over de la machine au cours des défaillances matérielles, au cas où une machine est DOWN ou une perte totale de connectivité. Les deux serveurs doivent être toujours à jour avec bases de données, et soit peut prendre en charge au pied levé le premier. La valeur ajoutée pour assurer une disponibilité assuré est l’ajout d’une solution de supervision, tels que Nagios afin de traiter une défaillance au niveau du service, ainsi donc une intervention manuelle pour le redémarrage du service. (Exemple si un service particulier est down, mais le matériel reste opérationnel et accessible ; UP).
Elaboration de Prelude en haute disponibilité
1. L’installation de libprelude, LibpreludeDB, Prelude-Manager, PreludeCorrelator,Prelude-LML et Prewikka sur les deux machines.
2. La duplication des fichiers de configuration sur les deux serveurs pour tous les services centraux de Prelude.

22

Système de gestion de la haute disponibilité sous Linux.

52

3. La communication et l’importation des schémas de Prewikka seront faites qu’au niveau d’une seule machine, et ça sera dupliqué dans l'autre automatiquement.
4. La copie des profils et leur enregistrements se fera sur une seul machine, et on copie le répertoire des profils qui se trouve dans notre installation dans
/usr/local/etc/prelude/profile/ de l'autre machine centrale.
5. La mise automatique des services Web et MySQL en démarrage. Prelude-Manager et Prelude-Correlator ne doivent pas être configuré pour démarrer automatiquement au démarrage, étant donné que Heartbeat se chargera de ces deux services.
4.7 Performance
Dans notre cas où le serveur ne fait office que d’un manager principal et de serveur de base de données MySQL. Afin d’assurer une bonne performance au niveau du serveur nous allons voir désactiver les services inutiles et potentiellement dangereux ainsi qu’opérer un paramétrage plus fin du système.
Suppression des services inetd inutiles
La plupart des distributions linux installent par défaut avec des services anciens et dangereux comme:
• lpr : Serveur d’impression UNIX
• nfs-common & nfs-kernel-server : Gestion, hébergement et utilisation du système de fichiers réseau NFS (Network File System).
• portmap : Mapping de ports pour les services RPC, complètement obsolète et potentiellement très dangereux.
• pidentd : Daemon d’identification, principalement utilisé aujourd’hui lors de l’utilisation de clients IRC.
• ppp, pppoe&pppconfig : Utilisé lors de connexions dial-up (modem analogique, ADSL & connexions VPN PPTP).
• telnetd : Serveur Telnet, rendu obsolète depuis l’arrivée de SSH.
• fingerd : Service finger, source d’information inutile.
• ftpd : Serveur FTP, remplacé par le SFTP.
Donc il a fallu supprimer ces services via la commande : apt-get remove nom_du_paqutage,
Et ensuite désactiver encore les trois services lancés par inetd ou xinetd à l’aide des trois instructions suivantes :

53

update-inetd --disable time update-inetd --disable daytime update-inetd --disable discard
Au niveau de Mysql
En faisant la commande netstat -a, on a constaté que le serveur MySQL répond aussi bien aux requêtes provenant de l’extérieur (eth0) que de l’intérieur (lo). Bien que l’utilisateur
”root” ne puisse se connecter que sur l’interface lo, on a eu à modifier la configuration de
MySQL afin que son socket ne soit plus visible de l’extérieur. (Voir annexe).

54

Chapitre 5 : Fonctionnement et test

55

La phase de réalisation s’est focalisée sur des scénario de test, afin de voir la comportement de la maquette avec diverse attaque. Les deux attaques sur lesquelles cette phase repose, sont parmi les attaques les plus fréquents :
 L'attaque par force brute : une méthode utilisée en cryptanalyse pour trouver un mot de passe ou une clé. Il s'agit de tester, une à une, toutes les combinaisons possibles.
Cette méthode de recherche exhaustive ne réussit généralement que dans les cas où le mot de passe cherché est constitué de peu de caractères. Les programmes utilisés tentent toutes les possibilités de mot de passe dans un ordre aléatoire afin de berner les logiciels de sécurité qui empêchent de tenter tous les mots de passe dans l'ordre. Dans notre maquette nous allons faire une attaque sur des sessions ssh afin d’obtenir le mot de passe et aussi voire le comportement de Prelude (remonté d’alerte et corrélation).
 Scan de port (portscan) est une technique servant à rechercher les ports ouverts sur un serveur de réseau. Cette technique est utilisée par les administrateurs des systèmes informatiques pour contrôler la sécurité des serveurs de leurs réseaux. La même technique est aussi utilisée par les pirates informatiques pour tenter de trouver des failles dans des systèmes informatiques. Un scan de port effectué sur un système tiers est généralement considéré comme une tentative d'intrusion, servant souvent à préparer une intrusion. Les balayages de ports se font habituellement sur le protocole TCP ; néanmoins, certains logiciels permettent aussi d'effectuer des balayages UDP. Cette dernière fonctionnalité est beaucoup moins fiable, UDP étant orienté sans connexion, le service ne répondra que si la requête correspond à un modèle précis variant selon le logiciel serveur utilisé. Cette attaque sera performé par l’outil Nmap qui est un scanner de ports open source créé par Fyodor et distribué par Insecure.org. Il est conçu pour détecter les ports ouverts, identifier les services hébergés et obtenir des informations sur le système d'exploitation d'un ordinateur cible.
La corrélation se base aussi sur l’aspect comportemental ainsi, on essayera de configurer notre moteur de corrélation afin de détecté toute activité hors horaire de travail ou bien les jours fériés.
5.1 Scan de Port
Lors de notre phase de test on a opté pour l’intrusion la plus facile et la plus fréquente, qui est le scan de port .Ainsi donc on a fait un scan avec l’outil NMAP.
Le rôle du corrélateur est de détecter et de faire plus au moins une conclusion des différentes attaques. Nous avons travaillé sur la règle de corrélation suivante, écrite en Perl est se basant sur les expressions régulière.

56

5.1.1 Règle de corrélation
1. from PreludeCorrelator.context import Context
2. from PreludeCorrelator.pluginmanager import Plugin
3. class EventScanPlugin(Plugin):
4. def run(self, idmef):
5. source = idmef.Get("alert.source(*).node.address(*).address")
6. target = idmef.Get("alert.target(*).node.address(*).address")
7. if not source or not target:
8. return
9. for saddr in source:
10. for daddr in target:
11. ctx = Context(("SCAN EVENTSCAN", saddr, daddr), { "expire": 60,
"threshold": 30, "alert_on_expire": True }, update = True, idmef=idmef)
12. if ctx.getUpdateCount() == 0:
13. ctx.Set("alert.correlation_alert.name", "A single host has played many events against a single target. This may be a vulnerability scan") 14. ctx.Set("alert.classification.text", "Eventscan")
15. ctx.Set("alert.assessment.impact.severity", "high")

La partie la plus importante dans ce code de corrélation est à partir de la ligne 11.
La méthode context, c’est avec elle que repose le moteur de corrélation pour faire ses remonté d’alerte corrélée. ctx = Context(("SCAN EVENTSCAN", saddr, daddr), { "expire": 60,
"threshold": 30, "alert_on_expire": True }, update = True, idmef=idmef)

 SCAN EVENTSCAN : est l’identifiant avec le quelle en identifie un context qui sera par la suite écrit de la façon suivante: SCAN EVENTSCA_saddr et SCAN
EVENT_daddr.
 Expire, threshold et alert_on_expire sont des options additionnelles :
Expire : comme son nom l’indique c’est l’expiration d’un contexte après x seconde
 Alert_on_expire : Si notre context est expiré, et cette option est à True le message IDMEF sera envoyer.
 Treshold : C’est le seuil interne pour un context .
5.1.2 Scenario de corrélation de Scan de port
Après avoir fait une comparaison entre l’adresse source et destination, on entre dans une boucle imbriquée entre l’adresse source et l’adresse cible. Dans cette boucle on crée un contexte ; si le seuil interne de ce context a été atteint en moins de 60 seconde qui implique aussi un non update de ce context (ctx.getUpdateCount() = 0), alors une alerte corrélée sera remonté avec les valeur qu’on lui aura assigné via la méthode
Set (voir les lignes 13,14 et 15) .
57

Figure 15 : Remonté d'une alerte corrélée (EvantScan)

5.2 Brute force attaque
Cette attaque consiste à faire des connexions intensives et avec des mots de passes erronés sur une session ssh, afin de simuler qu’un attaquant essaye de cracker le mot de passe de cette session.

58

5.2.1 Règle de corrélation :
1. function brute_force(INPUT)
2. local is_failed_auth = INPUT:match("alert.classification.text",
“alert.assessment.impact.completion",
"failed")
3. local result = INPUT:match
("alert.source(*).node.address(*).address",
"(.+)","alert.target(*) .node.address(*).address",
"(.+)");
4. if is_failed_auth and result then
5. for i, source in ipairs(result[1]) do
6. for i, target in ipairs(result[2]) do
7. ctx = Context("BRUTE_ST_" ,source ,target,{ expire = 20, threshold = 5 "alert_on_expire": True}, update = True, idmef= local )
8. ctx:set("alert.source(>>)", INPUT:getraw("alert.source"))
9. ctx:set("alert.target(>>)", INPUT:getraw("alert.target"))
10.
ctx:set("alert.correlation_alert.alertident(>>).alertident",
INPUT:getraw( "alert.messageid"))
11.
if ctx:CheckAndDecThreshold() then
12.
ctx:set("alert.classification.text", "Brute force attack")
13.
ctx:set("alert.correlation_alert.name", "Multiple failed login")
14.
ctx:set("alert.assessment.impact.severity", "high")
15.
ctx:set("alert.assessment.impact.description","Multiple failed attempts have been made to login to a user account")

5.2.2 Scenario corrélation du brute force
Ici le context (ligne 7) de notre règle consiste à contrôler le seuil de tentative (threshold
= 5) sur les sessions SSH au bout d’une durée de temps spécifiques (expire = 20) .Cette règle de corrélation détecte aussi une attaque brute force distribué (ligne 8 et 9), plusieurs à plusieurs. Après une décrémentation du seuil jusqu’à 0, on assignera les informations de l’alerte corrélée au context créé (ligne 11 à 15).

59

Figure 16 : Remonté d'une alerte corrélée (Brute Force)

5.3 Analyse via Prelude-LML
Pour toute non compatibilité native des sondes avec Prelude, le plugin Prelude-LML est disponible pour faciliter l’analyse des logs générer via une écriture de règles personnelles reposant sur des expressions régulières.
Dans notre maquettes on a essayé de traiter ce point avec un honeyPot , HoneyD génère des logs et les journalise dans /var/log/syslog . C’est là où vient le rôle du analyseur de log Prelude-LML .
Lors de la configuration de notre HoneyD , on a essayé de faire la journalisation via
SysLog , pour faire par la suite une analyse avec Prelude-LML .
Dans notre analyseur il faut spécifier le format du fichier log afin de détécter chaque partie et la normaliser après pour avoir une remonté d’alert dans l’interface Prelude .

60

1. [format=syslog]
2. time-format = "%b %d %H:%M:%S"
3. prefix-regex = "^(?P<timestamp>.{15})
(?P<hostname>\S+)(?:(?P<process>\S+?)(?:\[(?P<pid>[0-9]+)\])?: )?"
4. file = /var/log/messages
5. file = /var/log/auth.log

La partie la plus importante dans cette section est prefix-regex .Cette option dicte à Prelude-LML comment manipuler le fichier log via différents champs :
Tableau 1 : Correspondance des valeurs de l'expression régulière.

Variable

Utilisation

Timestamp

Liaison au temps de détection de l’alerte IDMEF

Hostname

Liaison au nœud cible de l’alerte IDMEF

Process

Liaison au processus cible de l’alerte IDMEF

Pid

Liaison au pid cible de l’alerte IDMEF

Figure 17 : Fichier syslog , journalisant HoneyD

Lors du démarrage de HoneyD ,on démarre Prelude-LML afin de procédé à notre analyse des sortie SysLog du HoneyPot. Comme montrer dans la figure17 et avec la configuration faite au niveau de Prelude-LML on déduit le tableau suivant :
Tableau 2 : Valeur correspondant à la capture fig 17

Variable

Value

timestamp

Jun 19 09:07:12

hostname

machine

process

honeyd

pid

5211

61

Figure 18 : Remonté d'alerte de la sonde HoneyD via Prelude-LML

Ainsi donc on aura une remonté d aletre comme quoi un utilisateur a tenter de ‘pinger’ ou d’ouvrire une session SSH dans notre HoneyPot .
62

5.4 L’interface Prewikka:
Prewikka est l'interface Web de Prelude. Elle permet d'afficher les alertes reçues par
Prelude-Manager. Lorsque Prelude, plus précisément Prelude-Manager, reçoit une alerte
IDS, il l’ajoute dans la base de données de Prelude. Ainsi, Prewikka, lorsqu’il va réactualiser sa page d’affichage d’alertes, relancera un SELECT sur les tables de la base de données et affichera alors cette nouvelle alerte.
5.4.1 Description et utilisation de l'interface
Lancement de l'interface
Etant une interface graphique web, Prewikka se lance donc dans un navigateur internet.
Pour cela, il suffit d’entrer dans la barre d’adresse url du navigateur (Firefox, IE, Opera,
…), cette adresse :http://adresse_ip_prewikka:8000
L’accès avec succès dans le navigateur nous mènera vers un formulaire d’authentification. Il faut entrer le login et le password en fonction de la configuration de
Prewikka (définition de l’administrateur par défaut dans le fichier de configuration
/etc/prewikka/prewikka.conf, avec les champs initial_admin_user et initial_admin_pass).

Figure 19 : Formulaire d'authentification

63

Une fois authentifié, la page principale de Prewikka s'affiche alors, à savoir la visualisation des alertes.

Figure 20 : Page principale Prewikka

Description de l'interface
L’interface de Prewikka est composée d’une fenêtre principale, centrale où sont affichées les alertes transmises par les sondes de Prelude. Sur la gauche, on peut trouver le menu avec les différentes parties : Evénements, Agents, Paramètres statistiques et A propos. La partie Evénements correspond donc à la visualisation des alertes IDS. C’est la page principale (par défaut) de Prewikka. Sur cette page, il y a 3 onglets disponibles pour spécifier, voir plutôt filtrer l’affichage des alertes. On a donc le choix entre Alertes, Alertes de Corrélation et Alertes d’outils. Le premier onglet Alertes (par défaut), affiche la totalité des alertes (corrélées, …), le second, comme l’indique son nom, sert à visualiser que les alertes corrélées par Prelude-Correlator. Quant au troisième, il affiche les alertes concernant les outils (sondes).

64

Des couleurs sont utilisées pour pouvoir en faciliter la recherche sur les niveaux de gravités, de danger de chacune d’entre elles. Ainsi, le code des couleurs est :
1
2
3
4

Bleu → niveau d’information « info »
Vert → niveau le plus faible « low »
Orange → niveau intermédiaire « medium »
Rouge → niveau d’alerte maximum « high »

Les alertes sont affichées sous la forme d’un tableau, avec comme colonnes, la classification (nom de l’alerte, …), la source ayant provoquée l’alerte, puis la destination de l’événement, ensuite le nom de la sonde ayant fait remontée cette alerte à Prelude, et enfin le temps (heure) sur lequel l’alerte a été reçue par le Prelude-Manager. Pour chacun de ses onglets (Evénements), un bouton se trouvant en bas de page (Effacer), permet après sélection des alertes (globale, ou ciblée), de les supprimer.
Quel que soit l’onglet choisi, il est possible (en général) de voir en détail les alertes en cliquant dessus, sur le titre de l’alerte ou bien, en cliquant sur le nombre à côté du titre dans le cas où il y en aurait plusieurs.

Figure 21 : Liste des alertes

Après avoir cliqué sur une alerte (see alert), Prewikka affiche alors le contenu de l’alerte, à savoir le format IDMEF avec une mise en forme HTML, plus sympathique à lire que dans un fichier de logs.

Figure 22: Détail d'une alerte

65

Après la réception et l’ajout d’une nouvelle alerte par Prelude-Manager, le corrélateur, à savoir Prelude-Correlator va en fonction de ses règles, intercepter certaines alertes pour en générer une nouvelle, corrélée. Cette dernière sera renvoyée au Prelude-Manager, qui la verra comme une nouvelle alerte, mais corrélée. En aucun cas, le corrélateur ne supprime les alertes à partir desquelles il a généré sa corrélation. Ainsi, dans Prewikka, il sera possible de voir les nouvelles alertes reçues directement par le Prelude-Manager, avec aussi la nouvelle alerte corrélée, en général à un niveau de gravité plus élevé.

Figure 23 : Pages des alertes corrélées

Le bouton Agents permet de visualiser l’ensemble des agents constituant l’architecture réseau de notre maquette, à savoir les différentes sondes connectées au serveur Prelude, ainsi que ses composants, comme le Prelude-Manager, le Prelude-Correlator... Il est possible donc de voir l’état des sondes et des composants de Prelude en temps réel, c’est-àdire si ils sont connectées ou pas (Manquant ou Connecté).

66

Figure 24 : Liste et pages des agents

Et enfin , la page Statistique qui permet de voir les attaques au cours d'un intervalle de temps. Elle nous montre ainsi et de façon explicite des statistiques avec différents graphes et selon défirent critères.

67
Figure 25 : Graphes de la page statistiques

Conclusion
Durant ces quatre mois de stage de fin d’étude, il nous a été offert d’effectuer différentes tâches aussi variées qu’intéressantes. En effet, nous avons eu le plaisir d’effectuer les travaux suivants :
 L’ étude et comparaison des différents solution SIEM.
 Le déploiement d’une architecture réseau complète (Firewall, NIDS , HIDS, serveurs Web,HoneyPot)
 L’adaptabilité d’une solution SIEM dans une architecture réseau.
 Création règles personnalisées de SNORT et Prelude nous amenons a bien comprendre le trafic réseau .
Nous estimons avoir atteint notre but, puisque la quasi-totalité du cahier des charge a été remplie. Mais je ne pourrai prétendre avoir fait le tour du sujet. En effet, la corrélation d’événements reste un domaine en pleine évolution et en recherche de solutions efficaces. Il serait intéressant d’approfondir l’analyse et de mettre en place d’autres scenario d’investigation permettant d’observer le comportement de l’architecture mise en place. De plus, il serait très utile de déployer un serveur de monitoring (Nagios par exemple ) afin d’aider à assurer une haute disponibilité .
La corrélation pourra aussi nous mener à considérer le data mining ,en effet pour valeur ajouté à ce travail il est envisageable d’ajouter LogHound , qui est un outil conçu pour trouver des motifs fréquents à partir des données log des événements fixe à l'aide de l’algorithme breadth-first du data minig , chose qui n’a pas été implémenter par faute de temps. D’un point de vue plus personnel, ce travail m’a permis d’élargir mes connaissances en sécurité réseau, configuration d’éléments réseaux et gestion de la détection d’intrusions .
Ces différents domaines m’ont donné une forte envie d’approfondir mes connaissances en la matière. C’est pour cela que j’envisage fortement une formation plus poussée dans le domaine...

68

Annexe
Installation de Prelude
Pré-requis
Pour la préparation d'un environnement Prelude, il faut installer certains paquets :

$ sudo apt-get update

$ sudo apt-get upgrade

$ sudo apt-get install man wget ssh build-essential checkinstall libpcap-dev flex byacc gtk-doc-tools libssl-dev libxml-dev libpcre3-dev libfam-dev gnutls-bin libgcrypt11-dev libgnutls-dev libgpg-error-dev libopencdk10-dev libxmlsec1 libxmlsec1-gnutls

Libprelude
Téléchargement
Récupération de la librairie de Prelude :

$ sudo wget http://www.prelude-ids.com/download/releases/libprelude/libprelude-1.0.0.tar.gz

Compilation et installation
Installation de la librairie :

$ sudo tar zxf libprelude-1.0.0.tar.gz

$ cd libprelude-0.9.24.1

$ sudo ./configure --enable-easy-bindings --enable-gtk-doc

*** Dumping configuration ***

- Generate documentation

: yes

- Libtool dynamic loader

: System

- LUA binding

: no

- Perl binding

: yes

- Python binding

: yes

- Ruby binding

: no

- Easy bindings

: yes

$ sudo make

$ sudo make install

$ sudo ln /sbin/ldconfig /usr/local/lib

$ sudo export LD_LIBRARY_PATH=/usr/local/lib

69

$ sudo vim /etc/ld.so.conf

include /usr/local/lib

$ sudo ldconfig

LibpreludeDB
Pré-requis
L'ajout d'une base de données sur un serveur Prelude requiert des paquets supplémentaires :

$ sudo apt-get install mysql-server libmysqlclient15-dev

Téléchargement
Téléchargement de la librairie de base de données de Prelude:

$ sudo wget http://www.prelude-ids.com/download/releases/libpreludedb/libpreludedb-10.0.0.tar.gz

Compilation et installation
Installation de la librairie:

$ sudo tar zxf libpreludedb-1.0.0.tar.gz

$ cd libprelude-0.9.15.3

$ sudo ./configure --with-postgresql=no --enable-gtk-doc

*** Dumping configuration ***

- Generate documentation

: yes

- Enable MySQL plugin

: yes

- Enable PostgreSQL plugin

: no

- Enable SQLite3 plugin

: no

- Perl binding

: yes

- Python binding

: yes

$ sudo make

$ sudo make install

$ sudo vim /etc/ld.so.conf

include /usr/local/lib/libpreludedb/plugins/formats

include /usr/local/lib/libpreludedb/plugins/sql

$ sudo ldconfig

Création de la base de données
70

Pour stocker les alertes, création de la base de données Prelude :

$ sudo mysql -u root –p

> create database prelude;

> grant all privileges on prelude.* to prelude@localhost identified by 'prelude';

> grant all privileges on prelude.* to prelude@nagios identified by 'prelude';

> exit

$ sudo mysql -u prelude -p prelude < /usr/local/share/libpreludedb/classic/mysql.sql

Prelude-Manager
Téléchargement
Ensuite, il faut télécharger le paquet Prelude-Manager:

$ sudo wget http://www.prelude-ids.com/download/releases/prelude-manager/prelude-manager-1.0.0.0.tar.gz

Compilation et installation
Et enfin l’installer:

$ sudo tar zxf prelude-manager-1.0.0.tar.gz

$ cd prelude-manager-0.9.15

$ sudo ./configure

*** Dumping configuration ***

- TCP wrapper support

: no

- XML plugin support

: yes

- Database plugin support: yes

$ sudo make

$ sudo make install

$ sudo vim /etc/ld.so.conf

include /usr/local/lib/prelude-manager/decodes

include /usr/local/lib/prelude-manager/filters

include /usr/local/lib/prelude-manager/reports$ sudo ldconfig

$ sudo ldconfig

Prelude-Correlator
Pré-requis
L'ajout de Prelude-Correlator nécessite l'installation d'un environnement python :

71

$ sudo apt-get install python

Téléchargement
Téléchargement du plugin de corrélation de Prelude :

$ sudo wget http://www.prelude-ids.com/download/releases/prelude-correlator/prelude-correlator-1.0.0.tar.gz

Compilation et installation
Installation du module de corrélation:

$ sudo tar zxf prelude-correlator-1.0.0.tar.gz

$ cd prelude-correlator-0.9.0-beta6

$ sudo python setup.py build

$ sudo python setup.py install

$ sudo vim /etc/ld.so.conf

include /usr/local/lib/prelude-correlator

$ sudo ldconfig

Prelude-LML
Téléchargement
Pour installer le module Prelude-LML, il faut récupérer le paquet:

$ sudo wget http://www.prelude-ids.com/download/releases/prelude-lml/prelude-lml-1.0.0.tar.gz

Compilation et installation
Puis le compiler et l’installer:

$ sudo tar zxf prelude-lml-0.9.15.tar.gz

$ cd prelude-lml-0.9.15

$ sudo ./configure

*** Dumping configuration ***

- Enable unsupported rulesets

: yes

$ sudo make

$ sudo make install

$ sudo vim /etc/ld.so.conf

include /usr/local/lib/prelude-lml

$ sudo ldconfig

72

Prewikka
Pré-requis
La mise en place de l'interface web nécessite d'installer quelques paquets supplémentaires :

$ sudo apt-get install apache2 libapache2-mod-python mysql-server python python-dev python-setuptools

Téléchargement
Pour mettre en place une interface graphique de Prelude, il faut télécharger le module Prewikka:

$ sudo wget http://www.prelude-ids.com/download/releases/prewikka/prewikka-1.0.0.tar.gz

Compilation et installation
Installation de l’interface Prewikka:

$ sudo tar zxf prewikka-0.9.17

$ cd prewikka-0.9.17

$ sudo apt-get install cheetah

$ sudo python setup.py build

$ sudo python setup.py install

Création de la base de données
Pour l’interface Prewikka, il faut créer une base de données :

$ sudo mysql -u root –p

> create database prewikka;

> grant all privileges on prewikka.* to prewikka@localhost identified by 'prewikka';

> exit

$ sudo mysql -u prewikka -p prewikka < /usr/share/prewikka/database/mysql.sql

Configuration de Prelude
Libprelude
Cette partie correspond à la configuration de Prelude en général, c'est-à-dire à Libprelude installé sur un poste client ou serveur. En effet, quel que soit l'usage, et l'installation étant la même sur les deux types de postes, la configuration de base de Prelude se trouve par défaut dans le répertoire /usr/local/etc/prelude/default.
Ce dossier contient plusieurs fichiers de configuration tels que:

1

client.conf

2

global.conf

3

idmef-client.conf

4

tls.conf

73

client.conf
Ce fichier est à éditer que dans le cadre d'une configuration d'un agent ou d'une sonde (exemple: Prelude-Correlator,
Ossec, …etc). client.conf permet notamment d'indiquer l'adresse du serveur Prelude (Prelude-Manager), et de paramétrer les différents échanges (au niveau tcp, et tls) entre le client et le serveur.

global.conf
Le fichier global.conf contient la configuration pouvant servir aussi bien pour le serveur, que pour le client (agent, ou sonde). Dans ce fichier, il est possible de paramétrer certaines options pour gérer des champs à remplir lors de l'envoi d'alerte, ou encore pour préciser les informations sur le poste serveur ou client (multiples adresses ip, nom du vlan,
…etc).

idmef-client.conf
Quant à ce fichier, idmef-client.conf, il contient les liens vers les deux fichiers précédents, à savoir client.conf et global.conf.

tls.conf
Afin de paramétrer la génération des certificats, comme la durée de vie ou la valeur de la clé de cryptage (par défaut
1024), il faut éditer le fichier tls.conf.

Prelude-Manager

Pour configurer Prelude-Manager, il faut éditer le fichier prelude-manager.conf, par défaut ce dernier se trouve sous le répertoire /usr/local/etc/prelude-manager.
$ sudo vim /usr/local/etc/prelude-manager/prelude-manager.conf

Configuration de base
Dans prelude-manager.conf, le réseau sur lequel Prelude-Manager écoute doit être précisé, afin que ce dernier accepte les connexions des clients (sondes). Pour simplifier, ici l'adresse choisie est globale. listen = 0.0.0.0

Ensuite, il reste à indiquer les paramètres de la base de données de Prelude (LibpreludeDB) :

[db]

type = mysql

host = localhost

port = 3306

name = prelude

user = prelude

pass = manager

Avec ces paramètres, Prelude-Manager est prêt à démarrer et à fonctionner.

Optimisation
Une fois la configuration de base terminée, il est possible d'optimiser Prelude-Manager dans prelude-manager.conf.

Logs
L'activation du debug en mode texte se fait en ajoutant ces lignes :

74

...

[debug]

logfile = stderr

logfile = /var/log/prelude.log

...

Prelude-LML
Pour configurer Prelude-LML, il faut éditer le fichier prelude-lml.conf.
$ sudo vim /usr/local/etc/prelude-lml/prelude-lml.conf

Optimisation
Pour prendre en compte les syslogs par exemple, y ajouter :

[format=syslog]

time-format = "%b %d %H:%M:%S"

prefix-regex = "^(?P<timestamp>.{15}) (?P<hostname>\S+) (?:(?P<process>\S+?)(?:\[(?P<pid>[0-9]+)\])?: )?"

file = /var/log/messages

file = /var/log/auth

file = /var/log/syslog

Prewikka
Pour activer l’interface Web de Prelude, il faut commencer par configurer Prewikka. Ce dernier dispose d'un fichier de configuration, prewikka.conf.
$ sudo vim /etc/prewikka/prewikka.conf

Configuration de base
Dans prewikka.conf, il faut précisé les paramètres des bases de données à utiliser. Voici les champs à compléter:
[idmef_database]

# if your database is a sqlite file, please use:

# type: sqlite3

# file: /path/to/your/sqlite_database

type: mysql

host: localhost

user: prelude

pass: prelude

name: prelude

75

[database]

type: mysql

host: localhost

user: prewikka

pass: prewikka

name: prewikka

La première partie correspond à la base de données de Prelude-Manager, contenant les alertes IDMEF. Quant à la seconde base de données, c'est celle de Prewikka, crée lors de l'installation de ce dernier pour ajouter une interface graphique. Optimisation
A travers le fichier prewikka.conf, il est possible d'optimiser la configuration de Prewikka.

Authentification

L'authentification de Prewikka peut être modifiée, soit en la désactivant, soit en indiquant les paramètres de l'administrateur de base, initial (par défaut admin/admin).

[auth loginpassword]

expiration: 60

initial_admin_user: admin

initial_admin_pass: admin

Pour désactiver l'authentification, il suffit de commenter les lignes précédentes :

#[auth loginpassword]

#expiration: 60

#initial_admin_user: admin

#initial_admin_pass: admin

Logs
Pour activer les logs de Prewikka, il faut indiquer un fichier en sortie :

[log file]

level: debug

file: /var/log/prewikka.log

[log syslog]

level: warning

Installation d'Ossec
Pré-requis
76

Avant de passer à l’installation d’Ossec, il faut au préalable installer certains paquets, à adapter selon vos besoins.

$ sudo apt-get update

$ sudo apt-get upgrade

$ sudo apt-get install wget man ssh build-essential libgnutls-dev checkinstall

Ossec-HIDS
Téléchargement
Pour installer Ossec, il faut tout d’abord télécharger la dernière version (http://www.ossec.net/main/downloads).
$ sudo wget http://www.ossec.net/files/ossec-hids-latest.tar.gz

Décompresser l’archive.

$ sudo tar –zxf ossec-hids-2.6.tar.gz

Un seul paquet est nécessaire pour l’installation sur un poste Linux. En effet ce dernier sert aussi bien pour l’installation d’un serveur que d’un agent.

Ossec Serveur
Libprelude
L’installation de Libprelude est obligatoire pour pouvoir enregistrer le serveur Ossec auprès du serveur Prelude. Ainsi,
Ossec est considéré comme une sonde de Prelude et peut alors échanger avec ce dernier de manière sécurisé.

Ossec
$ cd ossec-hids-2.1

Afin qu’Ossec prenne en charge Prelude (optionnel), c’est-à-dire, l’envoi des alertes au format IDMEF vers PreludeManager, il faut activer le service avant de lancer l'installation, sous peine, en cas d'oubli, de devoir réinstaller complétement Ossec afin de réussir à l'intégrer correctement à Prelude.
$ cd src

$ sudo make setprelude

$ cd ..
$ sudo ./install.sh

Ensuite, il ne reste plus qu’à suivre les instructions comme le choix de langue, le type d’installation (serveur/agent…), le répertoire d’installation, …etc.

Ossec Agent
Linux

Pour le client Linux, la procédure est similaire au serveur, à la seule différence qu’il faut choisir le type Agent lors de l’installation. Ossec-WUI
77

Ossec-WUI est l'interface web d'Ossec-HIDS. Elle permet de visualiser les alertes reçues par le serveur. Cette installation n'est pas obligatoire.

Pré-requis
Pour installer Ossec-WUI, il faut au préalable installer certains paquets.

$ sudo apt-get install apache2 php5

Téléchargement
Le paquet Ossec-WUI est à télécharger sur le site d'Ossec (http://www.ossec.net/main/downloads).
$ sudo wget http://www.ossec.net/files/ui/ossec-wui-0.3.tar.gz

Décompresser l’archive.

$ sudo tar –zxf ossec-wui-0.3.tar.gz

Installation
Une fois le paquet téléchargé et décompressé, il faut le déplacer dans le dossier utilisé par notre serveur web (Apache).

$ sudo mv ossec-wui-0.3 /var/www/htdocs/ossec-wui

Ensuite, on peut lancer l'installation.

$ sudo cd /var/www/htdocs/ossec-wui

$ sudo ./setup.sh

www-data tmp

Configuration d'Ossec
Ossec-HIDS
Pour configurer Ossec, il faut éditer le fichier ossec.conf.
$ sudo vim /etc/ossec/etc/ossec.conf

Configuration de base
Dans ossec.conf, il faut ajouter les adresses ip autorisées à interagir avec Ossec, c'est-à-dire les postes informatiques ne pouvant être bloqués par le système de réponses-actives d'Ossec-HIDS, ces derniers étant considérés comme sûrs.
Pour cela, ces adresses ip doivent être entrées dans la liste blanche.
<ossec_config>

...

<global>

<white_list>127.0.0.1</white_list>

<white_list>^localhost.localdomain$</white_list>

<white_list>192.168.20.111</white_list>

<white_list>192.168.40.130</white_list>

78

<white_list>192.168.40.1</white_list>

</global>

...

Libprelude
Afin que notre serveur Ossec et Prelude communiquent correctement entre eux, il faut préciser l’adresse du serveur
Prelude dans le fichier client.conf dans le repertoire /usr/local/etc/prelude/default.
$ sudo vim /usr/local/etc/prelude/default/client.conf

server-addr = 192.168.20.111

Ensuite dans le fichier de configuration ossec.conf, il faut ajouter des paramètres Prelude.
<ossec_config>

<global>

...

<prelude_output>yes</prelude_output>

<prelude_profile>ossec</prelude_profile>

<prelude_log_level>0</prelude_log_level>

</global>

...

Le paramètre prelude_output permet d'activer l'envoi d'alerte vers Prelude, quant au paramètre prelude_profile, il sert à indiquer le profile (certificat d'inscription utilisé pour Prelude) à utiliser au démarrage d'Ossec-HIDS.
Pour prelude_log_level, c'est en quelque sorte un filtre des alertes à envoyer à Prelude avec un niveau de log minimum.

Ossec Agent
Linux

Sur les agents, il faut comme pour la version serveur, éditer le fichier ossec.conf afin de configurer les répertoires et les fichiers vers lesquels Ossec doit pointer et surveiller.
Mais le point le plus important, est d'indiquer l'adresse du serveur Ossec :

<ossec_config>

<client>

<server-ip>192.168.40.129</server-ip>

</client>

Installation d'un serveur Snort
Pré-requis
$ sudo apt-get update

$ sudo apt-get upgrade

79

$ sudo apt-get install build-essential checkinstall mysql-server libnet1-dev libpcap0.8-dev libpcre3-dev libmysqlclient15-dev Snort
Libprelude
L’installation de Libprelude est obligatoire pour pouvoir enregistrer le serveur Snort auprès du serveur Prelude. Ainsi,
Snort est considéré comme une sonde de Prelude et peut alors échanger avec ce dernier de manière sécurisé.

Snort
Maintenant, l’installation de Snort peut commencer :

$ sudo cd /tmp

$ sudo wget http://dl.snort.org/snort-current/snort-2.8.6.tar.gz

$ sudo tar --zxf snort-2.8.6.tar.gz

$ sudo cd snort-2.8.6

$ sudo ./configure --with-mysql --enable-dynamicplugin --prefix=/usr/local/snort --enable-prelude

$ sudo make

$ sudo make install

$ sudo mkdir /etc/snort

$ sudo mkdir /var/log/snort

$ sudo mkdir /etc/snort/rules_backup

$ sudo mkdir /etc/snort/packages

$ sudo cp /tmp/snort-2.8.6/etc/*.conf* /etc/snort

$ sudo cp /tmp/snort-2.8.6/etc/*.map /etc/snort

Utilisateur et groupe
Pour l’administration de l’application Snort, il faut créer un utilisateur d’administration et un groupe (cette étape peut être optionnelle) :

$ sudo groupadd snort

$ sudo useradd –g snort –d /usr/local/snort –m snort

$ sudo chown –R snort /var/log/snort

$ sudo chgrp –R snort /var/log/snort

Règles Snort
Ajout des règles Snort:

$ sudo cd /tmp

$ sudo wget http://dl.snort.org/sub-rules/snortrules-snapshot-2.8.6_s.tar.gz

80

$ sudo tar –zxf snortrules-snapshot-2.8.6_s.tar.gz

$ sudo mv snortrules-snapshot-2.8.6/rules/* /etc/snort/rules

MySQL
Création de la base de données
Pour le stockage des alertes de Snort, et pour une visualisation plus claire que dans un fichier de logs, il est possible de créer une base de données:

$ sudo mysql –u root –p

> create database snort;

Création d’un utilisateur
Ajout d’un utilisateur pour administrer la base de données:

> grant all on snort.* to snort@localhost;

> set password for snort@localhost=password(‘snort’);

> flush privileges;

> exit

Construction de la base de données
Création des tables et différentes propriétés de la base de données, grâce à un script fourni dans le paquet d’installation de Snort :

$ sudo cd /tmp/snort-2.8.6/schemas

$ sudo mysql –u snort –p < create_mysql snort

Configuration d'un serveur Snort
Snort
Pour configurer Snort, il faut éditer le fichier snort.conf.
$ sudo vim /etc/snort/snort.conf

Configuration de base
Dans le fichier snort.conf, voici les paramètres de base à indiquer pour le bon fonctionnement de Snort :
Déclaration des interfaces d’écoute :

var HOME_NET 10.0.0.0/8

var EXTERNAL_NET any

Ensuite, il est important d'indiquer le répertoire contenant les règles :

var RULE_PATH /etc/snort/rules

Définition de la base de données Snort :

81

output database: log, mysql, user=snort password=snort dbname=snort host=localhost

Libprelude
Activation de l’envoi d’alertes vers Prelude:

$ sudo vim /etc/snort/snort.conf

Pour relayer les alertes de snort vers le serveur Prelude, il faut également ajouter cette ligne :

output alert_prelude: profile=snort

Puis, il est important pour la communication entre Snort et Prelude de configurer la librairie de Prelude. Pour cela, il faut préciser l’adresse du serveur Prelude dans le fichier client.conf dans le répertoire /usr/local/etc/prelude/default.
$ sudo vim /usr/local/etc/prelude/default/client.conf

server-addr = 192.168.20.111

82

Reference

1)

FreeBSD handbook:

2) http://www.freebsd.org/doc/fr_FR.ISO88591/books/handbook/index.html
3)

Site officielle de Prelude:

4) http://www.prelude-technologies.com
5)

Réalisation d’une maquette modulaire avec les Open sources afin de sécuriser le réseau Informatique de la FBPMC pour l’accès à Internet,
Mr. Sâad KHOUDALI

6)

CHE, Ethical Hacker.

7)

www.wikipedia.org

8)

www.google.com

83

Similar Documents

Free Essay

Assessing a Company's Future Financial Health

...Dicci ionario Inglé – Español de Térmiinos Técnic de Direc és cos cción de Pro oyectos   Diccion nario Ing glés – Es spañol de Términ Técn e nos nicos de Direcció de Pr ón royectos Ba asado en e PMBOK 4° Edición el K® Elab borado po or: Fech ha: Vers sión: Mario A. Santos, MSc, PMP. , Diciem mbre - 2010 0 1.0 o A. Santos | | TenStep Ecuador  Mario Página 1  Diccionario Inglés – Español de Términos Técnicos de Dirección de Proyectos   Índice 1. 2. Términos generales _________________________________________ 4 Estructuras organizacionales _________________________________ 5 3. Grupos de procesos de la Dirección de Proyectos, áreas de conocimiento y procesos ________________________________________ 6 4. Gestión de la Integración del Proyecto _________________________ 10 4.1. 4.2. 4.3. 4.4. 4.5. 4.6. Desarrollar el Acta de Constitución del Proyecto __________________ 11 Desarrollar el Plan para la Dirección del Proyecto _________________ 12 Dirigir y Gestionar la Ejecución del Proyecto _____________________ 13 Monitorear y Controlar el Trabajo del Proyecto ____________________ 14 Realizar el Control Integrado de Cambios ________________________ 15 Cerrar el Proyecto o Fase ______________________________________ 16 5. Gestión del Alcance del Proyecto _____________________________ 17 5.1. 5.2. 5.3. 5.4. 5.5. Recopilar Requisitos__________________________________________ 18 Definir el Alcance ____________________________________________ 19 Crear la...

Words: 7243 - Pages: 29

Free Essay

Casee Pinto 8.1

...ESTUDIOS DE CASOS Estudio de caso 6.1: Columbus Instruments Preguntas: 1) ¿Cuáles son las implicaciones del enfoque de CIC a los equipos de proyecto personal? ¿Están utilizando como campo de entrenamiento para talentosos seguidores rápidos o vertederos de desempeño? La respuesta a esta pregunta es bastante evidente para los estudiantes. Es evidente que la empresa ha adoptado una actitud vertedero porque no hay riesgo por el lado de los gerentes que quieren fuera de la carga bajo desempeño en equipos de proyecto. 2) ¿Cómo aconsejaría usted al director general para corregir el problema? ¿Dónde empezar? Un gran problema es la falta de responsabilidad que impregna la organización. Los administradores ver que los equipos de proyecto son un método conveniente para los empleados descartando marginales durante largos períodos de tiempo. Debido a que no hay consecuencias a este comportamiento, se ha hecho cada vez más común y se utiliza ampliamente. El primer paso es crear un poco de responsabilidad por lo que los gerentes funcionales deben responder adecuadamente a las solicitudes de recursos y asignar personal a estas buenos equipos. Al mismo tiempo, estos directivos deben recibir crédito por ello. Donde el miedo al fracaso o la falta de autenticidad de operación, el personal del equipo de proyecto no se tomarán en serio y este problema no se resolverá. Otra solución sería la de comenzar a nivelar el campo de juego, dando la autoridad encargado de proyecto para elegir su propio...

Words: 1261 - Pages: 6

Free Essay

Admon de Proyectos.Compilación Biliografica

...Administración integral de portafolios, programas y proyectos de información y comunicaciones INVESTIGACIÓN BIBLIOGRÁFICA 6 de Febrero de 2011 Seguimiento del Proyecto Es muy importante la revisión del avance que se valla teniendo con el Proyecto el cual muchas de las veces se da menor importancia al análisis previo que se debe tener a la implementación y no se analizan los escenarios que se pudieran presentar adelantándose a cualquier incidente que retrase o en el peor de los casos cancele el proyecto. Dentro de este sentido podemos tomar en cuenta algunos puntos según Domingo A. (2005). * Antes de empezar a trabajar. * Revisión de la oferta y del contrato. * Organización y acopio del contrato. * Organización y acopio de recursos. * Intercambio de información en el proyecto. Un buen análisis es base fundamental para prever cualquier contratiempo y la buena cimentación de un proyecto. * Reuniones. * Convocatoria de reunión. * Desarrollo de la reunión. * Actas de reunión. * Resumen de reunión. Conforme avanza el proyecto se debe revisar si los acuerdos se van cumpliendo y dejar documentación y evidencia de lo que se ha realizado, así como mantener una estrecha comunicación. * El día a día de la gestión del proyecto. * Estado de las acciones. * Avance técnico y económico. Sirve para analizar el avance que se va teniendo e ir corrigiendo los aspectos que...

Words: 2671 - Pages: 11

Free Essay

Caso Codelco Benchmarking

...Gerencial Magister de Control de Gestión Integrantes: M.Loreto Romo Rodrigo Guerrero Ignacio Bastías Prof: Juan Pablo Miranda TABLA DE CONTENIDOS 1.- Introducción 3 2.- Necesidad de Efectuar Benchmarking 4 3.- Unidad o Empresa a la Cual se Realizará Benchmarking 4 4.- Etapa I: Determinar a qué se le va a hacer benchmarking 6 5.- Etapa II: Equipo de Benchmarking 10 6.- Etapa III: Identificar a los socios del benchmarking 12 7.- Etapa IV: Recopilar y Analizar la Información de Benchmarking 14 8.- Etapa V: Plan de Acción 15 9.- Aplicación de Costos 16 10.- Aplicación Ilustrativa Resumida 16 11.- Conclusiones 18 12.- bibliografía 19 1.- Introducción En la actualidad las empresas se desenvuelven en entornos cada vez más competitivos, por lo tanto, es muy útil realizar la comparación con las mejores prácticas existentes, con el fin de obtener ventajas comparativas en las áreas fundamentales. El benchmarking es un proceso sistemático y continuo para evaluar comparativamente los productos, servicios y procesos de trabajo en organizaciones. Consiste en recopilar información y obtener nuevas ideas, mediante la comparación de aspectos de la empresa con los líderes o los competidores más fuertes del mercado. Este proceso continuo de comparar actividades...

Words: 5169 - Pages: 21

Premium Essay

Guía Para Mejorar La GestióN de Las Organizaciones

...Resumen: Guía para mejorar la gestión de las organizaciones de desarrollo Objetivo primordial de la guía: -Contribuir a mejorar la calidad y el impacto de la cooperación al desarrollo -Pretenden ofrecer herramientas pedagógicas que aborda de una manera didáctica la importancia de introducir conceptos gerenciales, de planeación, seguimiento y evaluación en la cultura organizacional de Organizaciones pertenecientes al Tercer Sector o Sector Social. Definir qué entendemos por organización social Que son Las Organizaciones no Gubernamentales (ONG): son organizaciones sin ánimo de lucro surgidas de la sociedad civil con el objeto de generar un determinado impacto en la sociedad. Están formalmente organizadas e institucionalizadas de alguna manera. - Tienen naturaleza privada. No distribuyen beneficios. - Son independientes del gobierno y de las entidades públicas con sus propios órganos de gobierno. - Habilitadas para tomar sus propias decisiones y controlar sus actividades. ¿Por qué si el sector empresarial se aleja, en ocasiones, de la forma de entender el sector social y de la cooperación internacional, hay muchas de sus herramientas de la cooperación y del sector social, en general, que utilizamos de forma habitual? algunas razones son: - El sector no lucrativo requiere recursos humanos profesionalizados - Debilidad financiera: - Crecimiento de otras ONG en búsqueda de financiación, lo que otorga al sector de mayor competitividad y complejidad. - La sociedad...

Words: 619 - Pages: 3

Free Essay

Gsk Plan de Capacitacion

...CURSO DE CAPACITACIÓN PARA DIRECTORES DE PROYECTOS GSK Alumno: eduardo israel lopez jimenez PROFESOR: GERARDO REYES FECHA DE ENTREGA: 11 ABRIL 2015 CURSO DE CAPACITACIÓN PARA DIRECTORES DE PROYECTOS GSK Alumno: eduardo israel lopez jimenez PROFESOR: GERARDO REYES FECHA DE ENTREGA: 11 ABRIL 2015 ¿Por qué la administración de proyectos es importante para su empresa?  Existe una necesidad de conocimiento y control de los proyectos y los recursos comprometidos en la organización.  La administración de proyectos es la forma de planear, organizar, dirigir y controlar una serie de actividades realizadas por un grupo de personas que tienen un objetivo específico. Esta actividad es llevada a cabo por un conjunto de administradores que actúan como agentes unificadores para proyectos particulares, tomando en cuenta los recursos existentes, tales como el tiempo, materiales, capital, recursos humanos y tecnología. Importancia de la administración de proyectos La administración de proyectos es usada en una gran diversidad de campos, como, por ejemplo, en bancos, desarrollo de sistemas, lanzamientos de productos, proyectos especiales, en la industria petroquímica, en telecomunicaciones, en defensa nacional, y en muchos otros ámbitos e industrias. Los cambios tecnológicos, la necesidad de introducir nuevos productos al mercado, las cambiantes exigencias de los consumidores de productos, entre otras cosas, incrementan el fluido de operaciones en una organización, esto hace...

Words: 1118 - Pages: 5

Free Essay

Gestion de Riesgos

...REGLAMENTO DE LA GESTIÓN INTEGRAL DE RIESGOS CAPÍTULO I DISPOSICIONES GENERALES Artículo 1º.- Alcance El presente Reglamento será de aplicación a las empresas señaladas en los artículos 16° y 17° de la Ley General, así como a las Administradoras Privadas de Fondos de Pensiones (AFP), en adelante empresas. También será de aplicación a las Cajas Municipales de Ahorro y Crédito (CMAC), la Caja Municipal de Crédito Popular, el Fondo de Garantía para Préstamos a la Pequeña Industria (FOGAPI), el Banco de la Nación, el Banco Agropecuario, la Corporación Financiera de Desarrollo (COFIDE), el Fondo MIVIVIENDA S.A., las Derramas y Cajas de Beneficios bajo control de la Superintendencia, la Federación Peruana de Cajas Municipales de Ahorro y Crédito (FEPCMAC) y el Fondo de Cajas Municipales de Ahorro y Crédito (FOCMAC), en tanto no se contrapongan con las normativas específicas que regulen el accionar de estas empresas. Artículo 2º.- Definiciones Para la aplicación de la presente Norma deberán considerarse las siguientes definiciones: a) Apetito por el riesgo.- El nivel de riesgo que la empresa está dispuesta a asumir en su búsqueda de rentabilidad y valor. b) Casa Matriz.- Se refiere a la sociedad principal o a la que ejerza el control en un conglomerado financiero o mixto. c) Control interno.- Un proceso, realizado por el Directorio, la Gerencia y el personal, diseñado para proveer un aseguramiento razonable en el logro de objetivos referidos a la eficacia...

Words: 5903 - Pages: 24

Free Essay

Corpbanca Case

...CORPBANCA INFORME DE CLASIFICACION Junio 2015 May. 2014 AA Estables Solvencia Perspectivas May. 2015 AA Estables * Detalle de clasificaciones en Anexo Resumen financiero En miles de millones de pesos de cada periodo Dic.13 Dic. 14 Mar. 15 Activos Totales 17.377,3 20.147,0 19.631,2 Colocaciones totales netas 12.777,8 13.891,9 14.084,8 Pasivos exigibles 14.288,8 16.858,3 16.519,1 Patrimonio 1.717,0 1.767,0 1.722,8 Ingreso Operacional Total (IOT) 678,8 960,8 220,1 Provisiones netas 101,4 132,5 39,0 Gastos de apoyo (GA) 346,9 485,4 112,6 Resultado antes Impuesto (RAI) 231,7 344,7 69,4 Indicadores relevantes 4,5% 5,0% 4,4% 2,3% 2,5% 2,3% 1,8% 1,5% 1,4% 0,7% 0,7%0,8% IOT / Activos (1) Prov. / Activos Dic. 13 GA / Activos Dic. 14 RAI / Activos Mar. 15 Adecuación de capital Dic.13 Dic. 14 Mar. 15 Capital básico / APRC 9,4% Patrimonio Efectivo / APRC Patrimonio Efectivo / APRC + RM 13,2% 11,3% 8,6% 8,2% 12,4% 11,8% 10,2% 10,0%(3) Notas: (1) APRC: Activos ponderados por riesgo de crédito; (2) APRC + RM: Activos ponderados por riesgo de crédito más estimación activos ponderados por riesgo de mercado.(3) indicador corresponde a febrero de 2015. Perfil de negocios Capacidad de generación Adecuación de capital Administración de riesgos Fondeo y liquidez Muy Fuerte Fuerte Adecuado Moderado Débil Principales...

Words: 8059 - Pages: 33

Free Essay

Materia de Grado Avance 1

...TEMA: “DISEÑO DE UN SISTEMA CONTROL DE GESTIÓN BASADO EN EL MÉTODO BALANCED SCORECARD EN EL CENTRO DE INVESTIGACIONES CIPAT-ESPOL’’ MISIÓN Establecer relaciones de máximo servicio a la comunidad empresarial, pública y social, ayudando a resolver los problemas técnicos de las Ciencias de la Tierra. VISIÓN Servir a la sociedad ofreciendo alternativas de solución para un desarrollo sostenible. SLOGAN “Un sendero de servicio y vocación a la sostenibilidad.” ANTECEDENTES Balance ScoreCard es una metodología que utiliza indicadores relevantes, ya sea Administrativa, Financiera u de otra indole que brinden la información necesaria , para tomar medidas preventivas o correctivas , y asi alcanzar la Mision de la empresa. El Proyecto de Plan estratégico utilizando la metodología de Balance ScoreCard en el Centro de Investigaciones y Proyectos Aplicados a las Ciencias de la Tierra (CIPAT-ESPOL) situado en la Ciudad de Guayaquil, con una calificación de Auditoria Interna de ESPOL que le Brinda una Categoría A, en la Gestión de Proyectos e Investigaciones con Calidad. PLANTEAMIENTO DEL PROBLEMA OBJETIVOS OBJETIVO GENERAL Diseñar el Plan Estratégico de gestión Balance Scorecard, que permita realizar un Diagnóstico del Centro de Investigaciones CIPAT-ESPOL con un sistema de gestión y medición, alineando sus ideales a la misión y visión del Centro de Investigaciones. Permitiéndole que adopte con mayor facilidad la metodología del Sistema Gobierno por Resultado(GPR) ,que...

Words: 423 - Pages: 2

Free Essay

Caso Ikea

...escenario aduanero, especialmente al momento de una importación, obteniendo la posibilidad de poder realizar despacho anticipado con la finalidad de agilizar el proceso de obtención de la mercadería. Junto a este, han surgido nuevas técnicas y conceptos de la administración en aduana, los cuales han aportado muchos beneficios en diferentes aspectos (organizacional, económico, tiempo, etc.). Los que trabajamos en este proyecto identificamos muy beneficioso esta modalidad de despacho para las empresas que cuentan con la logística suficiente de transporte, lugar de almacenamiento, entre otros, por ello que hacemos una investigación para poder aplicar esta metodología en la empresa escogida, Química Suiza. El empleo del despacho anticipado es una alternativa viable para que aumente su competitividad y rentabilidad en sus procesos, puesto que disminuirá los costos de almacén en el puerto realizándolo en uno propio. Esto, junto a que química suiza tiene una media promedio por mes es de 125 contenedores con lo cual podría avatar considerablemente su costo. Por ello, les presentamos el informe que se realizo para identificar los beneficios que obtendríamos e indicar las acciones que se debe de realizar en función a Quimica Suiza, Required information - Name of the Company QUIMICA SUIZA   - Vision and Mission Visión: Tener un grupo de empresas internacionales, especializadas en el desarrollo y la comercialización de productos de calidad y éxito. Asimismo, ser la opción...

Words: 634 - Pages: 3

Free Essay

Test

...Versión traducida de CAP6.doc ne of the primary features that distinguishes project management Una de las principales características que distingue a la gestión de proyectos de la dirección general es la atención especial a programación. Remember from chapter 1 that Dr. JM Juran Dr. JM Juran dice que un proyecto es un problema programado para la solución. Unfortunately, some people Scheduling is just one of the tools usedLa programación es sólo una de las herramientas utilizadas to manage jobs and should not be considered the primary one. para administrar los trabajos y no debe ser considerado el principal. People today tend to acquire scheduling La gente de hoy tienden a adquirir la programación software, de los cuales hay abundancia, and think that will make them y pensar que los hacen los gestores de proyectos instantánea. They soon find No tardaron en encontrar que esa idea es equivocada. In fact, it is nearly Esimpossible to use the software effectively imposible utilizar el software de forma eficaz unless you understand project management a menos que entienda de gestión de proyecto (and scheduling methodology in (Y la programación de la metodología en particular). en particular). Gestión de proyectos no es sólo programación. Suggestion: Whatever Sugerencia: Sea cual sea programación software que elegir, obtener algunos formación profesional sobre cómo usarlo. In the early days of personal computers, there was aDo check out the instructor's knowledge of project...

Words: 2765 - Pages: 12

Free Essay

La Importancia Que Las Ti

...La importancia que las TI han alcanzado hoy en día es enorme. Ha dejado de ser una herramienta de soporte y/o un área accesoria para convertirse en algún totalmente necesario para cualquier empresa. Hoy en día es impensable concebir una empresa que no use las tecnologías de la información para la gestión del día a día; desde las formas más básicas como el uso de una hoja Excel o del correo electrónico hasta implantaciones de inteligencia de negocios y minería de datos. Pero de cualquier modo, son muchos los problemas que se presentan al gestionar estas Tecnologías de la Información, principalmente en el sentido de cómo lograr que las TI conlleven a una ventaja para la organización, como hacer que las TI sean una inversión con retorno y no solamente un gasto necesario. Es por ello que se han creado en la industria diversos marcos de trabajo y mejores prácticas que buscan eliminar estas problemáticas. Estas mejores prácticas se han convertido en estándares de la industria, tales es así que su implantación se ha convertido en los últimos años en una necesidad para aquellas empresas que deseen gestionar las TI adecuadamente y lograr ventajas de negocio de las mismas. Los problemas Como se mencionó anteriormente, los problemas al gestionar las TI son diversos y en distintas materias. De ellos, se rescatan los principales a continuación: Mala gestión de proyectos TI Toda iniciativa de TI que se desee implementar se debe gestionar como un proyecto, es decir: bajo un ...

Words: 267 - Pages: 2

Free Essay

Cadena Critica

...CRITICA ELIYAHU M. GOLDRATT “La incertidumbre existente en todo proyecto es la principal causa subyacente de la mayoría de los problemas”. (Goldratt) Es un libro que empalma diferentes escenarios, a través del cual se presentan discusiones sobre la gestión de proyectos, la gran cantidad de ejemplos y analogías ayudan a entender con mayor claridad la aplicación de las teorías. La historia principal de Cadena Critica es sobre un profesor que esta tratando de triunfar en el mundo académico, siendo profesor de la escuela de negocios de una institución. Se desarrolla la historia en torno a la búsqueda y aplicación de nuevos conceptos de gestión para hacer eficiente la administración de los proyectos. Rich constantemente investiga y desarrolla ideas que posteriormente plasma en artículos relacionados a los problemas comunes en proyectos. Así mismo, Rich está tratando de convertirse en profesor titular. Mientras que la escuela de negocios se enfrenta al reto de aumentar y mejorar su matrícula. Goldratt entrelaza algunas historias para definir su objetivo y plantear la aplicación de la Teoría de las Restricciones (TOC) en la administración de proyectos. El autor supone que los sistemas educativos deben cambiar para adaptarse mejor al acelerado cambio en el mundo de los negocios. Algunos personajes secundarios son los alumnos de Rich, sus colegas y personal de una empresa llamada “genemodem”. Para esta empresa menciona a Daniel Pullman (Presidente del Consejo directivo...

Words: 1580 - Pages: 7

Free Essay

Trabajo Individual Semana 5

...Medición De Rendimiento University of Phoenix MGT/437 Project Management Prof. Javier Maury Ortiz 23 de enero del 2012 Medición De Rendimiento Las empresas siempre están en la búsqueda de cómo verificar si la organización y los departamentos están dentro del éxito. Ye sea mediante el mejoramiento dentro de un grupo de trabajo o dentro de toda la organización tiene que haber algún tipo de retroalimentación para el medir el desarrollo completo. Esto quiere decir que el empleado, el trabajo en grupo o la compañía entera recibo retroalimentación sobre los resultados realizados. Para cualquier empleado, el rendimiento que es medido crea un vínculo entre la manera de comportarse en el trabajo y el trabajar con otras personas para poder alcanzar metas individuales y organizacionales. Las organizaciones también miden el desempeño global para poder tomar las decisiones empresariales sobre la forma de cumplir con las metas de la organización. En este articulo se discutirá el tema de medición de desempeño, la forma en que se puede utilizar dentro de la empresa por loe empleados y el tipo de medida que funciona para la mayoría de las organizaciones. En general, se mostrará la importancia de la administración del rendimiento y cómo puede afectar a cualquier organización. Cualquier dueño de un negocio dirá que la mejor forma de medir una empresa es mediante la cantidad de dinero que la organización está haciendo realmente. Esta es la ganancia que la empresa realiza después...

Words: 903 - Pages: 4

Free Essay

Prmg

...Planificación de Alcance Jacqueline Rodríguez Universidad Metropolitana 2 de junio de 2016 Profesor José Rivera Instrucciones 1. El/La estudiante realizará búsquedas electrónicas en la base de datos de la Institución o cualquier motor de búsqueda, utilizando palabras relacionadas con el contenido disponibles en los objetivos específicos del curso. * Conceptos Generales del PMBOK: Grupos de los Procesos (5 grupos) * Grupos de los procesos de iniciación: Según Sánchez, Arias (2010) el primer proceso que es la fase de iniciación se compone de procesos que facilitan la autorización formal para comenzar un nuevo proyecto o una fase del mismo. Esto denota solamente un proceso de autorizaciones para dar inicio a la constitución formal del proyecto, en el que las necesidades han sido entendidas y analizadas. * Grupo de procesos de planificación: En este proceso, el componente de gestión en lo concerniente a las operaciones es visto como consistente en la creación, revisión e implementación centralizada de planes, y al asumirse que poner un plan en acción es solo cuestión de emitir órdenes, la producción del plan resulta ser un sinónimo de acción (Koskela y Howell, 2002). * Grupo de procesos de ejecución: En una perspectiva teórica de producción, Koskela y Howell rescatan como única referencia directa de la interface común entre plan y trabajo, la relacionada con el sistema entre plan y trabajo, y en ese caso, la comunicación oral o escrita de autorizaciones de inicio...

Words: 4706 - Pages: 19