Détection D’intrusions en Environnement réparti de Type CORBA Sécurité des Systèmes d’informations 19 juin 2000 Paris Zakia MARRAKCHI Thésarde - équipe SSIR Supélec- Campus de Rennes
Supélec/Campus de Rennes/Equipe SSIR 2 Plan zIntroduction rapide à l’architecture CORBA zSécurité dans CORBA : et l’audit ? zDétection d’intrusions zProposition : détection d’intrusions dans CORBA zTravaux futurs
Supélec/Campus de Rennes/Equipe SSIR 3 Concepts de base zOMG : object management group (plus de 700 industriels) zCORBA : common object request broker architecture y Version 4.0 zObjectif : permettre à des objets clients et serveurs de communiquer via un bus logiciel commun (ORB) de manière indépendante... x Des langages d’implémentation (C,C++, java…), x De l’environnement d’exécution (UNIX, NT,…) et x Du réseau de communication (TCP/IP) Définition de l’interface des objets dans un standard : le langage IDL (interface definition language)
Supélec/Campus de Rennes/Equipe SSIR 4 ORB : Object Request Broker zRôle : y fournir l’interopérabilité entre les applications y séparation interface/implémentation y transparence de l’accès aux objets et de leur localisation zComent ? y établir une relation Client/Serveur entre objets y localiser de manière transparente l’objet servant y passer la requête du client à l’objet servant y retourner le résultat au client
Supélec/Campus de Rennes/Equipe SSIR 5 Contrôle des messages par l’ORB Objet Client C, C++, Smalltalk, Java,.. Interface IDL Objet Servant C, C++, Smalltalk, Java,.. Interface IDL BOA/ POA Message (ObjRef, opération()) Réponse (résultats) Stubs Squelette Statique Contrat IDL BUS ORB nommage gestion d’évènements Service de sécurité... Services Objets Utilitaires Communs
Supélec/Campus de Rennes/Equipe SSIR 6 Plan zIntroduction rapide à l’architecture CORBA zSécurité dans CORBA : et l’audit ?
Supélec/Campus de Rennes/Equipe SSIR 7 Besoins de CORBA en sécurité zContrôle d’accès à l’interface IDL et à son implémentation zIdentification et autorisation Client CORBA Client objet servant zProtection des échanges de messages znon répudiation zAudit développement par l’OMG d’un modèle de sécurité SRM (Security Reference Model)
Supélec/Campus de Rennes/Equipe SSIR 8 Services de Sécurité CORBA zServices de base de SRM authentification, autorisation confidentialité non répudiation intégrité – Audit ? Cryptographie Intercepteurs
Supélec/Campus de Rennes/Equipe SSIR 9 Intercepteurs : un moyen de surveillance zinterposés dans le chemin de l’invocation/réponse entre un client et un servant zcapables de : y récupérer tout ce qui passe par l’ORB, y le modifier et y le rediriger Client Objet Servant Intercepteur de niveau requête Intercepteur de niveau message ORB Intercepteur de niveau requête Intercepteur de niveau message invocation réponse identité du serveur (hostname, login) identité du client (adresse IP, num port) nom de l’objet invoqué, nom de la requête, paramètres de la requête si exception : nom de l’exception horodatage
Supélec/Campus de Rennes/Equipe SSIR 10 Plan zIntroduction rapide à l’architecture CORBA zDétection d’intrusions zSécurité dans CORBA : et l’audit ?
Supélec/Campus de Rennes/Equipe SSIR 11 Définition zAudit de sécurité : L’ensemble des mécanismes permettant la collecte d’informations sur les actions faites sur un système y CORBA : audit possible via les intercepteurs zDétection d’intrusions : L’analyse des informations collectées par les mécanismes d’audit de sécurité, à la recherche d’éventuelles attaques
Supélec/Campus de Rennes/Equipe SSIR 12 Systèmes de Détection d’Intrusions Méthode de détection Comportement après détection Source de Données Fréquence d’utilisation Approche par scénarios Approche comportementale Actif Passif Audit système Trafic réseaux Surveillance continue Surveillance périodique Audit applicatif Approche proposée Classification des Systèmes de Détection d’Intrusions
Supélec/Campus de Rennes/Equipe SSIR 13 Plan zIntroduction rapide à l’architecture CORBA zSécurité dans CORBA : et l’audit ? zDétection d’intrusions zProposition : détection d’intrusions dans CORBA
Supélec/Campus de Rennes/Equipe SSIR 14 Proposition zObjectif zPhase d’apprentissage : y Observation du comportement du client CORBA y Modélisation du comportement observé y Création d’intervalles de tolérance zPhase de détection zRésultats expérimentaux
Supélec/Campus de Rennes/Equipe SSIR 15 Objectif On veut : z protéger les objets CORBA de comportements intrusifs des clients de l’application Comment ? z Observer les clients de l’application CORBA y durant phase d’apprentissage modéliser leurs comportements y phase de détection mesure des déviations par rapport aux comportements appris
Supélec/Campus de Rennes/Equipe SSIR 16 Apprentissage du comportement zobservation du comportement des clients de l’application CORBA durant chaque connexion: y interception des échanges de messages (intercepteurs côté serveur ) y journalisation des opérations (fichiers d’audit) y filtrage des informations les plus pertinentes à la définition d’un comportement normal : requêtes invoquées Client Objet Servant ORB invocation réponse connexion verser (x) consulter (y) retirer (x, y) déconnexion... Fichier d’audit intercepteur
Supélec/Campus de Rennes/Equipe SSIR 17 Principe de la modélisation (1) Racine : connexion feuille : deconnexion nœud : reuquête invoquée chemin : suite de requêtes entre C/D jugées normale Côté serveur
Supélec/Campus de Rennes/Equipe SSIR 18 Principe de la modélisation (2) Exemple Start A(x,y)B(x) D(y,z)C (x,y,z) End Valeurs de x dans C(x,y,z) : 10,10,10,15,15,20,20,25,100, 150,160,165,200
Supélec/Campus de Rennes/Equipe SSIR 19 Construction des intervalles de tolérances
Supélec/Campus de Rennes/Equipe SSIR 20 Phase de détection (1) zA chaque connexion du client de l’application CORBA : y Parcours de l’arbre de comportement et calcul d’un degré de similarité y Calcul du degré de similarité est fonction de l’intervalle de tolérance zA chaque déconnexion : y Émission d’alarmes en fonction de la valeur du degré de similarité
Supélec/Campus de Rennes/Equipe SSIR 21 Phase de détection (2) zCalcul du degré de similarité pour la connexion i : y à la racine : d 0 i = 1 y à chaque nœud d k i = d k-1 i - P(va j..va n ) avec P(va j..va n ) = Moyenne(p j (va i )) p i = F (va i )) k : indice du nœud courant k-1 : indice du nœud précédent P : pénalité globale affectée au nœud pj : pénalité élémentaire d’un paramètre j : indice du paramètre numérique de la requête
Supélec/Campus de Rennes/Equipe SSIR 22 Phase de détection (3) zAlarme instantanée y Pour chaque nœud : calcul du degré d k i y si (opération imprévue ou paramètre symbolique jamais observé ) d k i = 0 alerte instantannée et déconnexion y A chaque déconnexion : x si ( d k i < seuil instantanné s ) : alerte instantanée z Alarme composée y prise en compte du comportement sur une période plus longue y observer les différents degrés d i y si (d i reste inférieur à un deuxième seuil composé s’ pendant un intervalle de temps t > t ) une alerte composée est déclenchée
Supélec/Campus de Rennes/Equipe SSIR 23 Exemple d’émission d’alarme
Supélec/Campus de Rennes/Equipe SSIR 24 Résultats expérimentaux (1) zContexte : y Contrat avec FT (R&D) y ORB : Visibroker4.0 y Application bancaire simplifiée zComportement appris du client est constitué d’une suite d’opérations de base sur un compte bancaire (retirer, verser, créer, consulter le solde, etc.) zBut de l’expérimentation : validation de notre modèle vis-à- vis : y de la pertinence des intervalles construits y des alarmes générées
Supélec/Campus de Rennes/Equipe SSIR 25 Résultats expérimentaux (2)
Supélec/Campus de Rennes/Equipe SSIR 26 Plan zIntroduction rapide à l’architecture CORBA zSécurité dans CORBA : et l’audit ? zDétection d’intrusions zProposition : détection d’intrusions dans CORBA zTravaux futurs
Supélec/Campus de Rennes/Equipe SSIR 27 Travaux futurs zEn attente de données réelles afin d’étudier : y pertinence de l’alerte y taux de fausses alarmes y prise en compte des insertions et suppressions d’opérations y étude des corrélations entre les paramètres de requêtes successives y réaction après détection y prise en compte du temps
Supélec/Campus de Rennes/Equipe SSIR 28 Communications Z.Marrakchi, L.Mé, B.Vivinis, B.Morin « Flexible intrusion detection using variable-length behavior modeling in distributed environments : application to CORBA objects », Proceedings of the Third International Symposium on the Recent Advances in Intrusion Detection, Springer Verlag, LNCS (Octobre 2000) Z.Marrakchi « Anomaly detection in distributed environments : variable-length behavior modeling applied to CORBA objects », Proceedings of the Student Forum of the IEEE/IFIP International Conference on Dependable Systems and Networks (Juin 2000)