Вы находитесь на странице: 1из 92

Projet de synthse

Cartographie des solutions de scurit dans le monde du logiciel libre


MGL9701 - Projet en gnie logiciel

Michel Htu - UQAM

Version 2.7 2009-12-02

MGL9701 - Projet en gnie logiciel

Historique des rvisions


Version 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2.0 2.1 2.2 2.3 2.4 2.5 2.6 2.7 Date 2009-02-01 2009-02-02 2009-03-14 2009-03-21 2009-03-22 2009-04-04 2009-04-11 2009-04-13 2009-04-18 2009-04-26 2009-05-10 2009-05-17 2009-05-23 2009-06-06 2009-07-20 2009-07-21 2009-07-23 2009-07-24 2009-07-26 2009-08-30 2009-09-06 2009-09-20 2009-09-27 2009-10-03 2009-11-18 2009-11-29 2009-12-02 Description Cration du document Ajout du cadre de rfrence et de la bibliographie Ajout de la section 2 Ajout des rfrences web Ajout des sections 3 et 4 Ajout de la section 5 Ajout de la section 6 et 7.5 et 7.6 Ajout de la section 5.6 et 5.7 Ajout de la section 7.1 7.4 Ajout de la section 8 Ajout la section 8 Ajout de la section 5.2 et section 5.9 Ajout la section 9.2 Ajout du graphique en section 10 Rvisions Ajout des normes 27000 Ajout des normes COSO, COBIT, ITIL Rvisions Rvisions des rfrences Ajout de la figure en 2.7 Ajout de PostgreSQL la section 6.6 Ajout la section 6.6 Ajout de la section 12 Ajout la section 12 Rvisions Rvisions Rvisions Rvisions Auteurs Michel Htu Michel Htu Michel Htu Michel Htu Michel Htu Michel Htu Michel Htu Michel Htu Michel Htu Michel Htu Michel Htu Michel Htu Michel Htu Michel Htu Michel Htu Michel Htu Michel Htu Michel Htu Michel Htu Michel Htu Michel Htu Michel Htu Michel Htu Michel Htu Michel Htu Michel Htu Michel Htu

MGL9701 - Projet en gnie logiciel

Table des matires


Historique des rvisions.................................................................................................... 1 Table des matires............................................................................................................. 2 Liste des figures................................................................................................................. 4 Liste des tableaux.............................................................................................................. 5 Sigles et abrviations......................................................................................................... 7 1 Introduction ........................................................................................................... 9
1.1 1.2 Contexte..................................................................................................................................9 But et porte............................................................................................................................9

Les normes............................................................................................................ 12
2.1 2.2 2.3 2.4 2.5 2.6 2.7 Les certifications du domaine de la scurit .........................................................................13 Le rfrentiel COSO .............................................................................................................14 Le rfrentiel COBIT............................................................................................................14 Le rfrentiel ITIL ................................................................................................................14 ISO 13335 : Lignes directrices pour la gestion de scurit IT ..............................................15 ISO 15408 : Critres dvaluation de la scurit des technologies de linformation ............16 Les normes ISO 27000 .........................................................................................................17

Intgrit ................................................................................................................ 20
3.1 3.2 3.3 3.4 Certificat cl publique de signature....................................................................................20 Code dauthentification de message .....................................................................................22 Empreinte numrique............................................................................................................23 Notarisation ..........................................................................................................................24

Irrvocabilit........................................................................................................ 25
4.1 4.2 4.3 Certificat cl publique de signature....................................................................................25 Journalisation........................................................................................................................25 Conservation .........................................................................................................................27

Identification et authentification........................................................................ 28
5.1 5.2 5.3 5.4 5.5 5.6 Certificat cl publique de signature....................................................................................30 Code dusager .......................................................................................................................30 Mot de passe .........................................................................................................................30 Jeton......................................................................................................................................31 Carte puce ..........................................................................................................................32 Biomtrie ..............................................................................................................................32

Habilitation et contrle daccs .......................................................................... 33


6.1 6.2 6.3 6.4 6.5 Gestion des identits et des accs .........................................................................................33 Contrle daccs Web...........................................................................................................36 Certificat dattribut ...............................................................................................................37 NOS/OS ................................................................................................................................38 Application ...........................................................................................................................39

MGL9701 - Projet en gnie logiciel


6.6 6.7 6.8 6.9 Apparmor..............................................................................................................................39 SGBD ...................................................................................................................................41 Coupe-feu .............................................................................................................................45 Rseau Priv Virtuel .............................................................................................................47

Confidentialit...................................................................................................... 49
7.1 7.2 7.3 Certificat cl publique de chiffrement................................................................................49 Chiffrement des donnes ......................................................................................................50 Chiffrement des communications .........................................................................................51

Disponibilit ......................................................................................................... 52
8.1 8.2 8.3 8.4 8.5 8.6 Redondance ..........................................................................................................................53 Balancement des charges ......................................................................................................56 Mise en grappes ....................................................................................................................59 Relve ...................................................................................................................................60 Sauvegarde............................................................................................................................61 Conservation .........................................................................................................................62

Surveillance .......................................................................................................... 63
9.1 9.2 9.3 9.4 9.5 9.6 9.7 Surveillance rseau, serveur et station ..................................................................................63 Dtection des intrusions........................................................................................................64 Analyseur de vulnrabilits ..................................................................................................66 Moniteur de contenu actif .....................................................................................................67 Dtection des pourriels .........................................................................................................68 Dtection de virus .................................................................................................................68 Outils daudit ........................................................................................................................69

10

Administration ..................................................................................................... 70
10.1 10.2 10.3 Administration matrielle .....................................................................................................70 Administration logicielle ......................................................................................................70 Administration rseau ...........................................................................................................73

11 12

Architecture de scurit ...................................................................................... 74 Recommandations pour les logiciels de la chaire ............................................. 75


12.1 12.2 12.3 12.4 12.5 12.6 12.7 12.8 Les approches de scurit pour les applications ...................................................................75 Pensez la scurit ds le dpart ..........................................................................................76 Topologie des applications ...................................................................................................77 La sgrgation est la cl........................................................................................................77 Les solutions de scurit web les plus populaires.................................................................79 La solution recommande.....................................................................................................80 Les points de contrle de scurit.........................................................................................81 Modle de dploiement recommand ...................................................................................85

13 14

Conclusion ............................................................................................................ 87 Bibliographie........................................................................................................ 88

MGL9701 - Projet en gnie logiciel

Liste des figures


Figure 1 Cadre de rfrence [adapt de 21] ................................................................................11 Figure 2 - Principaux rfrentiels [28] .............................................................................................13 Figure 3 - La norme ISO 13335 (source : ysosecure) .....................................................................15 Figure 4 - La norme ISO 27002 (source : SSI-Conseil)...................................................................17 Figure 5 - La roue de Deming (source : SSI-Conseil 2006).............................................................18 Figure 6 - Le processus d'un SMSI [9] ............................................................................................18 Figure 7 - Les normes 27000 ..........................................................................................................19 Figure 8 - Signature numrique [29]................................................................................................20 Figure 9 - La solution EJBCA..........................................................................................................21 Figure 10 - Code d'authentification de message .............................................................................22 Figure 11 - Solution de notarisation ................................................................................................24 Figure 12 - La journalisation avec Lasso.........................................................................................26 Figure 13 - La conservation avec splunk.........................................................................................27 Figure 14 - La gestion de jeton........................................................................................................31 Figure 15 - La gestion des identits et des accs ...........................................................................34 Figure 16 - Gestion avance des annuaires LDAP .........................................................................35 Figure 17 - La solution OpenSSO ...................................................................................................36 Figure 18 - Contrle d'accs Web...................................................................................................36 Figure 19 - Certificats d'attributs [29]...............................................................................................37 Figure 20 - Gestion conviviale des pare-feux..................................................................................46 Figure 21 - Rseau priv virtuel ......................................................................................................47 Figure 22 - Rseau priv virtuel avec IPSec ...................................................................................48 Figure 23 - Le chiffrement asymtrique [48]....................................................................................49 Figure 24 - Chiffrement des communications (source : Wikipedia) .................................................51 Figure 25 - Solution de stockage distribu ......................................................................................54 Figure 26 - Rseau de stockage .....................................................................................................55 Figure 27 - quilibrage de la charge ...............................................................................................58 Figure 28 - Mise en grappes ...........................................................................................................59 Figure 29 - Solution de sauvegarde ................................................................................................61 Figure 30 - Surveillance de rseau .................................................................................................63

MGL9701 - Projet en gnie logiciel Figure 31 - Gestion d'incidents et d'vnements.............................................................................64 Figure 32 - Dtection des intrusions................................................................................................65 Figure 33 - Moniteur de contenu actif..............................................................................................67 Figure 34 - Gestion des images des serveurs.................................................................................71 Figure 35 - La virtualisation.............................................................................................................72 Figure 36 - Le contrle d'accs au rseau ......................................................................................73 Figure 37 - Architecture de scurit en logiciel libre........................................................................74 Figure 38 - Rgle d'accs avec OpenSSO......................................................................................75 Figure 39 - Structure dun site web .................................................................................................76 Figure 40 - Le modle de rles .......................................................................................................76 Figure 41 - Architecture multicouche [26]........................................................................................77 Figure 42 - La sgrgation est la cl [26] ........................................................................................78 Figure 43 - Gestionnaire d'accs (source : Sun) .............................................................................80 Figure 44 - Les points de contrle de scurit ................................................................................81 Figure 45 Exemple de Captcha....................................................................................................82 Figure 46 Dtection des attaques (source : OWASP) ..................................................................83 Figure 47 - Apache comme serveur en faade (source : IBM) ........................................................84 Figure 48 - Scnario de dploiment ................................................................................................86

Liste des tableaux


Table 1 Les fonctions de scurit.................................................................................................10 Table 2 - Les principales normes de la scurit..............................................................................12 Table 3 Les principaux systmes de journalisation ......................................................................25 Table 4 - Les implantations syslog conformes la norme RFC 3195 ......................................26 Table 5 Les principales solutions d'authentification......................................................................29 Table 6 - Les fonctions cryptographiques de PostgreSQL ..............................................................44 Table 7 - Les modes d'opration de OpenVPN...............................................................................47 Table 8 - Mesure de la disponibilit.................................................................................................52 Table 9 Les composantes dun systme de relve ......................................................................60 Table 10 Les composantes lies la conservation des donnes ................................................62 Table 11 - Les solutions de scurit web les plus populaires..........................................................79 Table 12 Dure de vie des sessions (source : CASES) ...............................................................82 5

MGL9701 - Projet en gnie logiciel Table 13 - Les machines virtuelles et leurs fonctions dans la solution ............................................86

MGL9701 - Projet en gnie logiciel

Sigles et abrviations
ACL AES ARP CARP COBIT COSO CSP DHCP DNS DRBD GBLA HTTP HTTPS ICP IETF IPSec ISAKMP ISO ISO/IEC ITIL JCA JCE LAMP LDAP LGPL MAC MD5 NAS NIST NSA NTP OCSP OGC PEM PKCS PKI PKIX RFC RSA SAN SHA-1 S/MIME SQL Access Control List Advanced Encryption Standard Address Resolution Protocol Common Address Redundancy Protocol Control Objectives for Business & Related Technology Committee of Sponsoring Organization of the Treadway Commission Cryptographic Service Provider Dynamic Host Configuration Protocol Domain Name Service Distributed Replicated Block Device Gramm-Leach-Bliley Act HyperText Transfer Protocol Hypertext Transfer Protocol over Secure Socket Layer Infrastructure cl publique Internet Engineering Task Force Internet Protocol Security Internet Security Association and Key Management Protocol International Organization for Standardization ISO / International Electrotechnical Commission Information Technology Infrastructure Library Java Cryptographic Architecture Java Cryptographic Environment Linux, Apache, MySQL, PHP Lightweight Directory Access Protocol GNU Lesser General Public License Message Authentication Code Message Digest 5 (algorithme de hachage) Network Area Storage National Institute of Standards and Technology National Security Agency Network Time Protocol Online Certificate Status Protocol Office of Government Commerce Privacy Enhanced Mail The Public-Key Cryptography Standards Public-Key Infrastructure Public-Key Infrastructure X.509 Request For Comments Rivest, Shamir et Adleman. Storage Area Network Secure Hash Algorithm Number 1 Secure/Multipurpose Internet Mail Extensions Structured Query Language 7

MGL9701 - Projet en gnie logiciel SMSI SOX SSL SSO TIC TLS RPV XML Systme de Management de la Scurit de lInformation Sarbanes-Oxley Act Secure Socket Layer Single Sign On Technologie de linformation et des communications Transport Layer Service Rseau Virtuel Priv Extensible Markup Language

MGL9701 - Projet en gnie logiciel

1 Introduction
1.1 Contexte
Le sujet du prsent projet a t choisi suite une suggestion de M. Louis Martin qui y voit uvre utile au sein de la Chaire de logiciel libre, Finance sociale et solidaire lance officiellement le 29 janvier 2009. Le but de ce projet de synthse est deffectuer un survol des normes, bonnes pratiques et technologies permettant dassurer la scurit de linformation requise pour la famille de logiciels dveloppe au sein de la Chaire pour ce secteur d'activit. La chaire se veut un incubateur de solutions et de composantes de logiciel libre pouvant tre utilises par les acteurs de lconomie sociale. Lobjectif de ce projet est de cartographier les solutions libres pouvant servir la conception darchitectures de scurit en accord avec les bonnes pratiques du domaine. Le monde du logiciel libre offre quantit de solutions de scurit. Ces solutions sont disponibles publiquement de l'Internet et peuvent tre tlcharges volont et utilises sans frais. Ce principe saccorde bien avec celui de lconomie sociale. Ce projet de synthse sintresse aux questions suivantes : 1. Est-ce que le portfolio des solutions de scurit disponibles de l'Internet fournit un nombre suffisant de briques technologiques pour combler les besoins de scurit dune architecture de scurit moderne? 2. Est-il concevable de crer une architecture de scurit partir de ces solutions?

1.2 But et porte


Ce document comporte trois volets. Le premier volet effectue un survol des normes les plus importantes rgissant le domaine de la scurit de linformation. Ces normes ont une porte internationale. Elles constituent un ensemble de rfrentiels rpertoriant les meilleures pratiques de lindustrie permettant dtablir un modle de gouvernance des TIC dans lentreprise. Le second volet effectue un inventaire des solutions issues du monde du logiciel libre en fonction dun cadre de rfrence manant du Ministre de la Sant et des Services sociaux [21]. Cet inventaire servira de rfrentiel de solutions pour les architectures de scurit conues dans le cadre des travaux de la Chaire. Finalement, le troisime volet portera une attention particulire la scurit logicielle. Il sattardera notamment la scurit des applications web afin dapporter des solutions pratiques aux dveloppeurs. Les solutions proposes viseront les plateformes de dveloppement et les technologies en usage au sein de la Chaire.

MGL9701 - Projet en gnie logiciel

1.2.1

Les fonctions de scurit

Le tableau suivant donne un aperu des principales fonctions de scurit inhrentes aux architectures de scurit modernes. Une architecture de scurit englobe un nombre important de processus, de composantes physiques et technologiques ayant pour but dassurer la scurit de linformation et des changes lectroniques. Les fonctions de scurit couvertes dans le cadre de ce projet sont les suivantes: Fonctions Descriptions Cette fonction permet de sassurer quune information na pas t modifie ou dtruite sans autorisation de faon volontaire ou accidentelle. Lirrvocabilit est un mcanisme visant permettre une partie de faire la preuve de lexistence dune opration ou dune transaction avec une autre partie. La signature permet de sassurer quune action ou quun document est indniable et clairement attribu lentit qui la gnr. La fonction dauthentification consiste vrifier l'identit d'une entit (personne, ordinateur) afin d'autoriser l'accs de cette entit des ressources. Le contrle daccs dcrit une liste de ressources et de donnes auxquelles une entit peut avoir accs une fois quelle a t dment authentifie. Elle contrle les droits daccs qui sont accords et pour poser quels gestes. La confidentialit permet de sassurer quune information nest pas divulgue ou mise la disposition dune entit ou dun traitement non autoris. La disponibilit permet de sassurer que les informations numriques et les systmes sont accessibles en temps voulu et de la manire requise par une entit autorise. La surveillance a pour but de mettre en vidence les vulnrabilits dun systme. Elle offre des pistes de vrification et permet la protection contre les tentatives dintrusion et les programmes malicieux. Ladministration permet une gestion scuritaire des logiciels, ainsi que des quipements informatiques et de rseautique.
Table 1 Les fonctions de scurit

10

MGL9701 - Projet en gnie logiciel 1.2.2 Cadre de rfrence de la scurit

La figure qui suit traduit les fonctions de scurit considres prcdemment en un ensemble de mcanismes de scurit apte raliser ces fonctions. Ces fonctions et mcanismes constituent le rfrentiel de scurit qui sera utilis tout au long de ce document. Ce rfrentiel de scurit est utilis comme guide pour la recherche de solutions dans le domaine du logiciel libre pouvant combler les diffrentes briques darchitecture requise. Une modification a toutefois t apporte au rfrentiel afin dinclure le mcanisme de scurit de la Gestion des identits et des accs qui gagne de plus en plus dimportance dans les architectures de scurit modernes.

Figure 1 Cadre de rfrence [adapt de 21]

11

MGL9701 - Projet en gnie logiciel

2 Les normes
Avant daborder la cartographie des solutions de scurit dans le monde du logiciel libre, il convient dtablir un modle de gouvernance permettant de concevoir une architecture de scurit en fonction des besoins de lorganisation et non seulement des technologies. Pour ce faire, nous disposons dun certain nombre de normes que nous expliquerons sommairement dans cette section. Le domaine de la scurit comprend un trs grand nombre de normes mais les normes suivantes constituent une fondation solide pour tablir un modle de gouvernance et une architecture de scurit pour une organisation.

Normes COSO COBIT ITIL ISO/IEC IS 13335-1 ISO/IEC IS 13335-2 ISO/IEC TR 13335-4 ISO/IEC TR 13335-5 ISO/CEI 27000 ISO/CEI 27001

ISO/CEI 27002 ISO/CEI 27003 ISO/CEI 27004 ISO/CEI 27005

ISO/CEI 27006 ISO 15408

Descriptions Committee of Sponsoring Organization of the Treadway Commission [1] Control Objectives for Business & Related Technology [2] Information Technology Infrastructure Library [3] Concepts et modles pour le management de la scurit des TIC [4] Techniques de gestion des risques pour les TIC [5] Slection de mesures de scurit [6] Guide pour la gestion de scurit du rseau [7] Introduction et vue globale de la famille des standards, ainsi qu'un glossaire des termes communs [8] Description des exigences pour la mise en place d'un Systme de Management de la Scurit de l'Information (SMSI) [9] Code de bonnes pratiques pour la gestion de la scurit d'information [10] Guide dimplantation dun SMSI [11] Guide dimplantation dun systme de mesure [12] Proposition d'une mthode d'apprciation des risques (cette phase est obligatoire dans le cadre d'une certification ISO/CEI 27001) [13] Contient des informations sur le profil propre de l'auditeur 27001 [14] Critres communs pour l'valuation de la scurit des Technologies de l'Information [15] [16] [17]
Table 2 - Les principales normes de la scurit

12

MGL9701 - Projet en gnie logiciel

2.1 Les certifications du domaine de la scurit


Un domaine dactivit trs populaire dans le monde de la scurit daujourdhui concerne la conformit. Sous la pousse des diffrentes lgislations nes des nombreux scandales financiers connus au dbut de la dcennie, les organisations font face au dfi de la conformit. Les institutions financires et les socits publiques sont soumises des rglementations telles que la loi C-198 au Canada, SOX, GBLA aux tats-Unis qui exigent que les dirigeants dentreprise puissent garantir lintgrit des tats financiers trimestriels quils produisent et consquemment les donnes comptables et les logiciels utiliss pour les produire. Elles sont donc tenues dtablir un modle de gouvernance des TIC et empruntent en gnral la voie de la certification afin de dmontrer cette conformit.
COSO

COBIT
ISO 27001-2

ISO 9000 ITIL

Quoi

Comment

Figure 2 - Principaux rfrentiels [28]

En termes de gouvernance, les normes COSO [1], COBIT [2], ITIL [3] et ISO 27000 sont les plus utilises. Les certifications ISO 20001 [9] et ISO 20002 [10] sont celles directement lies au domaine de la scurit. Le processus de certification ISO 27001/2 est gnralement assez long et coteux. La dure varie en fonction du niveau de maturit de lorganisation en matire de scurit (6 mois 2 ans en moyenne). Les logiciels peuvent galement tre soumis un processus de certification. Cest le cas de la certification ISO 15408 [15] [16] [17]. Les logiciels civils ou militaires peuvent tre classs selon une chelle de confiance de 1 7 que nous verrons plus loin. Ce processus est trs coteux. Quantit de logiciels en libre pourraient obtenir leurs lettres de noblesse en tant certifis. Malheureusement, le cot prohibitif de la certification ISO 15408 (la certification AL4 de Windows 2000 aurait cot prs de 4 millions de dollars) exclut ces logiciels du processus.

13

MGL9701 - Projet en gnie logiciel Une avenue intressante pour lUQAM serait dobtenir les formations requises afin deffectuer elle-mme ces certifications comme agent autoris par la suite dans le domaine du logiciel libre et de lconomie sociale des cots plus raisonnables.

2.2 Le rfrentiel COSO


Le Committee of Sponsoring Organization of the Treadway Commission a labor un cadre danalyse visant valuer les mesures de contrle interne mises en place par les organisations afin de rendre plus fiable linformation financire dlivre. Ce cadre danalyse, appel rfrentiel COSO, tudie cinq composantes essentielles pour un contrle interne efficace :

Lenvironnement de contrle Lvaluation des risques Les activits de contrle Linformation et la communication La supervision

2.3 Le rfrentiel COBIT


Control Objectives for Business & Related Technology est un rfrentiel des meilleures pratiques en audit et matrise des risques des systmes dinformation. COBIT sert de support pour les activits de gouvernance et daudit des systmes dinformation dun grand nombre dentreprises prives et publiques. COBIT permet dvaluer et de contrler les systmes informatiques afin quil contribue constamment aux objectifs de lentreprise. COBIT reprsente tout systme dinformation par 34 processus regroups en 4 domaines:

Planification et organisation (PO) Acquisition et mise en place (AMP) Distribution et support (DS) Surveillance (S)

2.4 Le rfrentiel ITIL


Information Technology Infrastructure Library est un rfrentiel des meilleures pratiques de la gestion des services informatiques. ITIL a t dvelopp par lOffice of Government Commerce (OGC) britannique et est maintenant adopt par les grandes entreprises internationales tant dans le secteur public que priv. ITIL dcrit les processus de gestion implmenter dans les fonctions de gestion suivantes :

Gestion de la configuration Gestion du changement Gestion des versions Gestion du support

14

MGL9701 - Projet en gnie logiciel


Gestion des incidents Gestion des problmes Gestion de la scurit

ITIL propose de manire dtaille les processus de gestion utiliser pour grer efficacement les services informatiques mais en bout de ligne laisse les entreprises choisir les outils requis pour implmenter ces processus.

2.5 ISO 13335 : Lignes directrices pour la gestion de scurit IT


La norme ISO 13335 [4] [5] [6] [7] propose une approche du management de la scurit des technologies de linformation. Elle aborde le sujet diffrents niveaux dans ses rapports techniques 13335-1 13335-5. Elle trouve son origine des quatre documents publis en 1996 considrs comme des rfrences dans le monde de la scurit.

Figure 3 - La norme ISO 13335 (source : ysosecure)

Aujourdhui, la norme a t rvise. Elle propose dabord une approche stratgique dans ses parties 13335-1 et 13335-2. La premire partie prsente les concepts et modles de la scurit des technologies de linformation. La seconde propose une approche du management et de la planification de la scurit des technologies de linformation. Ces deux parties sont destines donner aux dirigeants et aux responsables de la scurit de linformation dune organisation, les concepts et mthodes relatifs au management de la scurit des technologies de linformation. Les deux autres documents sont des rapports techniques. ISO/IEC IS 13335-1 : Concepts et modles pour le management de la scurit des TIC. ISO/IEC IS 13335-2 : Techniques de gestion des risques pour les TIC. SO/IEC TR 13335-4 2000: Slection de mesures de scurit. ISO/IEC TR 13335-5 2001: Guide pour la gestion de scurit du rseau.

15

MGL9701 - Projet en gnie logiciel

2.6 ISO 15408 : Critres dvaluation de la scurit des technologies de linformation


La norme ISO 15408 [15] [16] [17] baptise Critres communs permet de certifier les niveaux de dfense procurs par les composantes de scurit des systmes d'information. Cette norme vise vrifier si un produit est scuritaire (pare-feu, systme de dtection dintrusion, systme dexploitation, serveur mandataire, etc.). Elle attribue au produit valu un niveau de scurit sur une chelle de 1 7. La norme ISO 15408 dfinit les critres communs de scurit que les technologies doivent respecter. Ces critres communs permettent lvaluation des fonctions de scurit via les onze classes fonctionnelles suivantes :

L'audit La communication Le support cryptographique La protection des donnes utilisateur L'identification et l'authentification La gestion des fonctions de scurit La vie prive La protection des fonctions de scurit L'utilisation des ressources Laccs aux composantes Les voies de confiance (trusted paths)

Le nom de "Critres communs" origine du fait que les critres de validation sont communs entre les grands pays industriels tels que les tats-Unis, le Japon, le Canada, lAllemagne, la Grande-Bretagne, la France, lItalie, etc. Les EAL (Evaluation Assurance Level) constituent l'chelle d'assurance prdfinie des "Critres communs". Il y a sept niveaux :

EAL1 - Test fonctionnellement EAL2 - Test structurellement EAL3 - Test et vrifi mthodiquement EAL4 - Conu, test et vrifi mthodiquement EAL5 - Conu et test de faon semi-formelle EAL6 - Vrifi, conu et test de faon semi-formelle EAL7 -Vrifi, conu et test de faon formelle

La norme ISO 15408 affecte donc la manire de concevoir et de raliser un logiciel. Les logiciels commerciaux certifis selon la norme ISO 15408 ne dpassent pas normalement le niveau EAL4. Les niveaux suprieurs tant en gnral observs chez les systmes critiques que lon retrouve dans le monde militaire.

16

MGL9701 - Projet en gnie logiciel

2.7 Les normes ISO 27000


La srie ISO 27000 constitue lensemble de normes le plus en vogue aujourdhui. Les deux normes les plus utilises en ce moment sont les normes ISO 27001 [9] et ISO 27002 [10]. La norme ISO 27002 notamment constitue le rfrentiel des bonnes pratiques de la scurit le plus populaire du monde de la scurit. La norme ISO/IEC 27002:2005 dfinit onze domaines de scurit de l'information au sein desquelles ont t dfinies 133 mesures de scurit (contrles). Chacune des mesures de scurit permet de s'assurer que les bonnes pratiques communment admises sont mises en uvre et respectes pour chacune des catgories dans chaque domaine de la scurit de l'information.

Figure 4 - La norme ISO 27002 (source : SSI-Conseil)

La figure ci-dessus comprend douze branches plutt que onze car elle inclut la gestion du risque comme premire tape tout projet en scurit. La norme ISO 27001 est un cadre de rfrence pour tout systme de gestion de la scurit de linformation. La norme ISO 27001 dcrit les processus de gestion mettre en uvre afin de se conformer aux bonnes pratiques de scurit dictes dans la norme ISO 20002. La norme ISO 27001 tudie et value un systme de gestion de la scurit de linformation selon diffrents axes :

17

MGL9701 - Projet en gnie logiciel


Politique de scurit Organisation de la scurit Inventaire et classification Scurit du personnel Scurit de lenvironnement et des biens physiques Administration Contrle daccs Dveloppement et maintenance Plan de continuit Conformit lgale et audit de contrle

La prsente norme internationale encourage l'adoption d'une approche processus pour l'tablissement, la mise en oeuvre, le fonctionnement, la surveillance et le rexamen, la mise jour et l'amlioration du SMSI (systme de management de la scurit de linformation) d'un organisme.

Figure 5 - La roue de Deming (source : SSI-Conseil 2006)

La norme adopte le modle de processus "Planifier-Dployer-Contrler-Agir" (PDCA) ou roue de Deming qui est appliqu la structure de tous les processus dun SMSI. La figure suivante illustre comment un SMSI utilise comme lment d'entre les exigences relatives la scurit de l'information et les attentes des parties intresses, et comment il produit, par les actions et processus ncessaires, les rsultats de scurit de l'information qui satisfont ces exigences et ces attentes.

Figure 6 - Le processus d'un SMSI [9]

18

MGL9701 - Projet en gnie logiciel La norme ISO 27001 est en somme le moteur animant les autres normes de la srie. Parmi les normes prsentes dans la srie 27000, les normes suivantes sont celles les plus intimement lies la norme ISO 27001.

Figure 7 - Les normes 27000

2.7.1

Standards publis ISO/CEI 27001 : Standard de certification des SMSI (publi en 2005) ISO/CEI 27002 : Guide des bonnes pratiques en SMSI (prcdemment connu sous le nom de ISO/CEI 17799, et avant BS 7799 Partie 1 (dernire rvision en 2005, et renumrot en ISO/CEI 27002:2005 en juillet 2007) ISO/CEI 27005 : Standard de gestion de risques lis la scurit de l'information (publi le 4 juin 2008) ISO/CEI 27006 : Guide de processus de certification et d'enregistrement (publi en 2007) ISO/CEI 27011 : Guide pour l'implmentation de ISO/CEI 27002 dans l'industrie des tlcommunications (publi le 15 dcembre 2008) ISO/CEI 27799 : Guide pour l'implmentation de ISO/CEI 27002 dans l'industrie de la sant (publi le 12 juin 2008) (sera srement renomm en 2701x)

2.7.2

Standards en prparation ISO/CEI 27000 : Introduction et vue globale de la famille des standards, ainsi qu'un glossaire des termes communs ISO/CEI 27003 : Guide d'implmentation d'un SMSI ISO/CEI 27004 : Standard de mesures de management de la scurit de l'information ISO/CEI 27007 : Guide directeur pour l'audit des SMSI

19

MGL9701 - Projet en gnie logiciel

3 Intgrit
L'intgrit des donnes est une fonction de base du monde de la scurit. Elle fournit lassurance que les donnes quelles soient en cours de traitement, transmises ou encore conserves, soient maintenues exemptes daltration volontaire ou accidentelle. Cette section explorera les mcanismes de scurit utiliss gnralement pour sassurer que les donnes sont exactes et authentiques.

3.1 Certificat cl publique de signature

Les certificats de signature sont gnralement utiliss pour signer des documents (fichiers et courriels) ou encore s'authentifier sur un site web. La signature numrique est une marque personnelle appose sur un document lectronique par l'utilisation d'un procd cryptographique. Elle permet de sassurer de l'identit du signataire dun document. Chaque dtenteur se voit attribuer une paire de cls. Une delles est publique et lautre prive. La cl publique est gnralement disponible aux autres utilisateurs utilisant linfrastructure cl publique. Elle sert protger la confidentialit d'un document et vrifier la signature d'un autre dtenteur. La cl prive est dtenue uniquement par le dtenteur. L'une sert signer un document lectronique et l'autre le dchiffrer pour en vrifier l'intgrit.

Figure 8 - Signature numrique [29]

Afin de s'assurer de la validit d'une signature, le destinataire doit consulter la liste de certificats rvoqus publie par la solution. La consultation de la liste de rvocation se fait en ligne et de faon automatique lors de l'utilisation du logiciel intgrant cette technologie.

20

MGL9701 - Projet en gnie logiciel La procdure permettant de signer des donnes est relativement simple comme en tmoigne lexemple suivant : Signature dsa = Signature.getInstance("SHA1withDSA"); PrivateKey priv = pair.getPrivate(); dsa.initSign(priv); dsa.update(data); byte[] sig = dsa.sign();

La mise en uvre dune infrastructure cls publiques ncessite plusieurs composantes logicielles et surtout la dfinition dun ensemble de processus nomm CPS Certificate Practice Statement permettant la gestion du cycle de vie des certificats mis par le systme.

Figure 9 - La solution EJBCA

Une solution gratuite peut tre obtenue via le lien suivant : http://www.ejbca.org/

21

MGL9701 - Projet en gnie logiciel

3.2 Code dauthentification de message

Un code d'authentification de message ou CAM est un code accompagnant des donnes dans le but d'assurer l'intgrit de ces dernires, en permettant de vrifier qu'elles n'ont subies aucune modification, aprs une transmission par exemple. Le concept est relativement semblable aux fonctions de hachage. Il sagit ici aussi dalgorithmes qui crent un petit bloc de donnes de taille fixe. La grande diffrence est que ce bloc ne se base plus uniquement sur le message, mais galement sur une cl secrte. Tout comme les fonctions de hachage, les CAM nont pas besoin dtre rversibles. En effet, le rcepteur excutera le mme calcul sur le message et le comparera avec le CAM reu. KeyGenerator kg = KeyGenerator.getInstance("HmacMD5"); SecretKey sk = kg.generateKey(); Mac mac = Mac.getInstance("HmacMD5"); mac.init(sk); byte[] result = mac.doFinal("Hi There".getBytes()); Le CAM assure non seulement une fonction de vrification de l'intgrit du message, comme le permettrait une simple fonction de hachage mais de plus authentifie lexpditeur, dtenteur de la cl secrte. Il peut galement tre employ comme un chiffrement supplmentaire (rare) et peut tre calcul avant ou aprs le chiffrement principal, bien quil soit gnralement conseill de le faire avant.

Figure 10 - Code d'authentification de message

http://java.sun.com/javase/6/docs/technotes/guides/security/crypto/CryptoSpec.html

22

MGL9701 - Projet en gnie logiciel

3.3 Empreinte numrique

Le rsultat d'une fonction de hachage forme une empreinte cryptographique ou encore un condens. Les fonctions de hachage peuvent tre mises en uvre aisment grce aux bibliothques cryptographiques offertes par le langage java. En voici en exemple. Supposons que nous avons trois tableaux d'octets soit i1, i2 et i3 formant le message dont nous voulons calculer. Ce digest (ou "hash") pourrait tre calcul par les appels suivants: MessageDigest sha = MessageDigest.getInstance("SHA-1"); sha.update(i1); sha.update(i2); sha.update(i3); byte[] hash = sha.digest();

http://java.sun.com/javase/6/docs/technotes/guides/security/crypto/CryptoSpec.html#Mes sageDigest

Les fonctions cryptographiques de limplantation de rfrence de SUN sont gnralement suffisantes mais pour des fonctions additionnelles, il existe un fournisseur en logiciel libre fournissant une implantation JCE et une JCA gratuite. Limplantation inclut les points suivants: Une bibliothque pour lire et crire des objets encods en ASN.1. Des Gnrateurs pour les versions 1 et 3 des certificats X.509 et des fichiers PKCS12. Des Gnrateurs pour la version 2 des certificats de l'attribut X.509. Des Gnrateurs/Processeurs pour S/MIME et CMS (PKCS7). Des Gnrateurs/Processeurs pour OCSP (RFC 2560). Des Gnrateurs/Processeurs pour TSP (RFC 3161). Des Gnrateurs/Processeurs pour OpenPGP (RFC 2440). Une version jar signe, approprie pour les JDK 1.4/1.5 et la JCE de Sun. L'API lgre fonctionne avec tout, de la J2ME la JDK 1.5.

La solution peut tre obtenue via le lien suivant : http://www.bouncycastle.org/fr/index.html

23

MGL9701 - Projet en gnie logiciel

3.4 Notarisation
Un serveur de signature est une application pour les signatures automatiques. Il peut tre invoqu par dautres applications lui dlguant ainsi lautorit de signer des transactions, messages ou assertions varis de manire centralise. Un bon serveur de signature doit offrir une autorit dhorodatage (compatible RFC 3161). La fonction de signature et la fonction dhorodatage sont des briques fondamentales pouvant permettre de raliser des transactions comportant un bon niveau dintgrit. La notarisation des transactions est lie des rglementations et la classification des donnes. Les preuves lies aux transactions peuvent tre conserves pendant des annes. Le SignServer est une solution gratuite qui a t conue de manire offrir de la haute disponibilit et supporte la configuration par grappes pour un maximum de fiabilit.

Figure 11 - Solution de notarisation

La solution peut tre obtenue via le lien suivant : http://www.signserver.org/

24

MGL9701 - Projet en gnie logiciel

4 Irrvocabilit
Lirrvocabilit est un mcanisme complexe impliquant certaines fonctions cryptographiques et des processus de sorte permettre une partie de faire la preuve de lexistence dune opration ou dune transaction avec une autre partie. Cette preuve ne peut tre assemble que si la partie devant faire la preuve sest dote de linfrastructure ncessaire pour raliser les fonctions de notarisation (serveur de signature), de journalisation (enregistrement des transactions signes par le serveur de signature) et de conservation (dure de vie des journaux en fonction de la classification des donnes) ncessaires pour supporter cette fonction dirrvocabilit.

4.1 Certificat cl publique de signature


La fonction de signature cryptographique a dj t traite la section 2.1. Le mme mcanisme est employ pour raliser la fonction dirrvocabilit.

4.2 Journalisation
La journalisation est l'action de relever dans un journal lensemble des vnements qui se produisent dans un systme informatique pendant son fonctionnement. Des rgles de filtrage permettent en gnral de contrler la somme des vnements collects. Ces journaux sont de la premire importance lorsque lon doit effectuer des activits dinformatique judiciaire. Il nexiste pas de solution unique et les journaux dactivit sont le plus souvent lis aux plateformes. Le tableau suivant dcrit les principaux systmes de journalisation pouvant tre retrouvs sur les plateformes courantes. Plateformes Linux/Unix Applications Systmes de journalisation http://www.infodrom.org/projects/sysklogd/ http://java.sun.com/j2se/1.4.2/docs/guide/util/logging/ http://logging.apache.org/log4j/1.2/index.html http://commons.apache.org/logging/ http://technet.microsoft.com/frfr/library/dd491940.aspx

Windows 200X

Table 3 Les principaux systmes de journalisation

Syslog est le mcanisme de journalisation le plus populaire sous Unix et Linux. Il a t labor une poque o la scurit des journaux n'tait pas une considration majeure. En consquence, il ne comporte pas les contrles de scurit ncessaires pour prserver la confidentialit, l'intgrit et la disponibilit de journaux produits.

25

MGL9701 - Projet en gnie logiciel Comme travers le temps, la scurit des journaux est devenue une plus grande proccupation, plusieurs implantations de syslog ont t cres mettant davantage l'accent sur la scurit. La plupart ont t fondes sur la norme RFC 3195, qui a t conue spcifiquement pour amliorer la scurit de la fonction syslog . Les implantations bases sur la norme RFC 3195 [23] offrent dsormais un transport fiable utilisant TCP et des transmissions scuritaires travers SSL. Le tableau suivant numre des implantations de syslog selon la norme RFC 3195. Plateformes Unix et Linux Unix et Linux Windows Implantations RFC 3195 http://freshmeat.net/projects/syslog-ng http://www.rsyslog.com http://sourceforge.net/projects/lassolog

Table 4 - Les implantations syslog conformes la norme RFC 3195

La figure suivante dmontre comment personnaliser la fonction de journalisation avec la solution Lasso sous Windows.

Figure 12 - La journalisation avec Lasso

26

MGL9701 - Projet en gnie logiciel

4.3 Conservation
La conservation est une fonction importante dune architecture de scurit. La conservation des donnes permet de raliser ultrieurement des activits dinformatique judiciaire aussi nommes Digital forensics lorsquun crime ou une activit malveillante est suspect avoir t commis. Le but de l'informatique judiciaire consiste enquter de sorte trouver une preuve appele artefact numrique. Le terme artefact numrique peut inclure un systme informatique, un support de stockage comme un disque dur ou un CD-ROM, un document lectronique ou mme une squence de paquets se dplaant sur un rseau informatique. Les recommandations contenues dans le guide du NIST 800-63 [22] conseillent la conservation des donnes en fonction de la classification de celles-ci. Par exemple, des donnes classes 1 selon la mthode danalyse de risques MEHARI ne rclament rien de particulier tandis que de linformation classe 4 rclame une dure de conservation de 10 annes.

Avec Splunk, les utilisateurs peuvent indexer, effectuer des recherches et analyser l'ensemble de leurs donnes informatiques partir d'un seul emplacement en temps rel. La solution permet d'enquter sur les incidents de scurit et de rpondre aux exigences de conformit des entreprises. Elle offre la possibilit de faire des enqutes sur les incidents rapidement car toutes les donnes requises sont disponibles en un seul endroit, en temps rel. Splunk collecte et conserve les journaux et les donnes de n'importe quel systme et dispositif de scurit.

Figure 13 - La conservation avec splunk

La solution peut tre obtenue via le lien suivant : http://www.splunk.com/

27

MGL9701 - Projet en gnie logiciel

5 Identification et authentification
La fonction dauthentification consiste, pour un systme informatique, vrifier l'identit d'une entit (personne, ordinateur) afin d'autoriser l'accs de cette entit des ressources (systmes, rseaux, applications...). L'authentification permet donc de valider l'authenticit de l'entit en question. La procdure dauthentification afin dtre gre convenablement est gnralement accompagne de certains processus tels que lenregistrement, lmission, la certification et la rvocation des identifiants. La mthode dauthentification utilise est galement soumise des critres tels que le niveau de criticit des donnes accdes, lorigine de laccs (interne, externe) et le niveau de contrle de la posture du poste de travail accdant les ressources. Les recommandations issues du guide du NIST 800-63 [22] sont reconnues et appliques tant par les gouvernements Canadiens et Amricains que par lentreprise prive. Le tableau suivant dcrit un ensemble de solutions dauthentification issu du domaine du logiciel libre. Ces solutions offrent une gamme varie de mthodes dauthentification telles que des authentifications aux des services dannuaire ou encore des authentifications en mode fdre. Briques Authentification et SSO diteurs

Authentification et SSO

Authentification, SSO contrle daccs, dlgation, mta annuaire Fdration didentit

Fdration didentit

28

MGL9701 - Projet en gnie logiciel

Briques Fdration didentit

diteurs

Infrastructure cl publique

SSO Web

Authentification, SSO contrle daccs, dlgation, fdration didentit Annuaire LDAP

Annuaire LDAP

Annuaire LDAP

Table 5 Les principales solutions d'authentification

29

MGL9701 - Projet en gnie logiciel

5.1 Certificat cl publique de signature


Lauthentification par certificat X.509 est considre comme une authentification forte lorsque le certificat rside sur un jeton. Le cycle de vie des certificats est gr par des administrateurs de lorganisation. Lmission dun certificat ncessite normalement un processus didentification de lutilisateur qui doit fournir une ou des preuves didentit en produisant par exemple son permis de conduire ou encore une identification visuelle dun suprieur hirarchique. Pour tre considr comme une authentification forte, le certificat doit reposer sur un mdia non reproductible. Nous verrons plus loin une solution en logiciel libre permettant de crer des jetons matriels.

5.2 Code dusager


Le code usager est lidentifiant le plus populaire du monde de la scurit. Le code usager doit identifier de manire unique un utilisateur dun systme. Il est compos gnralement de caractres alphanumriques. Il existe une multitude dapplications et systmes utilisant le code usager comme moyen didentification dun utilisateur. Plusieurs solutions sont disponibles en logiciel libre. Les solutions les plus populaires sont les suivantes :

http://www.jasig.org/cas

http://freeradius.org/ http://www.gazi.edu.tr/tacacs/

5.3 Mot de passe


Le mot de passe est le compagnon du code usager. Il varie en taille mais le mot de passe de 8 caractres est trs frquent pour lusager ordinaire mais peut comporter aisment 12 caractres dans le cas des mots de passe des administrateurs de systmes. Des politiques reconnues lgard des mots de passe sont publies par linstitut SANS et peuvent tre consultes sur le site web http://www.sans.org.

30

MGL9701 - Projet en gnie logiciel

5.4 Jeton
Lorsque la criticit des donnes que lon accde est leve, il convient gnralement dutiliser une mthode dauthentification plus forte que le mot de passe. Lutilisation dun jeton permet dajouter la notion du quelque chose que lon possde la notion du quelque chose que lon connat propose par lauthentification par mot de passe. On appelle communment cette manire de sauthentifier, une authentification double facteur ou encore une authentification forte. Il existe un projet sur le rput site http://sourceforge.net nomm Hard Token Management Framework ayant pour objectif de permettre une organisation de grer le cycle de vie de jetons de type cartes puce ou de cls USB. Il communique avec les jetons par le biais d'une interface PKCS11 [24]. Il s'agit d'une extension la solution EJBCA. La plateforme vise les dveloppements en langage Java.

Figure 14 - La gestion de jeton

La solution peut tre obtenue via le lien suivant : http://www.hardtokenmgmt.org/index.html

31

MGL9701 - Projet en gnie logiciel

5.5 Carte puce


Voir la section prcdente.

5.6 Biomtrie
Aucune information na t trouve ce sujet dans le monde du logiciel libre.

32

MGL9701 - Projet en gnie logiciel

6 Habilitation et contrle daccs


Le contrle d'accs consiste vrifier si une entit demandant d'accder une ressource a les droits ncessaires pour le faire. Un contrle d'accs offre donc la possibilit d'accder des ressources physiques (un dpartement) ou logiques (une application informatique). Le contrle daccs peut tre ralis l'aide de mcanismes permettant l'authentification de l'entit soit par mot de passe, carte puce ou autres et par la vrification de ses habilitations pour les ressources quelle dsire accder. Les moyens technologiques permettant le contrle daccs sont multiples. Le contrle daccs peut prendre la forme de simples Access Control List , bien connu sur les systmes dexploitation UNIX et Windows. On le retrouve aussi sur le primtre de lentreprise avec les rseaux virtuels privs, les serveurs mandataires et les coupe-feux. Il permet galement de contrler les accs aux bases de donnes et aux annuaires LDAP.

6.1 Gestion des identits et des accs

Dans le domaine du contrle daccs, lapproche la plus reconnue et la plus efficace est sans contredit celle utilisant une solution de GIA (Gestion des identits et des accs). Cette solution est dsormais mature et plus de 10 fournisseurs nous offrent les fonctionnalits dapprovisionnement en utilisateurs et privilges via des flux de travail automatiss dans le monde commercial. Des applications libre-service permettent galement de dlguer la gestion des utilisateurs et des droits daccs aux fonctionnels des units daffaires ayant une comprhension plus prcise des rgles daffaires de leurs units et donc une meilleure comprhension des privilges quils accordent. Une application de certification des privilges permet galement de grer des campagnes annuelles de certification des privilges afin dviter les incontournables accumulations de privilges en absence de ce processus. Les solutions de GIA couvrent en gnral bon nombre des besoins de contrle daccs requis par les diverses rglementations (SOX, GBLA, C-198, etc.) tant apparues suite aux scandales financiers connus au dbut des annes 2000. La capacit des solutions de GIA de pouvoir approvisionner tous les systmes et applications partir dune source autoritaire (en gnral lapplication des ressources humaines) travers le cycle de vie des employs dans lentreprise (embauche, promotion, retraire, congdiement, etc.) permet dviter les principaux problmes lis la gestion des identits soit : La prsence de comptes orphelins Laccumulation de privilges de promotion en promotion

33

MGL9701 - Projet en gnie logiciel Le manque de moyen et de rapports permettant de recadrer les privilges Le manque dautomatisation des processus Les erreurs lies lapprovisionnement manuel Etc.

Figure 15 - La gestion des identits et des accs

Selon nos recherches, une seule solution aussi complte existe en logiciel libre dans ce domaine du contrle daccs. La solution peut tre obtenue via le lien suivant : http://www.openiam.com/index.php/IDM/IDM-Overview.html

34

MGL9701 - Projet en gnie logiciel

InterLDAP est une solution permettant une gestion avance des annuaires LDAP. Elle permet la cration de modles de dlgation de la gestion des utilisateurs et des droits daccs essentiels aux entreprises daujourdhui. La solution est compose de diffrents modules rpondant des problmatiques bien distinctes mais complmentaires. Les modules les plus importants sont les suivants :

LSC (LDAP Synchronization Connector) : moteur de synchronisation d'annuaires LDAP depuis ou vers des fichiers plats (CSV, LDIF) et des bases de donnes. LAAP (Liberty Alliance Attribute Provider) : fournisseur d'attributs Liberty Alliance. WUI (Web User Interface) : interface de gestion de contenu d'annuaire, avec gestion avance du schma et des autorisations.

Figure 16 - Gestion avance des annuaires LDAP

La solution peut tre obtenue via le lien suivant : http://wiki.interldap.ow2.org/xwiki/bin/view/Main/WebHome

35

MGL9701 - Projet en gnie logiciel

6.2 Contrle daccs Web


Une varit de solutions trs populaire depuis les dernires 10 annes est celle lie au contrle daccs web. La solution OpenSSO offre la gamme complte des fonctionnalits pour ce type de contrle. Cette solution de contrle daccs web est la mme que celle vendue commercialement par le vendeur SUN sous le nom de Java System Access Manager. Cest celle qui inspirera donc le plus confiance de la part des partenaires et utilisateurs tant donn que ce produit est exploit commercialement et protge dj des applications daffaires partout dans le monde. Cette solution pourra donc servir scuriser des applications daffaires ayant une vitrine sur le web. Le contrle daccs peut tre effectu de manire dclarative ou programmatique. La mthode dclarative est une mthode daccs gros grains qui utilise seulement des rgles daccs configures au niveau du systme. Des agents dploys sur les composantes web (serveurs web et serveurs applicatifs) interceptent les requtes aux ressources (pages HTML, JSP, etc.) et requirent une dcision de la part du centre de dcision. La mthode programmatique implique le concours des applications qui deviennent des agents effectuant des appels explicites au centre de dcision. Cette mthode est dite grains fins car les autorisations peuvent tre granules au niveau dun bouton ou dune bote de texte du formulaire.
Figure 17 - La solution OpenSSO

Figure 18 - Contrle d'accs Web

Ces solutions peuvent tre obtenues via les liens suivants : https://opensso.dev.java.net/ Access Control http://www.openiam.com/index.php/AM/AMOverview.html

36

MGL9701 - Projet en gnie logiciel

6.3 Certificat dattribut

Ce mcanisme profite de la fondation offerte par une infrastructure cls publiques pour retourner des attributs de certificat supplmentaires lors de lauthentification. Ces attributs servent lier une entit des habilitations, par exemple des rles ou des permissions.

Figure 19 - Certificats d'attributs [29]

Encore une fois, outre le modle de gouvernance de linfrastructure cls publiques mettre en place, laspect technologique est disponible gratuitement via la solution EJBCA dj discute dans ce document. La solution peut tre obtenue via le lien suivant : http://www.ejbca.org/

37

MGL9701 - Projet en gnie logiciel

6.4 NOS/OS
Sous UNIX, les ACLs ne remplacent pas la mthode habituelle des droits, pour garder une compatibilit, elles sajoutent elle, ce qui permet aux systmes l'utilisant de rester conformes la norme POSIX. Les systmes de type UNIX n'acceptent que trois types de droits :

Lecture ; criture ; Excution,

Pour trois types dutilisateurs:


Le propritaire du fichier ; Les membres du groupe auquel appartient le fichier ; Tous les autres utilisateurs.

En utilisant cette mthode, on couvre de nombreux cas, mais l'intervention de l'administrateur est souvent ncessaire pour crer les groupes qui permettront de partager des fichiers entre plusieurs utilisateurs, tout en les gardant confidentiels face aux autres. Les ACLs permettent de combler ce manque. On peut permettre n'importe quel utilisateur, ou groupe, un des trois droits (lecture, criture et excution) et cela sans tre limit par le nombre d'utilisateurs que l'on veut ajouter. Sous Windows, les ACLs sont implantes par le systme de fichiers NTFS et prises en charge par Windows NT 4.0 et ses successeurs (Windows 2000, Windows XP, Windows Server 2003 et Windows Vista). Les ACLs peuvent tre dfinis sur des fichiers ou des rpertoires. Sous NTFS, les ACLs acceptent les types de droits suivants : Parcours d'un dossier ; Liste d'un dossier ; Lecture des mta-donnes ; Ajout de fichier ; Ajout de rpertoire ; Ajout de donnes un fichier existant ; Modification des droits ; Suppression ; Lecture ; Appropriation ; Excution.

38

MGL9701 - Projet en gnie logiciel

6.5 Application
La scurit des applications peut tre exploite selon deux mthodes. La premire consiste grer la scurit de manire dclarative, cest--dire, dutiliser un systme de scurit externe pour protger les accs aux applications. La deuxime dite programmatique rclame le concours des applications pour la gestion des accs de la part des utilisateurs. La premire mthode est trs dsirable pour les administrateurs de la scurit car les dclarations ncessaires la gestion des accs sont indpendantes des applications et donc des propritaires de ces applications. Les politiques mises en place peuvent ltre sans avoir obtenir le consentement des propritaires des applications. Par contre, la mthode dclarative ne permet toutefois quun contrle des accs gros grains. Les solutions modSecurity, Apparmor et SELinux correspondent cette mthode. La deuxime mthode quant elle permet un contrle des accs grains fins et permet laffichage des lments dun formulaire en fonction des politiques daccs spcifiques lutilisateur. En gnral, la cration dun formulaire variera dynamiquement en fonction du rle ou du groupe associ lutilisateur. Un exemple de cette mthode est ACEGI. 6.5.1 Pare-feu applicatif (modSecurity)

ModSecurity est un systme de dtection dintrusion et un moteur de prvention de failles de scurit au sein des applications web. Il fonctionne comme un module Apache ou bien de manire autonome. Il permet de filtrer les requtes, danalyser le contenu des formulaires, de journaliser les requtes, deffectuer du filtrage HTTPS et des donnes compresses. La solution peut tre obtenue via le lien suivant : http://www.modsecurity.org/

6.6 Apparmor

AppArmor ou Application Armor est un logiciel de scurit pour Linux dit sous Licence publique gnrale GNU. Il est actuellement dvelopp par Novell. La solution permet l'administrateur systme d'associer chaque programme un profil de scurit qui restreint ses capacits. Il accompagne le traditionnel modle d'Unix du contrle d'accs discrtionnaire DAC en lui permettant d'utiliser le contrle d'accs obligatoire MAC conu par la NSA (National Security Agency). La solution peut tre obtenue via le lien suivant : http://en.opensuse.org/AppArmor

39

MGL9701 - Projet en gnie logiciel

6.6.1

SELinux ou Security-Enhanced Linux

SELinux conu par la NSA (National Security Agency) est un module de scurit optionnel ajout au noyau Linux. SELinux intgre un systme de contrle d'accs obligatoire selon le modle MAC (mandatory access control) au noyau Linux. Sous un systme standard de contrle d'accs discrtionnaire tel que Linux, une application ou un processus excut en tant qu'utilisateur (UID ou SUID) reoit la permission de l'utilisateur sur des objets tels que des fichiers, des sockets et d'autres processus. L'excution d'un noyau MAC SELinux permet de protger le systme contre des applications malveillantes ou dfectueuses qui peuvent endommager ou dtruire le systme. SELinux dfinit les droits d'accs et de transition de chaque utilisateur, application, processus et fichier du systme. SELinux gouverne alors les interactions de ces sujets et objets l'aide d'une politique de scurit qui spcifie le degr de rigueur ou de souplesse d'une installation donne de Linux. La solution peut tre obtenue via le lien suivant : http://selinux.sourceforge.net/ 6.6.2 Spring Security (ACEGI)

Une des plateformes de dveloppement les plus populaires est sans conteste la plateforme Spring. Spring a fait sienne la solution de scurit offerte prcdemment par ACEGI qui est devenue Spring Security . La solution supporte un grand nombre de dispositifs de scurit tel que : La solution de SSO OpenID La norme WS-Security Le SSO avec CAS (Central Authentication Service) ou JOSSO Les annotations de scurit de EJB3 La scurit selon le modle REST Etc.

La solution peut tre obtenue via le lien suivant : http://static.springframework.org/spring-security/site/index.html

40

MGL9701 - Projet en gnie logiciel

6.7 SGBD

Le Systme de Gestion de Base des Donnes le plus populaire dans le march du logiciel libre est MySQL. On recense plus de 4 millions dinstallations dans le monde. Sur le plan de la scurit, MySQL supporte les stratgies de haute disponibilit grce lapproche multi tiers et la redondance. De plus, le systme offre la possibilit de grer les privilges de manire granulaire. Les privilges sont les suivants : Alter Delete Create Drop Execute Select Update Le tableau qui suit dmontre les options offertes par la solution pour la gestion des privilges. Laccs aux donnes peut ncessiter si requis une authentification via mot de passe ou encore via SSL. GRANT priv_type [(column_list)] [, priv_type [(column_list)] ...] ON {tbl_name | * | *.* | db_name.*} TO user_name [IDENTIFIED BY [PASSWORD] 'password'] [, user_name [IDENTIFIED BY 'password'] ...] [REQUIRE NONE | [{SSL| X509}] [CIPHER cipher [AND]] [ISSUER issuer [AND]] [SUBJECT subject]] [WITH [GRANT OPTION | MAX_QUERIES_PER_HOUR # | MAX_UPDATES_PER_HOUR # | MAX_CONNECTIONS_PER_HOUR #]] La solution permet galement dassurer de la confidentialit des donnes via le chiffrement. Par exemple, la fonction AES_ENCRYPT () chiffre une chane de caractres et renvoie une chane binaire. AES_DECRYPT () dcrypte la chane chiffre et retourne la chane originale. Vous pouvez utiliser les fonctions AES pour stocker des donnes sous une forme chiffre en modifiant vos requtes de la manire suivante : INSERT INTO t VALUES (1,AES_ENCRYPT('text','password')); La solution peut tre obtenue via le lien suivant : http://www.mysql.com/

41

MGL9701 - Projet en gnie logiciel

PostgreSQL est un systme de gestion de base de donnes relationnelle et objet (SGBDRO). Ce projet a plus de 15 ans de dveloppement son actif et offre une architecture prouve tant pour sa fiabilit que pour l'intgrit des donnes. Il fonctionne sur tous les principaux systmes d'exploitation, dont Linux, UNIX (AIX, BSD, HP-UX, SGI IRIX, Mac OS X, Solaris, Tru64), et Windows. PostgreSQL inclut des fonctions de scurit plus labores que MySQL notamment au niveau des algorithmes cryptographiques offerts. Les sections suivantes dcrivent de manire sommaire les mcanismes de scurit du systme. 6.7.1 Authentification

Une bonne pratique dans le monde des SGBDs, linstar des autres systmes, est didentifier un utilisateur voulant accder de linformation. ce niveau, PostgreSQL offre une panoplie de mthodes d'authentification diffrentes. Les mthodes les plus importantes sont les suivantes: Mot de passe Certificat MD5 Kerberos LDAP

L'authentification du client est contrle par un fichier, traditionnellement nomm pg_hba.conf. Les lignes qui suivent dcrivent le fonctionnement de la scurit et dmontre lusage du fichier de configuration. # Si ces trois lignes traitent seules les connexions locales, elles n'autorisent les # utilisateurs locaux qu' se connecter leur propre base de donnes (base ayant # le mme nom que leur nom d'utilisateur) exception faite des administrateurs et # des membres du rle "support" qui peuvent se connecter toutes les bases de # donnes. Le fichier $PGDATA/admins contient une liste de noms # d'administrateurs. Un mot de passe est requis dans tous les cas. # # Aussi, un utilisateur de lhte 192.168.12.10 peut se connecter la base de # donnes postgres via une authentification base md5. # # TYPE DATABASE USER CIDR-ADDRESS METHOD local sameuser all md5 local all @admins md5 local all +support md5 host postgres all 192.168.12.10/32 md5

42

MGL9701 - Projet en gnie logiciel

6.7.2

Autorisation

PostgreSQL gre les droits d'accs aux bases de donnes en utilisant le concept de rle. Un rle peut tre vu soit comme un utilisateur de la base des donnes, soit comme un groupe d'utilisateurs de la base des donnes, suivant la faon dont le rle est configur. Les rles peuvent possder des objets de la base de donnes (par exemple des tables) et peuvent affecter des droits sur ces objets d'autres rles pour contrler qui a accs ces objets. De plus, il est possible de dlguer un rle un autre rle, l'autorisant ainsi utiliser les droits affects au rle dont il est membre. Les privilges associs aux rles sont les suivants : SELECT INSERT UPDATE DELETE REFERENCES TRIGGER CREATE CONNECT TEMPORARY EXECUTE USAGE

La gestion des rles est ralise via un langage de commande. Par exemple, la premire ligne de commande sert crer un rle, la seconde octroyer les droits dadministrateur au rle dev et donc aux utilisateurs assigns ce rle et finalement la dernire commande est utilise pour supprimer le rle dev existant.

CREATE ROLE dev; GRANT dev TO admins; DROP ROLE dev;

La configuration de l'authentification du client dtermine avec quel rle de base la connexion cliente se connectera. Comme le rle dtermine l'ensemble des droits disponibles pour le client connect, il est important de configurer cela soigneusement quand un environnement multi-utilisateur est mis en place.

43

MGL9701 - Projet en gnie logiciel

6.7.3

Fonctions cryptographiques

PostgreSQL offre galement des fonctions cryptographiques par lintermdiaire du programme pgcrypto. Le tableau ci-dessous dmontre les possibilits de PostgreSQL en cette matire. Le programme sappuie sur OpenPGP et OpenSSL de sorte largir lensemble des fonctions cryptographiques disponibles. Fonctions MD5 SHA1 SHA224/256/384/512 Other digest algorithms Blowfish AES DES/3DES/CAST5 Raw encryption PGP Symmetric encryption PGP Public-Key encryption De base oui oui oui non oui oui non oui oui oui Avec OpenSSL oui oui oui oui oui oui oui oui oui oui

Table 6 - Les fonctions cryptographiques de PostgreSQL

Les fonctions cryptographiques offertes via le programme pgcrypto permettront donc de gnrer, par exemple, le hach dun mot de passe ou encore de crer un code dauthentification dun message (MAC) pour un tmoin (cookie). Les mthodes sont invoques de la manire suivante :

digest(data text, type text) returns bytea digest(data bytea, type text) returns bytea hmac(data text, key text, type text) returns bytea hmac(data bytea, key text, type text) returns bytea pgp_sym_encrypt_bytea(data bytea, psw text [, options text ]) returns bytea

La base de donnes PostgreSQL est donc trs bien quipe pour traiter les donnes sensibles telles que les numros dassurance sociale, les numros de carte de crdit, les numros de comptes bancaires ou autres donnes nominatives juges confidentielles par les diffrentes lois sur la protection de la vie prive travers le monde.

44

MGL9701 - Projet en gnie logiciel

6.8 Coupe-feu
Le coupe-feu est un mcanisme essentiel de la scurit. Il sert de premier rempart pour lentreprise contre les attaques extrieures. Deux coupe-feux se distinguent dans le monde du logiciel libre. Il sagit de SmoothWall Express et de IPCop. Ces solutions sont populaires car elles sont conviviales grce leurs interfaces web faciles utiliser. Malgr tout, des solutions telles que netfilter et ipfilter demeurent tout de mme des solutions populaires et fiables. 6.8.1 IPCop et SmoothWall Express

La solution IPCop offre un moyen simple mais puissant pour configurer un coupe-feu sur une architecture de type PC. Elle peut protger un rseau familial ou de petites ou moyennes entreprises (SOHO). Elle offre la possibilit de crer une zone dmilitarise ainsi que des tunnels en rseau priv virtuel. Il est noter que IPCop est une solution complte incluant son propre systme dexploitation bastionn. IPCop peut galement servir de serveur mandataire (proxy), de serveur fournissant des adresses IP dynamiques (DHCP), de relais DNS, de serveur DNS dynamique, de serveur de temps (NTP). Il est de plus extensible via linstallation de modules additionnels (plugins). On peut donc ajouter bien d'autres fonctions permettant de raliser du contrle de contenu, de grer des listes noires, des listes d'accs, de contrler le trafic, etc. l'origine, IPCop tait un fork de la distribution Linux Smoothwall, depuis ces deux projets se sont dvelopps indpendamment, IPCop conservant une approche en logiciel libre plus pure que SmoothWall qui offre une version commerciale. La solution peut tre obtenue via le lien suivant : http://www.ipcop.org/ et http://www.smoothwall.org/ .

45

MGL9701 - Projet en gnie logiciel

6.8.2

Firewall Builder

Pour les mordus des solutions de coupe-feux originales telles que netfilter ou ipfilter, il est possible dadjoindre une composante amliorant la convivialit de ces solutions. Il sagit de la solution Firewall Builder. La solution permet de configurer ces coupe-feux via une interface web plutt qu travers la ligne de commande.

Figure 20 - Gestion conviviale des pare-feux

La solution peut tre obtenue via le lien suivant : http://www.fwbuilder.org/

46

MGL9701 - Projet en gnie logiciel

6.9 Rseau Priv Virtuel


Une autre solution trs intressante et surtout trs utile dans le domaine du contrle daccs est le Rseau Priv Virtuel ou RPV. Cette solution se dcline en deux grandes familles soit le RPV-SSL et le RPV-IPSEC. Les spcifications de IPSEC (IP Security) proviennent du IETF (Internet Engineering Task Force).

Figure 21 - Rseau priv virtuel

La premire famille convient bien aux utilisateurs car il ne ncessite pas de client lourd sur les postes clients. Un simple fureteur web fait laffaire. Dans le second cas, un client IPSEC doit tre install sur le poste de travail de lutilisateur. La configuration des RPVIPSEC est galement plus complexe. Voil pourquoi, le protocole IPSEC est plus souvent utilis pour crer des canaux virtuels entre machines.

La grande force d'OpenVPN est d'tre extrmement facile installer et configurer, ce qui est rarement le cas pour des outils utiliss pour crer des RPVs. De plus, la solution se retrouve sur un grand nombre de plateformes comme Linux, Microsoft Windows 2000/XP/Vista, OpenBSD, FreeBSD, NetBSD, Mac OS X et Solaris. Le RPV peut tre utilis selon deux modes. Le premier mode, le plus facile, utilise une cl partage. Un second mode plus scuritaire repose sur une infrastructure cls publiques. Le tableau suivant rsume les avantages et les inconvnients des deux modes : Mode OpenVPN Mode de cryptographie: Implantation: Vitesse: Consommation CPU: change des clefs: Renouvellement des clefs: Authentification des passerelles: Clefs partages Symtrique Plus facile Plus rapide Plus petite OUI NON NON SSL Asymtrique/Symtrique Plus complique Plus lente Plus grande NON OUI OUI

Table 7 - Les modes d'opration de OpenVPN

La solution peut tre obtenue via le lien suivant : http://openvpn.net/ 47

MGL9701 - Projet en gnie logiciel

Un exemple de la seconde famille de RPV est le trs clbre FreeS/WAN. Cette solution est aussi connue pour sa complexit et est reprsentative de cette famille de RPV. Le protocole au cur du RPV IPSec, ISAKMP ou Internet Security Association and Key Management Prococol rclame lutilisation dune ICP. La solution peut tre tlcharge et installe comme une solution complte mais elle est aussi souvent intgre dautres solutions de coupe-feux comme SmoothWall ou encore Astaro, un coupe-feu commercial trs rput. Dans cet exemple, le Client RPV IPSec doit se connecter au rseau local derrire le routeur RPV Linux. Le Client RPV est connect Internet via une connexion commute ou un accs DSL. Le Client RPV aura une adresse IP virtuelle dans le rseau local distant.

Figure 22 - Rseau priv virtuel avec IPSec

La solution peut tre obtenue via le lien suivant : http://www.freeswan.org/

48

MGL9701 - Projet en gnie logiciel

7 Confidentialit
En informatique, la confidentialit fait partie, avec l'intgrit et la disponibilit, des trois grands principes de scurit informatique. La confidentialit est dfinie comme un moyen de s'assurer que l'information n'est accessible qu' ceux dont l'accs est autoris. Dans la pratique, la confidentialit est atteinte par les techniques de la cryptographie moderne.

7.1 Certificat cl publique de chiffrement


Le chiffrement asymtrique nest pas, rgle gnrale, utilise pour le chiffrement de gros blocs de donnes car le chiffrement asymtrique est trs exigeant et serait trop lent. Les certificats de chiffrement sont le plus souvent utiliss dans les applications de courriel lectronique pour chiffrer certains courriels dont le contenu est confidentiel. L'utilisation des certificats pour chiffrer et signer des courriels se fait en utilisant le standard S/MIME qui permet l'encapsulation des donnes cryptographiques dans le format MIME des courriels. Les certificats lectroniques se distinguent des solutions de simple cryptographie (signature et chiffrement) comme OpenPGP par le fait qu'ils renferment des attributs ou champs d'information certifis par des autorits de certification reconnues telles que VeriSign ou Entrust.

Figure 23 - Le chiffrement asymtrique [48]

Les partenaires ou collgues qui vous envoient des courriels utilisent la partie publique de votre certificat pour chiffrer le contenu que vous serez seul pouvoir dchiffrer. Le chiffrement asymtrique rsout le problme du partage de la mme cl, lment essentiel du chiffrement symtrique. La solution peut tre obtenue via le lien suivant : http://www.ejbca.net

49

MGL9701 - Projet en gnie logiciel

7.2 Chiffrement des donnes

Truecrypt est une solution de chiffrement de disque fonctionnant sous Windows Vista/XP, Mac OS X et Linux. Cette solution permet de se dplacer avec son ordinateur portable avec plus de scurit. Le chiffrement est automatique et transparent. Le logiciel peut chiffrer tant le disque dur que les mdias mobiles (cls USB, CD et DVD). La solution peut tre obtenue via le lien suivant : http://www.truecrypt.org/

Les fonctions de chiffrement fournies par limplantation de rfrence du JDK1.6 sont en gnral trs convenables pour la plupart des besoins en cryptographie. Larchitecture du systme cryptographique est trs flexible et encapsule les fonctions de scurit derrire des interfaces normalises appeles Cryptographic Service Provider ou CSP. Lutilisation en est simple comme en tmoigne lextrait de code suivant :

import javax.crypto.*; Cipher aesCipher; aesCipher = Cipher.getInstance("AES/ECB/PKCS5Padding"); aesCipher.init(Cipher.ENCRYPT_MODE, aesKey); byte[] cleartext = "Cest un exemple".getBytes(); byte[] ciphertext = aesCipher.doFinal(cleartext);

Limplantation de rfrence de SUN peut tre obtenue via le lien suivant : http://java.sun.com/javase/6/docs/technotes/guides/security/crypto/C ryptoSpec.html#SimpleEncrEx Dans le cas ou des fonctions additionnelles sont requises, par exemple, lutilisation dune taille de cl suprieure ce que la loi amricaine autorise (128 bits), il existe un fournisseur en logiciel libre europen fournissant une implantation JCE et une JCA gratuite.

La solution peut tre obtenue via le lien suivant : http://www.bouncycastle.org/fr/index.html

50

MGL9701 - Projet en gnie logiciel

7.3 Chiffrement des communications


Un autre aspect du chiffrement est la protection des donnes en transit travers les rseaux. Le protocole le plus populaire pour cette fonction est sans contredit le protocole Secure Socket Layer . La version 3 du protocole est devenue la version du protocole officiel Transport Layer Security V1 mais lusage de lancien nom demeure toujours gnralis afin de dsigner ce protocole. Le protocole est dcrit sommairement cidessous.

Figure 24 - Chiffrement des communications (source : Wikipedia)

Les solutions les plus populaires sont les suivantes:

http://www.openssl.org/ http://www.openssh.org/fr/index.html http://winscp.net/eng/index.php http://www.modssl.org/ http://java.sun.com/javase/6/docs/technotes/guides/security/jsse/JSSERefGuide .html

51

MGL9701 - Projet en gnie logiciel

8 Disponibilit
La haute disponibilit est un terme souvent utilis dans le monde des technologies de linformation. Dans lesprit des exploitants, on parle d'architecture de systmes ou de services dont le taux de disponibilit est acceptable. La disponibilit est aujourd'hui un enjeu important des infrastructures informatiques. On estime aujourd'hui que lindisponibilit d'un service informatique peut entraner des cots astronomiques pour des domaines de l'industrie tels que le domaine bancaire ou celui de lnergie o l'arrt des oprations de production peut mettre lexistence de lentreprise en pril ou encore avoir un effet dsastreux chez les consommateurs. Plusieurs moyens complmentaires sont utiliss pour amliorer la haute disponibilit : 1. La mise en place d'une infrastructure comportant de la redondance matrielle. On cre des grappes de haute disponibilit dont lobjectif est d'assurer un service en vitant au maximum les indisponibilits. 2. On effectue du balancement de la charge en tirant profit des grappes de serveurs dcrits prcdemment. 3. On prvoit un site secondaire offrant une infrastructure redondante ou du moins pouvant assurer les services essentiels du site primaire. Pour mesurer la disponibilit, on utilise souvent un pourcentage compos de 9. Les 9 dsignent en fait la quantit de temps dindisponibilit sur une anne pour un service donn. Pourcentages 99% 99,9% 99,99%, 99,999%, 99,9999%, 99,99999%, Indisponibilits Moins de 3,65 jours par an Moins de 8,75 heures par an Moins de 52 minutes par an Moins de 5,2 minutes par an Moins de 54,8 secondes par an Moins de 3,1 secondes par an
Table 8 - Mesure de la disponibilit

52

MGL9701 - Projet en gnie logiciel

8.1 Redondance
La redondance est un sujet trs vaste. la base, la redondance permet un service de demeurer disponible mme dans le cas de bris matriel ou de dfaillance logicielle. Le principe tant de dupliquer le service sur plusieurs serveurs de sorte pouvoir rcuprer la charge sur les serveurs restants lorsquun serveur prouve des problmes ou requiert de la maintenance. Afin de nous familiariser avec ce principe, nous allons dcrire deux solutions trs populaires dans le monde de Linux. 8.1.1 Common Address Redundancy Protocol

Common Address Redundancy Protocol ou CARP est un protocole permettant un groupe de serveurs sur un mme segment rseau de partager une adresse IP. CARP est une alternative scurise et libre aux protocoles Virtual Router Redundancy Protocol dvelopps par CISCO. CARP appose une signature cryptographique aux messages en transit ce qui est avantageux en termes de scurit. On appelle un groupe de serveurs utilisant CARP un "groupe de redondance". Le groupe de redondance se voit attribuer une adresse IP partage entre les membres du groupe. Au sein de ce groupe, un serveur est dsign comme "matre". Les autres membres sont appels "esclaves". Le serveur matre est celui qui "prend" l'adresse IP partage. Il rpond tout trafic ou requte ARP l'attention de cette adresse. Chaque serveur peut appartenir plusieurs groupes de redondance. Chaque serveur doit avoir une seconde adresse IP unique. Dans le cas o le serveur matre rencontre une panne ou est dconnect du rseau, l'adresse IP virtuelle sera prise par un des serveurs esclaves et le service continuera tre rendu sans interruption. Chaque lment du groupe met ainsi sur le rseau des signes de vie de faon ce que les autres lments ayant la mme adresse IP virtuelle prennent le relais lorsque l'lment dfaillant ne donne plus ces signes de vie. La solution peut tre obtenue via le lien suivant : http://www.ucarp.org/project/ucarp ou http://sourceforge.net/projects/vrrpd/

53

MGL9701 - Projet en gnie logiciel

8.1.2

Distributed Replicated Block Device

DRBD est un module du noyau Linux qui constitue un systme de stockage distribu. Vous pouvez utiliser DRBD pour partager des priphriques entre des serveurs Linux et de ce fait, partager des systmes de fichiers et des donnes. Ce module peut donc tre utilis pour construire des SAN (Storage Area Network). Cette forme de stockage est trs populaire aujourdhui. En fait, la consolidation des serveurs grce la virtualisation et les rseaux de stockage font parti des stratgies TI les plus la mode aujourdhui. DRBD met en uvre un dispositif de stockage permettant de rpliquer les donnes dun serveur principal sur un ou plusieurs serveurs secondaires.

Figure 25 - Solution de stockage distribu

Les donnes primaires sont crites la fois sur le priphrique physique et sur le lien rseau, permettant de distribuer ces donnes sur des priphriques secondaires loigns. L'information est donc partage entre le serveur et le serveur secondaire de manire synchrone, ce qui signifie que DRBD peut tre utilis pour raliser de la haute disponibilit au niveau des systmes de donnes. Des solutions libres comme MySQL tirent profit de ce mcanisme dans leurs stratgies de redondance. La solution peut tre obtenue via le lien suivant : http://www.linux-ha.org/DRBD .

54

MGL9701 - Projet en gnie logiciel

En complment de DRBD, openfiler offre la composante de stockage requise. La solution peut tre utilise tant en mode SAN (Storage Area Network) quen mode NAS (Network Attached Storage). La diffrence principale entre les deux modes, est que le SAN interagit directement avec le priphrique via le protocole natif des contrleurs SATA ou iSCSI alors que le NAS utilise des protocoles de plus haut niveau tels que NFS, SMB/CIFS ou FTP pour communiquer. Les solutions de stockage SAN sont donc par dfinition plus performantes car de plus de bas niveaux. La figure suivante dmontre un exemple de lapplication de gestion de openfiler. Dans cet exemple, un nouveau volume SCSI est ajout la configuration.

Figure 26 - Rseau de stockage

La solution peut tre obtenue via le lien suivant : http://www.openfiler.com/community .

55

MGL9701 - Projet en gnie logiciel

8.2 Balancement des charges


Le balancement des charges est une technique utilise en informatique pour distribuer un travail entre plusieurs processus, ordinateurs ou autres ressources. Les avantages sont nombreux :

Augmentation de la qualit des services. Amlioration des temps de rponse des services. Capacit pallier la dfaillance d'une ou de plusieurs machines. Possibilit d'ajouter des serveurs sans interruption de service.

Il existe diffrentes techniques allant du plus simple au plus complexe. Nous en verrons donc une simple et une plus labore. 8.2.1 Technique de balancement de charge simple

Un exemple de balancement de charge relativement simple est le Round-Robin . Cette technique est souvent utilise avec les serveurs de type DNS. Elle est utilisable tant dans des environnements Linux que Microsoft Windows 200X. Le principe est le suivant. 1. Pour un nom de domaine prcis, le serveur DNS possde plusieurs adresses IP. 2. chaque requte, le serveur DNS choisit l'adresse IP inclure dans la rponse de manire ce que chaque adresse IP soit prsente dans les rponses de manire quitable. 3. Les diffrents accs au nom de domaine sont par consquent rpartis quitablement entre les diffrentes adresses IP. Il faut noter que cette technique de round-robin peut tre exploite pour appliquer de lquilibrage de charge pour dautres services. Par exemple, vous pouvez quilibrer votre service de courriels en configurant votre serveur DNS avec plusieurs enregistrements MX ayant la mme priorit (10). ; zone file fragment IN MX 10 mail.example.com. IN MX 10 mail1.example.com. IN MX 10 mail2.example.com. .... mail IN A 192.168.0.4 mail1 IN A 192.168.0.5 mail2 IN A 192.168.0.6

56

MGL9701 - Projet en gnie logiciel

Vous pouvez obtenir le mme rsultat pour les services web et de ftp en crant des enregistrements comportant des noms identiques mais des adresses IP diffrentes comme le propose lexemple qui suit.

; zone file fragment ftp IN A 192.168.0.4 ftp IN A 192.168.0.5 ftp IN A 192.168.0.6 www IN A 192.168.0.7 www IN A 192.168.0.8

La solution peut tre obtenue via le lien suivant : https://www.isc.org/software/bind

57

MGL9701 - Projet en gnie logiciel

8.2.2

Technique de balancement de charge labore

Linux Virtual Server est un serveur offrant une haute volutivit et une haute disponibilit en utilisant une grappe de serveurs physiques. Il comprend galement un quilibreur de charge excutant sur le systme d'exploitation Linux. L'architecture du serveur de grappe est entirement transparente pour les utilisateurs. Les utilisateurs interagissent avec le systme comme s'il s'agissait d'un seul serveur virtuel haute performance.

Figure 27 - quilibrage de la charge

Linux Virtual Server en tant que solution d'quilibrage de charge peut tre utilis afin de construire des services de rseau ncessitant une haute volutivit et une haute disponibilit. Les services les plus communs sont les suivants : Web Mise en cache Courriel Transmission de fichiers tel FTP Mdias VoIP Etc.

La solution peut tre obtenue via le lien suivant : http://www.linux-vs.org/

58

MGL9701 - Projet en gnie logiciel

8.3 Mise en grappes


La mise en grappe est un lment darchitecture de rseau fondateur. Par la mise en grappe, on ralise de la redondance pour les services hbergs par les serveurs. Afin de distribuer la charge, on utilise une technique de balancement de charge. On peut utiliser une technique passive tel le round-robin ou encore des techniques dynamiques prenant en compte des facteurs de distribution tels que le temps-rponse du serveur ou encore le poids relatif dun serveur donn dans une grappe. Un systme de poids est mis en place ou les valeurs correspondent la capacit de traitement des serveurs de la grappe.

Figure 28 - Mise en grappes

Encore une fois, la solution la plus populaire pour remplir cette fonction est LVS. La solution peut tre obtenue via le lien suivant : http://www.linux-vs.org/

59

MGL9701 - Projet en gnie logiciel

8.4 Relve
Toute entreprise devant assurer une haute disponibilit de ses services doit envisager un plan de continuit ou de relve en cas de dsastre. Dans certains cas, une copie complte de linfrastructure informatique est maintenue sur un site secondaire loign du premier. Un plan de continuit des affaires doit tre ralis selon des normes tablies par des experts du domaine. Sur le plan pratique, nous avons dj survol plusieurs solutions permettant un certain niveau de redondance entre les sites primaires et secondaires. Un second site pourrait contenir une grappe de serveurs balancs dont les donnes seraient rpliques de manire synchrone entre les sites. Des solutions telles que rsync ou DRBD peuvent tre utilises pour synchroniser les deux sites. Le programme rsync est similaire rcp d'Unix, mais possde des fonctionnalits supplmentaires. Il utilise un protocole de mise jour distance incrmental afin d'acclrer le transfert des fichiers plutt que de transfrer des fichiers qui existent dj.

Le programme Heartbeat est un module de base de larchitecture de haute disponibilit de linux. Dans notre plan de relve, la dtection de la perte du serveur primaire pourrait tre confie un module Heartbeat dploy sur le serveur matre du site secondaire. Au moment o le site primaire nest plus disponible, Heartbeat mettrait en activit la grappe de repli qui prendra ds lors le relais des oprations. Une simple mise jour du DNS publique permettra de basculer les utilisateurs vers le site secondaire. Notre systme de relve est donc compos des quatre composantes suivantes : Composantes Linux Virtual Server Distributed Replicated Block Device Heartbeat rsync Fonctions Offre la capacit de mise en grappe et de balancement de charge Offre un systme de stockage distribu maintenant une copie des donnes en miroir du site primaire. Permet la dtection de la perte du site primaire. Maintient les deux sites en miroir.

Table 9 Les composantes dun systme de relve

LVS peut tre obtenue via le lien suivant : http://www.linux-vs.org/ DRDB peut tre obtenue via le lien suivant : http://www.linux-ha.org/DRBD Heartbeat peut tre obtenue via le lien suivant : http://www.linux-ha.org/Heartbeat . rsync peut-tre obtenue via le lien suivant : http://samba.anu.edu.au/rsync/

60

MGL9701 - Projet en gnie logiciel

8.5 Sauvegarde
La sauvegarde des donnes est un processus de base des technologies de linformation. Les activits lies cette fonction sont des oprations quotidiennes pour les administrateurs de systmes. La sauvegarde des donnes est galement un mcanisme de scurit dimportance car il permet de rcuprer des donnes qui auraient t autrement perdues ou corrompues. Les activits de surveillance salimentent galement des donnes sauvegardes lorsquil faut retourner en arrire pour dceler des mfaits.

Amanda est la solution en logiciel libre la plus populaire au monde en ce qui a trait la sauvegarde et la rcupration des donnes. Amanda protge plus d'un demi-million de serveurs et dordinateurs de bureau excutant sur diffrentes versions de Linux, de UNIX, BSD, Mac OS-X ou encore sur les systmes dopration de Microsoft Windows. De plus, la solution est scuritaire car elle supporte le chiffrement des donnes sur les clients, assurant ainsi la scurit des donnes en transit ainsi que le chiffrement sur les serveurs de sauvegarde.

Figure 29 - Solution de sauvegarde

La solution peut tre obtenue via le lien suivant : http://amanda.zmanda.com/

61

MGL9701 - Projet en gnie logiciel

8.6 Conservation
Plusieurs rglementations de lindustrie et du gouvernement exigent que les nombreux journaux produits par les systmes TI soient recueillis, surveills et conservs. Afin de se conformer ces exigences, les journaux provenant souvent de centaines de sources (Unix, Windows 2003, IDS, serveurs web, applicatifs, SGBD, etc.) doivent tre conservs afin dtre examins rgulirement pour dtecter les failles de scurit et les carts de conformit. Cette analyse et cette conservation approfondies peuvent reprsenter des millions de mga-octets. Des mcanismes de sauvegarde des donnes et des rseaux de stockage permettent de remplir les exigences des diffrentes rglementations. Des solutions telles que Amanda et openFiler sont des rponses pertinentes ces besoins dans le domaine du logiciel libre. En plus des solutions technologiques envisages, des politiques de conservation bases sur une classification des donnes (par exemple, la cote Mhari) dtermineront la dure quune information devra tre conserve. Le tableau suivant dmontre les lments minimaux pour la conservation. Solutions Besoins Une analyse de risque comprenant une classification des actifs selon la mthode Mhari ou encore Ebios, Octave ou Marion est requise. https://www.clusif.asso.fr/fr/production/mehari/ La solution permet de crer un rseau de stockage partag pour le rseau dentreprise. En gnral, les rseaux de stockage ont une trs grande capacit et accroissent la disponibilit des donnes. http://www.openfiler.com/community La solution permet de sauvegarder et restaurer les donnes conserver sur disques ou sur bandes en fonction des politiques de conservation. http://amanda.zmanda.com Splunk collecte et conserve les journaux et les donnes de n'importe quels systme et dispositif de scurit dune manire centralise. http://www.splunk.com
Table 10 Les composantes lies la conservation des donnes

62

MGL9701 - Projet en gnie logiciel

9 Surveillance
La surveillance est une fonction de scurit incontournable dans les systmes informatiques daujourdhui. Cette fonction consiste surveiller les actifs de lentreprise afin de dtecter des problmes varis tels que des dbordements de capacit, des dfaillances matrielles et logicielles, des problmes dengorgement de rseau ou encore des tentatives dintrusion. En gnral, ces systmes de surveillance utilisent des agents dploys sur les diffrents serveurs qui surveillent ltat de sant du serveur local et qui mettent des alertes dans le cas o un problme survient ou quune valeur de seuil est dpasse. Quand la condition le rclame, un administrateur de systme peut recevoir un message via tlchasseur, tlphone cellulaire ou encore via courriel.

9.1 Surveillance rseau, serveur et station

Le logiciel libre le plus populaire, dans le domaine de la surveillance des rseaux et des serveurs, est sans nul doute Nagios (plus de 3 millions de tlchargements). Nagios est une application web prsentant un riche tableau de bord des diffrentes activits du rseau de lentreprise. Nagios bnficie de ses diffrents agents pour collecter linformation ncessaire des serveurs Windows 200X, Unix/Linux ou encore de composantes rseau comme des routeurs, des commutateurs ou des imprimantes. Sans oublier des services tels HTTP, FTP, POP3, etc. Les images suivantes dcrivent le concept de collection de Nagios. Des donnes telles que la disponibilit, lespace mmoire et le niveau dutilisation du UCT sont des exemples dinformation recueillie par Nagios.

Figure 30 - Surveillance de rseau

La solution peut tre obtenue via le lien suivant : http://www.nagios.org/

63

MGL9701 - Projet en gnie logiciel

Une autre solution libre pouvant convenir aux besoins de surveillance est OSSIM. Cette solution est en fait le fruit de lassemblage de plusieurs des meilleures solutions de surveillance sur le march. Ce travail dintgration a permis de les consolider sous un mme guichet. OSSIM permet donc de compiler les donnes des solutions telles que Nessus, Snort, Nagios, Spade, OSSEC et plusieurs autres et dorganiser ces donnes en des tableaux de bord sophistiqus.

Figure 31 - Gestion d'incidents et d'vnements

La solution peut tre obtenue via le lien suivant : http://www.ossim.net/

9.2 Dtection des intrusions

Dans le champ de la dtection des intrusions, Snort est le logiciel incontournable. En fait, bon nombre de solutions commerciales comprennent la base la solution Snort. Il y a quelques concepts de base connatre pour utiliser Snort car la solution peut tre configure pour fonctionner selon plusieurs modes: 1. Le mode Sniffer qui lit tout simplement les paquets voyageant sur le rseau et qui les affiche en un flux continu sur la console. 2. Le mode Packet Logger qui trace les paquets voyageant sur le rseau sur le disque de votre ordinateur.

64

MGL9701 - Projet en gnie logiciel 3. Le mode Systme de Dtection d'Intrusion ou NIDS, le plus complexe, qui permet danalyser le trafic rseau afin de dtecter des patrons dvnements partir dune banque de patrons mise jour priodiquement et de prendre action. 4. Le mode inline qui permet dobtenir les paquets du rseau directement du coupe-feu iptables plutt que de libpcap . Une fois les rgles joues, Snort peut dcider via iptables de bloquer ou de transmettre un paquet. Ce mode introduit laspect NIPS (network intrusion protection system) dans loffre de Snort. Le comportement de Snort est bas sur un ensemble de rgles. Une rgle dans le monde de Snort sexprime de la manire suivante : Alert tcp any any -> 198.168.1.0/24 111 (content : |00 01 86 a5|; msg:mountd access;) La solution peut tre obtenue via le lien suivant : http://www.snort.org/

Une autre solution intressante est OSSEC (Open Source Host-based Intrusion Detection System). La solution sutilise dans le champ de la dtection des intrusions comme Snort mais offre en plus la possibilit de dtecter les rootkit prsents sur les serveurs.

Figure 32 - Dtection des intrusions

65

MGL9701 - Projet en gnie logiciel

9.3 Analyseur de vulnrabilits

Nessus est un outil de scurit informatique trs rput. Nessus a t offert en logiciel libre jusquen 2005 mais depuis lors, le code nest plus ouvert. De plus, la version sans frais, dite home feed , procure une alimentation limite dextensions et nest utilisable qu des fins personnelles. La version fournissant une alimentation complte cote environ $1500 par anne. Il signale les faiblesses potentielles ou relles sur les machines cibles. Plus prcisment, Nessus est capable de balayer un quipement, un ensemble d'quipements ou encore un rseau entier. Le rsultat du balayage fournira :

Une liste des vulnrabilits par niveaux de criticit, Une description des vulnrabilits, La mthode pour rsoudre le problme.

Il s'appuie pour cela sur une base de signatures des vulnrabilits connues sur un large ensemble de systmes. La solution peut tre obtenue via le lien suivant : http://www.nessus.org/nessus/

66

MGL9701 - Projet en gnie logiciel

Si lon recherche une solution compltement libre, nous pouvons nous tourner vers NMAP. NMAP est un outil qui utilise la technique du balayage de ports dans le but didentifier les ports ouverts, ainsi que les services en coute sur un rseau. NMAP (Network Mapper) permet dexplorer les rseaux, et de produire un inventaire des ordinateurs et des services quils hbergent. Il permet aussi didentifier les systmes dexploitation, ainsi que leurs versions. Il sagit donc dun outil trs utile pour les administrateurs de rseaux, car il permet didentifier les faiblesses potentielles. La solution peut tre obtenue via le lien suivant : http://nmap.org/

9.4 Moniteur de contenu actif


Pour des raisons thiques ou encore par souci dconomie de la bande passante, il est courant pour les entreprises de contrler les accs des utilisateurs lInternet. Cest ce quoi semploie la solution Web Content Control de untangle. L'application salimente dune source commerciale pour sa liste noire, URLBlacklist.com . Cette liste organise les sites par catgories. Il y a plus de 50 sujets varis. Ces catgories incluent par exemple, la pornographie, les jeux l'argent et les sites de recherche d'emploi. Web Content Control permet de choisir entre ces catgories et de dfinir des politiques de contrle de contenu Web personnalises. La solution peut aussi utiliser des listes de blocage personnalises pour bloquer des serveurs, des domaines et des types de fichiers particuliers.

Figure 33 - Moniteur de contenu actif

La solution peut tre obtenue via le lien suivant : http://www.untangle.com/Web-Filter

67

MGL9701 - Projet en gnie logiciel

9.5 Dtection des pourriels

Le but de ce logiciel est de filtrer le trafic des courriels pour liminer les courriels reconnus comme pourriels ou courriels non sollicits. La solution SpamAssassin est issue de la rpute fondation Apache. Cest une solution qui sintgre comme un filtre aux serveurs SMTP tels Postfix ou sendmail. SpamAssassin fait passer un certain nombre de tests au message. En fonction du rsultat de ces tests, il attribue un score au message. Si le score dpasse un certain seuil, le courriel est alors considr comme du Spam. SpamAssassin modifie alors le titre du message (il l'encadre avec ***** SPAM *****). La solution peut tre obtenue via le lien suivant : http://spamassassin.apache.org/

9.6 Dtection de virus


Les antivirus sont des logiciels conus pour identifier, neutraliser et liminer les logiciels malveillants tels les virus, les vers et les chevaux de Troie de votre ordinateur. De plus, ils permettent gnralement de se dbarrasser des logiciels-espions qui sans tre aussi dangereux que les prcdents, permettent tout de mme de rvler vos habitudes de navigation et donc vos gots et prfrences. Ce qui est indsirable. Il existe trois logiciels antivirus trs populaires au moment de la rdaction de ces lignes. Ces trois solutions mettent jour automatiquement leurs banques de donnes de virus et offrent une interface graphique conviviale. Ces solutions sont les suivantes:

http://www.avast.com/fre/download-avast-home.html

http://free.avg.com/

http://fr.clamwin.com/

68

MGL9701 - Projet en gnie logiciel

9.7 Outils daudit

Les outils d'audit ont pour fonction de dtecter les failles de scurit et de les documenter de manire permettre aux administrateurs de systmes de colmater ces brches. Le processus daudit sappuie sur un ensemble doutils dont deux des meilleurs ont dj t couverts, Nmap et Nessus. ces deux outils, nous pouvons adjoindre SARA ou Security Auditor's Research Assistant qui est un outil d'administration permettant de tester la scurit d'un rseau. SARA tire son origine de SATAN qui est lui-mme un descendant de SAINT. La solution peut tre obtenue via le lien suivant : http://www-arc.com/sara/ .

69

MGL9701 - Projet en gnie logiciel

10 Administration

10.1 Administration matrielle


Ladministration matrielle consiste implanter des contrles physiques afin de contrler les accs aux lieux de travail et aux installations informatiques ou autres. Ces contrles physiques sont nombreux. Ils sont aussi trs varis. En voici quelques exemples : Portes Serrures Chauffage et de climatisation Dtecteurs de fume et alarmes incendie Systmes de suppression des incendies Camras Barricades et cltures Gardes de scurit Etc.

Ladministration matrielle et les contrles physiques sont hors de porte de notre cartographie des solutions libres disponibles pour des raisons videntes.

10.2 Administration logicielle


Les entreprises possdant un nombre lev de serveurs et de postes de travail ne peuvent logiquement raliser ladministration logicielle de ces quipements manuellement. Elles doivent disposer de solutions permettant une gestion centralise du parc informatique. Les sections suivantes dcrivent les solutions libres disponibles permettant linstallation et la distribution de logiciels distance de manire automatise. Ces solutions font parties des infrastructures technologiques modernes.

70

MGL9701 - Projet en gnie logiciel

10.2.1 Gestion des images des serveurs et des postes de travail

SystemImager est un logiciel qui automatise l'installation de Linux distance, la distribution de logiciels et les dploiements en production. Il est utilis pour faire des installations par clonage, pour distribuer des logiciels, pour appliquer des modifications la configuration et effectuer des mises jour au systme d'exploitation dun rseau de machines Linux.

Figure 34 - Gestion des images des serveurs

La solution peut galement tre utilise pour assurer la scurit de la production. En enregistrant limage actuelle de lenvironnement de production avant la mise en production dune nouvelle image, on dispose d'un mcanisme fiable de contingence. Si le nouvel environnement de production est jug instable, il suffit de revenir en arrire en restaurant la dernire image stable de production. Le logiciel peut tre utilis pour grer les environnements suivants: Serveurs web Serveurs de bases de donnes Grappes haute performance Laboratoires informatiques Les environnements de bureau corporatif Etc. La solution peut tre obtenue via le lien suivant : http://sourceforge.net/projects/systemimager

71

MGL9701 - Projet en gnie logiciel

opsi est un logiciel qui automatise l'installation des postes de travail Windows distance, la distribution de logiciels, la gestion de la configuration et permet de grer linventaire matriel et logiciel. La solution peut tre obtenue via le lien suivant : http://www.opsi.org/ 10.2.2 La virtualisation La virtualisation est une tendance trs forte actuellement dans le mode des TI. La virtualisation permet de faire fonctionner sur une seule machine plusieurs systmes d'exploitation et/ou plusieurs applications, sparment les uns des autres, comme s'ils fonctionnaient sur des machines physiques distinctes.

Figure 35 - La virtualisation

Un projet de virtualisation est structurant car il permet de consolider un nombre lev de serveurs physiques et de grer plus efficacement les ressources. Plusieurs solutions existent dans le monde commercial mais la solution en logiciel libre est Xen. Cette solution a t dveloppe par l'universit de Cambridge au Royaume-Uni. Xen permet de faire fonctionner plusieurs systmes d'exploitation virtuels (invits) sur une seule machine hte. La solution peut tre obtenue via le lien suivant : http://www.xen.org/ .

72

MGL9701 - Projet en gnie logiciel

10.3 Administration rseau


Le contrle d'accs au rseau (Network Access Control ou NAC) est un mcanisme informatique permettant de soumettre les accs un rseau d'entreprise un protocole d'identification et de soumettre les machines des restrictions d'usage dfinies pour ce rseau. Ce mcanisme permet lors dun accs au rseau de vrifier la posture du poste de travail venant de se brancher et de le rediriger vers une zone du rseau appel zone de remdiation si la posture ne correspond pas aux politiques tablies par lentreprise. Ce mcanisme rclame la prsence dun agent sur tous les postes de travail appel supplicant . Cet agent effectue linventaire du poste de travail (OS, rustines appliques, prsence des dfenses requises comme des antivirus, etc.) et informe le serveur qui agit comme centre de dcision.

Figure 36 - Le contrle d'accs au rseau

Il existe une solution gratuite qui remplit ce mcanisme de contrle du rseau. La solution peut tre obtenue via le lien suivant : http://www.packetfence.org/fr/home.html

73

MGL9701 - Projet en gnie logiciel

11 Architecture de scurit
La figure suivante dcrit les mcanismes de scurit les plus importants cartographis dans le cadre de ce travail. Le modle darchitecture base de zones a t utilis car il permet de raliser une bonne sparation des fonctions et ltablissement des points de contrle requis dans une bonne architecture de scurit. Larchitecture de scurit cidessous met en uvre des solutions libres reconnues dans le march pour leur stabilit et leur fiabilit

Figure 37 - Architecture de scurit en logiciel libre

74

MGL9701 - Projet en gnie logiciel

12 Recommandations pour les logiciels de la chaire


Cette section vise fournir une information pratique et plus spcifique sur les mcanismes de scurit mettre en place afin de protger les applications dployes sur les serveurs dapplication de la Chaire. Nous nous concentrerons sur les plateformes de dveloppement utilises de manire proposer une architecture de scurit spcialement conue pour ces besoins prcis. Les plateformes de dveloppement sont les suivantes : TOMCAT SPRING REST

12.1 Les approches de scurit pour les applications


Tel que dcrit prcdemment la section 6.2, la scurit dclarative dcrit le scnario o les rgles daccs sont dfinies en dehors de l'application. La scurit programmatique est utilise lorsque l'application doit effectuer un contrle fin des accs aux ressources. On parle ici dune scurit ne sappliquant plus seulement au niveau du formulaire mais au niveau de llment de formulaire ou des ressources arbitraires (une autorisation peut se faire sur autre chose quun URI) gres par lapplication (tables dans une SGBD, imprimantes, etc.).

Figure 38 - Rgle d'accs avec OpenSSO

La scurit dclarative est plus gros grains (URI). Elle accomplit gnralement un travail efficace dans la scurit des applications. Elle permet dtablir des rgles daccs au niveau de la ressource (pages web, JSP, images, etc.). Ceci sied parfaitement toutes les applications base de URI (J2EE, REST, etc.). Limage prcdente dcrit comment spcifier une rgle daccs avec OpenSSO.

75

MGL9701 - Projet en gnie logiciel

12.2 Pensez la scurit ds le dpart


Il est impratif de concevoir un site web dune manire structure avec la scurit en tte ds le dpart. Les chemins aux diffrentes transactions et aux ressources web doivent tre bien sgrgs afin de limiter le nombre de rgles requises pour scuriser les applications et les transactions. Dans lexemple suivant, les ressources web lies aux transactions sont bien dlimites et une seule rgle daccs au niveau de la transaction de retrait suffirait pour demander une nouvelle authentification.

Figure 39 - Structure dun site web

Le modle de rles devra aussi intgrer l'ensemble du tableau et aligner les rles dfinis au niveau dOpenSSO, aux rles dfinis au niveau du serveur de bases de donnes PostgreSQL. Par exemple, le rle gestionnaire permettra daccder aux formulaires web permettant lapprobation des feuilles de temps. Le processus dapprobation permettra galement au gestionnaire de mettre jour la table associe aux feuilles de temps dans PostgreSQL via le rle gestionnaire dfinit au niveau de la scurit de PostgreSQL. La mthode est dcrite la section 6.7.

Figure 40 - Le modle de rles

Un modle de scurit de type RBAC (Role-based Access Control) permet dassocier un utilisateur, un rle daffaires octroyant les accs dune collection logique de ressources web. Ces accs permettent de raliser une fonction daffaires bien dfinie tels que secrtaire, comptable ou gestionnaire dans une entreprise.

76

MGL9701 - Projet en gnie logiciel

12.3 Topologie des applications


Larchitecture multicouche est la pratique consistant dcouper une application dans ses parties logiques. Initialement dveloppe pour surmonter des problmes lis au modle client/serveur, elle apparat aujourd'hui comme la principale mthode de dploiement des applications Web. Une application multicouche se compose habituellement d'au moins trois niveaux, bien que de nombreuses alternatives existent: La couche prsentation En gnral, le navigateur web client La couche affaires Les serveurs web et les serveurs d'applications La couche des donnes - La base de donnes PostgreSQL

Figure 41 - Architecture multicouche [26]

12.4 La sgrgation est la cl


Il existe de nombreuses raisons pour sparer les applications en diverses composantes. Les principales raisons sont dcrites ci-dessous. La simplicit - En minimisant le nombre de composantes installes sur un systme donn, on simplifie ladministration de celui-ci et lon rduit les risques de conflits de bibliothques. La performance - Avec un nombre rduit de composantes, le systme bnficiera d'un gain de performance et sera en mesure dassurer les besoins dvolutivit et de monte en puissance des applications. La scurit - La distribution des composantes sur plusieurs systmes rduit considrablement les risques. Par exemple, un systme pour une application de type LAMP renferme en gnral toutes les composantes de la solution (Linux, Apache, PHP, MySQL). Si la machine est compromise, toutes les composantes le sont, les donnes comprises. o La sgrgation facilite galement la distribution des points de contrle de scurit pour une solution donne (pare-feux, IDS, etc.).

77

MGL9701 - Projet en gnie logiciel o La sgrgation permet galement linstauration dune sparation des rles (administrateurs de systmes, de la scurit, des donnes, etc.).

Figure 42 - La sgrgation est la cl [26]

78

MGL9701 - Projet en gnie logiciel

12.5 Les solutions de scurit web les plus populaires


Au chapitre de la scurit des applications, les trois solutions suivantes ont t values. Ces solutions sont les plus utilises pour remplir les besoins dauthentification centralise requis par les entreprises dployant un nombre lev dapplications. Ces solutions offrent galement la fonction de SSO permettant lutilisateur de sauthentifier quune seule fois et daccder plusieurs applications par la suite sans avoir se rauthentifier. Une stratgie de gestion didentits base sur un annuaire LDAP contribuera galement rduire les besoins de se rauthentifier.

Solutions

Options CAS ou Central Authentication Service est un systme dvelopp lorigine par luniversit de Yale. Cest un systme dauthentification centralis conu pour les infrastructures J2EE et Spring. JOSSO ou Java Open Single Sign-On est un systme dauthentification centralis conu pour les infrastructures J2EE et Spring. OpenSSO est un systme de contrle daccs web. Cest un systme dauthentification centralis conu pour les infrastructures J2EE et Spring. Il offre aussi les fonctions dautorisation et de fdration didentits.
Table 11 - Les solutions de scurit web les plus populaires

79

MGL9701 - Projet en gnie logiciel

12.6 La solution recommande


En raison de ses capacits dintgration et de ses fonctions de scurit suprieures, OpenSSO se distingue notablement de CAS et de JOSSO. En plus doffrir les fonctions dauthentification centralise et de SSO, OpenSSO couvre galement les volets de lautorisation et de la fdration didentit selon la norme Liberty Alliance . La solution permet de grer de manire centralise les accs aux applications excutant sur Tomcat et dliminer les besoins dadministration serveur par serveur imposs par le modle de scurit de la spcification J2EE.

Figure 43 - Gestionnaire d'accs (source : Sun)

La communaut OpenSSO est trs active et les diffrents logiciels enfichables (plugins) dvelopps par la communaut permettent dintgrer la scurit dOpenSSO aux plateformes de dveloppement les plus populaires telles que : Tomcat Spring REST (incluant OAUTH)

Le support de OpenSSO stend mme aux langages scripts les plus modernes. En effet, des plugins ont t dvelopps afin dintgrer par exemple : Grails http://grails.org/plugin/opensso Ruby on rail - http://developers.sun.com/identity/reference/techart/appintegration.html

Finalement, OpenSSO sinstalle trs facilement comme un simple .WAR sur Tomcat, JBOSS, etc.

80

MGL9701 - Projet en gnie logiciel

12.7 Les points de contrle de scurit


La figure suivante dcrit les principaux points de contrle ncessaires la protection dune application web. Ces points de contrle associs aux bonnes pratiques de programmation concernant la gestion des sessions et la validation des donnes fourniront une fondation solide pour la scurit des applications web.

Figure 44 - Les points de contrle de scurit

12.7.1 Gestion des sessions On nomme session lensemble des mcanismes permettant de crer et de maintenir comme une suite logique et cohrente les requtes provenant dun utilisateur. Plusieurs solutions techniques soffrent au dveloppeur web afin de rduire les risques en matire de gestion des sessions. Utiliser des identifiants de session non prdictibles et uniques. o Utiliser des lments alatoires ou spcifiques lutilisateur comme : Lheure et la date de connexion, Ladresse IP de lutilisateur Un gnrateur de nombres alatoires Etc.,

81

MGL9701 - Projet en gnie logiciel o Utiliser une fonction de hachage (SHA, MD5) sur le rsultat obtenu ou encore un CAM afin dassurer lauthenticit de didentifiant. Le mcanisme est dcrit la section 3.2. Utiliser les fonctions de gnration de nombres alatoires offertes par les bibliothques cryptographiques de java dcrites la section 7.2 pour gnrer des identifiants de session. Cela permet de s'assurer que personne ne pourra usurper la session de quelquun d'autre. Chiffrer l'identifiant de session pour rendre opaque les informations lies l'identifiant de session. Utiliser une cl de chiffrement connue seulement de l'application web. Utiliser un nouvel identifiant de session chaque nouvelle connexion lapplication. Invalider lancien identifiant de session. Fermer les sessions o En rponse une demande explicite de lutilisateur o En raison dune erreur o En raison dun priode dinactivit

Le tableau ci-dessous propose des valeurs de dure de vie des sessions en fonction du risque. Les dures associes aux sessions inactives correspondent au temps dinactivit dun utilisateur. Les dures associes aux sessions longues correspondent au temps maximal dattente pour obtenir le rsultant dune transaction.

Table 12 Dure de vie des sessions (source : CASES)

viter les inscriptions automatiques ralises par les robots en utilisant un CAPTCHA (Completely Automated Public Turing test to Tell Computers and Humans Apart) lors de lenregistrement.

Figure 45 Exemple de Captcha

82

MGL9701 - Projet en gnie logiciel

12.7.2 Dtection des intrusions via ModSecurity Le module ModSecurity est un firewall applicatif. Il fonctionne comme les systmes de dtection dintrusions que lon retrouve dans les rseaux mais a ceci de particulier quil est spcialement conu pour la dtection des intrusions au niveau applicatif (couche 7). Les diffrentes rgles de ModSecurity permettent de dtecter les attaques suivantes lances contre les applications et de les bloquer. Les attaques par XSS (Cross Site Scripting) Les injections de SQL Les injections de Javascript Les injections AJAX Les injections denttes HTTP Le piratage de sessions etc.

Figure 46 Dtection des attaques (source : OWASP)

Par exemple, afin dliminer une attaque voulant injecter une commande SQL drop table , la rgle suivante sera utilise. SecFilter "drop[[ :space :]]table " Afin de prohiber les tlchargements de fichiers vers votre site web, la rgle suivante sera utilise : SecFilterSelective "HTTP_CONTENT_TYPE" multipart/form-data

83

MGL9701 - Projet en gnie logiciel

12.7.3 Faade et aiguillage via mod_proxy Une autre bonne pratique de la scurit concerne la mise en place dun serveur mandataire (proxy). En plus dtre un requis pour ModSecurity, ce mode de dploiement permet dintroduire une notion de faade, un pattern bien connu dans le monde java. En effet, grce au module mod_proxy, les requtes peuvent tre achemines aux diffrents serveurs rsidant dans lintranet dune manire opaque lutilisateur. Lexemple suivant dmontre laiguillage ralis par mod_proxy. Les adresses IP et les ports des serveurs applicatifs sont totalement invisibles du monde extrieur.

Figure 47 - Apache comme serveur en faade (source : IBM)

12.7.4 Authentification lannuaire LDAP Afin de pouvoir raliser une gestion du cycle de vie des identits adquate, il est vital de considrer ds le dpart que la source autoritaire didentits sera lannuaire LDAP. Toutes les applications devront salimenter cette source afin dliminer les problmes lis aux multiples bases de comptes (une par application). Dans notre modle, OpenSSO et PostgreSQL utiliseront lannuaire OpenDS comme source didentit et dauthentification.

84

MGL9701 - Projet en gnie logiciel 12.7.5 Chiffrement des donnes sensibles En raison des diffrentes lgislations relatives la protection de la vie prive, les entreprises et donc les dveloppeurs sont tenus de maintenir la confidentialit des donnes nominatives des utilisateurs. Afin de se conformer ces rgles, le dveloppeur dispose des bibliothques cryptographiques intgres au JDK telles que dcrites la section 7.2. Le dveloppeur peut galement utiliser les outils cryptographiques de la base des donnes tel que le programme pgcrypto de PostgreSQL dcrit la section 6.7.3.

12.7.6 Journaux scuriss La production de journaux et leur conservation sont des tches essentielles tant pour les systmes que pour les applications. Les journaux produits, afin dtre utilisables lors dventuelles investigations, doivent tre intgres et libres de toutes modifications. Il existe deux avenues principales lorsque lon dveloppe sur Unix/Linux tel que dcrit la section 4.2. Syslog-ng rsyslog

Dans les deux cas, ces moutures de syslogd sont des versions amliores en termes de fiabilit, de performance et surtout en termes de scurit. Elles comprennent les fonctionnalits requises suivantes : Horodatage des vnements criture des vnements via un tunnel chiffr Signature des journaux Garantie de livraison

12.8 Modle de dploiement recommand


Une tendance technologique actuellement incontournable est la virtualisation. Les objectifs de rduction de cots et de valorisation des ressources des ordinateurs ne sont pas que lapanage des grosses entreprises mais constituent aussi une ralit de tous les jours pour les dveloppeurs. En effet, le dveloppeur est souvent confront des situations ou les moyens allous pour la cration des environnements de dveloppement sont plutt rduits. La virtualisation offre une alternative attrayante car elle permet dexcuter sur un seul ordinateur plusieurs machines virtuelles et ainsi reflter la distribution multicouche du modle de dploiement recommand. Dans notre contexte de scurisation des applications, la virtualisation permet de crer les points de contrle prcdents dans un environnement de dveloppement form dun seul ordinateur. Un coupe-feu (ipcop) install localement sur chacune des machines virtuelles permettra de restreindre les flux entre les composantes. 85

MGL9701 - Projet en gnie logiciel

Figure 48 - Scnario de dploiment

Le tableau suivant dcrit notre scnario de dploiement. Il rsume parfaitement les recommandations prcdentes en ce qui a trait la sgrgation logique des composantes des applications et applique galement la lettre, la sgrgation des rles des diffrents administrateurs de la solution. Machines virtuelles MV1 Fonctions Cette machine virtuelle servira grer les autres machines virtuelles. Elle est accessible uniquement par le biais du protocole SSH et les accs sont limits aux administrateurs de systmes. Les journaux sont galement centraliss sur cette machine virtuelle. Cette machine virtuelle excute la solution OpenSSO. Cette machine virtuelle ne peut tre accde que par des administrateurs de la scurit. Cette machine virtuelle excute le serveur mandataire et les modules de scurit de premire ligne. Cette machine virtuelle ne peut tre accde que par des administrateurs de la scurit. Cette machine virtuelle excute les applications. Cette machine virtuelle ne peut tre accde que par des administrateurs dapplications. Cette machine virtuelle excute la SGBD. Cette machine virtuelle ne peut tre accde que par des administrateurs des donnes.

MV2

MV3

MV4

MV5

Table 13 - Les machines virtuelles et leurs fonctions dans la solution

Une fois les phases de dveloppement et de tests intgrs ralises, il suffira de raliser une mise en grappe de la solution en production afin dassurer volutivit et rsilience aux pannes notre solution. Le balancement de charge tel que dcrit la section 8.2.2 pourra tre mis contribution.

86

MGL9701 - Projet en gnie logiciel

13 Conclusion
En conclusion et en rponse aux questions formules dans lintroduction de ce document, il semble vident que le monde du logiciel libre comporte une gamme trs tendue de solutions, et ce, dans tous les domaines de la scurit. Dans bien des cas, lauteur a d faire des choix face la quantit de solutions soffrant lui. lexception de lauthentification biomtrique et de ladministration matrielle, la totalit des fonctions du cadre de rfrence de scurit a t couverte. Il ny a donc pas de relles limitations concernant la conception darchitectures de scurit en libre. La seconde question portait sur la viabilit des architectures de scurit conues partir de solutions libres. Nous devons faire preuve dune certaine prudence mais dans lensemble, il ny a pas de limitations majeures si lon sen tient des solutions prouves. En fait, bon nombre des solutions rpertories dans ce document sont dj utilises dans les entreprises. Des logiciels tels que Snort, SpamAssassin, modSecurity, OpenVPN, OpenSSH, OpenSSO, freeRadius, BIND, Nessus, nmap, Linux HA, SELinux, JCA/JCE et encore bien dautres, sont des solutions solides et prouves. Les architectes peuvent donc, ds lors, intgrer ces solutions leurs architectures sans mettre en pril leurs systmes dinformation. Le monde du logiciel libre offre aussi une alternative intressante aux solutions commerciales dans des secteurs aussi en vogue que le cloud computing et les TI vertes Green IT . La famille de logiciels de Linux HA (High Availability) combine lhyperviseur Xen de luniversit de Cambridge, fournissent une infrastructure technologique fonctionnelle et ayant fait ses preuves. Au chapitre de la scurit logicielle, nous avons mis certaines recommandations en ce qui a trait aux logiciels utiliss dans le cadre des travaux de la Chaire. Nous avons propos un ensemble limit mais efficace de mesures de scurit afin de ne pas dcourager leur mise en application. travers le temps, des mesures additionnelles pourront sajouter en fonction des besoins de la Chaire. Ce document pourra, ce titre, servir de rfrentiel de solutions de scurit afin de bonifier larchitecture de scurit propose.

87

MGL9701 - Projet en gnie logiciel

14 Bibliographie
Les rfrences suivantes ont t utilises dans le cadre de ce travail. Elles ont servies valider le cadre de rfrence ou rfrentiel de scurit utilis et organiser linformation dune manire structure. [1] Committee of Sponsoring Organization of the Treadway Commission (COSO) [2] Control Objectives for Business & Related Technology (COBIT), ISACA [3] Information Technology Infrastructure Library (ITIL) [4] ISO/IEC 13335-1:2004, Technologies de l'information -- Techniques de scurit -Gestion de la scurit des technologies de l'information et des communications -- Partie 1: Concepts et modles pour la gestion de la scurit des technologies de l'information et des communications [5] ISO/IEC IS 13335-2:1997, Technologies de l'information -- Lignes directrices pour le management de scurit IT -- Partie 2: Management et planning de scurit IT [6] ISO/IEC TR 13335-4:2000, Technologies de l'information -- Lignes directrices pour la gestion de scurit IT -- Partie 4: Slection de sauvegardes [7] ISO/IEC TR 13335-5:2001, Technologies de l'information -- Lignes directrices pour la gestion de scurit IT -- Partie 5: Guide pour la gestion de scurit du rseau [8] ISO/CEI 27000, Technologies de l'information Techniques de scurit Introduction et vue globale de la famille des standards, ainsi qu'un glossaire des termes communs [9] ISO/CEI 27001, Technologies de l'information Techniques de scurit Systmes de gestion de la scurit de l'information Exigences, Numro de rfrence ISO/CEI 27001:2005(F) [10] ISO/CEI 27002, Technologies de l'information Techniques de scurit Code de bonne pratique pour la gestion de la scurit de l'information, Numro de rfrence ISO/CEI 27002:2005(F) [11] ISO/CEI 27003, Technologies de l'information Techniques de scurit Guide dimplantation dun SMSI [12] ISO/CEI 27004, Technologies de l'information Techniques de scurit Standard de mesures de management de la scurit de l'information

88

MGL9701 - Projet en gnie logiciel [13] ISO/CEI 27005, Technologies de l'information Techniques de scurit Standard de gestion de risques lis la scurit de l'information [14] ISO/CEI 27006, Technologies de l'information Techniques de scurit - Guide de processus de certification et d'enregistrement [15] ISO/IEC 15408-1, First Information technology Security techniques Evaluation criteria for IT security Part 1: Introduction and general model, Reference number ISO/IEC 15408-1:1999(E) [16] ISO/IEC 15408-2, Information technology Security techniques Evaluation criteria for IT security Part 2: Security functional requirements, Reference number ISO/IEC 15408-2:1999(E) [17] ISO/IEC 15408-3, Information technology Security techniques Evaluation criteria for IT security Part 3: Security assurance requirements, Reference number ISO/IEC 15408-3:1999(E) [18] IT Governance Institute, Office of Governance Commerce , Aligning CobiT 4.1, ITIL V3 and ISO/IEC 27002 for Business Benefit, A Management Briefing From ITGI and OGC [19] Stamp, Paul & Khalid, Kark, Information Security Framework, May 2007, Forrester Research [20] Poggi, Sbastien, Novembre 2005, Modle de rfrence de processus, CASES [21] Blouin, Jean, Ministre de la sant et des services sociaux, Architecture de scurit Infrastructure technologique, Volet change, Version 1.5 [22] NIST Special Publication 800-63-1, Information Security Electronic Authentication Guideline [23] NIST Special Publication 800-92, Guide to Computer Security Log Management [24] RSA Laboratories, PKCS #11 v2.20: Cryptographic Token Interface Standard 28 June 2004 [25] IETF, RFC 3161, Internet X.509 Public Key Infrastructure Time-Stamp Protocol (TSP), August 2001 [26] NISCC, Briefing 10/2006, Secure Web Applications, Development, Installation and security testing [27] CLUSIF, Les dossiers techniques, Grer la scurit dun site de commerce lectronique, Mai 2001, Version 1.0, Commission Rseaux et Systmes Ouverts

89

MGL9701 - Projet en gnie logiciel [28] Groupe CGI Inc, La Gouvernance TI et la scurit informatique, 2008-06-11 [29] Paul Axayacatl, FRAUSTO BERNAL, Utilisation des certificats d'attribut pour acclrer l'usage de la signature lectronique, JRES 2003 [30] Ann Cavoukian, Ph.D., Commissaire linformation et protection de la vie prive/Ontario, Le chiffrement du courrier lectronique : Rien de plus simple!, Aot 1999

Rfrences Web
Fonctions Gouvernance Liens http://www.coso.org/ http://www.isaca.org/ http://www.itil-officialsite.com/home/home.asp http://www.27000.org/ http://sourceforge.net/projects/systemimager http://www.opsi.org/ http://www.cl.cam.ac.uk/research/srg/netos/xen/ http://www.packetfence.org/fr/home.html http://docs.safehaus.org/display/PENROSE/Home http://www.opends.org/ http://www.openldap.org/ http://directory.apache.org/ http://www.sun.com/software/products/directory_srvr_ee/ http://www.jasig.org/cas http://www.sun.com/software/products/opensso_enterprise/index.xml http://openid.net/ http://www.hardtokenmgmt.org/ http://java.sun.com/javase/technologies/security/ http://www.bouncycastle.org/ http://www.truecrypt.org/ http://www.openssl.org/ http://www.openssh.org/fr/index.html http://winscp.net/eng/index.php http://www.chiark.greenend.org.uk/~sgtatham/putty/ http://java.sun.com/javase/6/docs/technotes/guides/security/ http://amanda.zmanda.com/ http://www.openfiler.com/community http://www.splunk.com/ http://en.opensuse.org/AppArmor http://selinux.sourceforge.net/ http://ws.apache.org/rampart/ https://spaces.internet2.edu/display/OpenSAML/Home/ http://static.springframework.org/spring-security/site/index.html http://openvpn.net

Administration

Authentification

Confidentialit

Conservation

Contrle daccs

90

MGL9701 - Projet en gnie logiciel http://www.untangle.com/OpenVPN http://www.freeswan.org http://www.smoothwall.org/ http://www.ipcop.org/ http://www.netfilter.org/ http://www.untangle.com/Firewall http://www.fwbuilder.org/ http://www.openiam.com/ https://opensso.dev.java.net/ http://wiki.interldap.ow2.org/xwiki/bin/view/Main/WebHome http://www.linux-vs.org http://www.linux-ha.org/DRBD http://www.linux-ha.org/Heartbeat http://www.rsync.net/ http://www.openfiler.com/community http://www.ejbca.org/ http://java.sun.com/javase/6/docs/technotes/guides/security/crypto/Cry ptoSpec.html http://java.sun.com/javase/6/docs/technotes/guides/security/crypto/Cry ptoSpec.html#MessageDigest http://www.bouncycastle.org/fr/index.html http://www.ejbca.org/ http://www.signserver.org/ http://www.splunk.com/ http://www.infodrom.org/projects/sysklogd/ http://java.sun.com/j2se/1.4.2/docs/guide/util/logging/ http://logging.apache.org/log4j/1.2/index.html http://commons.apache.org/logging/ http://www.rsyslog.com http://freshmeat.net/projects/syslog-ng http://sourceforge.net/projects/lassolog http://www.nagios.org/ http://www.ossec.net/ http://www.snort.org/ http://www.untangle.com/Intrusion-Prevention http://www.ossim.net/ http://clamav.net/ http://www.untangle.com/Virus-Blocker http://www.untangle.com/Spyware-Blocker http://www.untangle.com/Spam-Blocker http://spamassassin.apache.org/

Disponibilit

Intgrit

Irrvocabilit

Surveillance

91

Вам также может понравиться