SYSTEM HEALTH MONITORING AND PROACTIVE RESPONSE ACTIVATION

RESUME Les services reseau sont de plus en plus etendus et de plus en plus complexes a gerer. Il est extremement important de maintenir la qualite de service pour les utilisateurs, en particulier le temps de reponse des applications et services critiques en forte demande. D'autre part, il y a une evolution dans la maniere avec laquelle les attaquants accedent aux systemes et infectent les ordinateurs. Le deploiement d'un outil de detection d'intrusion (IDS) est donc essentiel pour surveiller et analyser les systemes en operation. Une composante importante a associer a un outil de detection d'intrusion est un sous-systeme de calcul de la severite des attaques et de selection d'une reponse adequate au bon moment. Ce composant est nomme systeme d'intervention et de reponse aux intrusions (IRS). Un IRS doit evaluer avec precision la valeur de la perte que pourrait subir une ressource compromise ainsi que le cout des reponses envisagees. Sans cette information, un IRS automatique risque de serieusement reduire les performances du reseau, deconnecter a tort les utilisateurs du reseau, causer un resultat impliquant des couts eleves pour le retablissement des services par les administrateurs, et ainsi devenir une attaque par deni de service de notre reseau. Dans cette these, nous abordons ces defis et nous proposons un IRS qui tient compte de ces couts. Dans la premiere partie de cette these, nous presentons une evaluation dynamique des couts de reponse. L'evaluation des couts d'intervention est un element important du systeme d'intervention et de reponse aux intrusion. Bien que de nombreux IRS automatises aient ete proposes, la plupart d'entre eux choisissent statiquement les reponses en fonction des attaques, evitant la necessite d'une evaluation dynamique des couts de reponse. Toutefois, avec une evaluation dynamique des reponses, on peut attenuer les inconvenients du modele statique. En outre, il sera alors plus efficace de defendre un systeme contre une attaque car la reponse sera moins previsible. Un modele dynamique offre une meilleure reponse choisie selon la situation actuelle du reseau. Ainsi, l'evaluation des effets positifs et des effets negatifs des reponses doit etre calculee en ligne, au moment de l'attaque, dans un modele dynamique. Nous evaluons le cout de reponse en ligne en fonction des liens de dependance entre les ressources, du nombre d'utilisateurs en ligne, et du niveau de privilege de chaque utilisateur. Dans la deuxieme partie, un IRS a justement ete propose qui fonctionne avec une composante d'evaluation en ligne du risque d'attaque. Une coordination parfaite entre le mecanisme d'evaluation des risques et le systeme de reponse dans le modele propose a conduit a un cadre efficace qui est capable de : (1) tenter de reduire les risques d'intrusion, (2) calculer l'efficacite des reponses, et (3) decider de l'activation et la desactivation des reponses en fonction de facteurs dont plusieurs qui ont rarement ete couverts dans les precedents modeles impliquant ce type de cooperation. Pour demontrer l'efficacite et la faisabilite du modele propose dans les environnements de production reels, une attaque sophistiquee, exploitant une combinaison de vulnerabilites afin de compromettre un ordinateur cible, a ete mise en oeuvre. Dans la troisieme partie, nous presentons une methode en ligne pour calculer le cout de l'attaque a l'aide d'une combinaison de graphe d'attaque dynamique et de graphe de dependances de services en mode direct. Dans ce travail, la detection et la generation du graphe d'attaque sont basees sur les evenements d'une trace d'execution au niveau du noyau, ce qui est nouveau dans ce travail. En effet, notre groupe (Laboratoire DORSAL) a concu un traceur a faible impact pour le systeme d'exploitation Linux, appele LTTng (Linux Trace Toolkit prochaine generation). Tous les cadres proposes sont bases sur le traceur LTTng. Le noyau Linux est instrumente avec l'infrastructure des points de trace. Ainsi, il peut fournir beaucoup d'information sur les appels systeme. Aussi, ce mecanisme est disponible en espace utilisateur. Apres avoir recueilli toutes les traces, il faut les synchroniser puisque chaque noeud sur lequel une trace est generee posse de sa propre horloge. Finalement, nous utilisons un algorithme d'abstraction pour faire face aux enormes fichiers de trace et synthetiser les informations utiles pour un mecanisme de detection d'attaques et de declenchement de mesures correctives visant a attenuer l'effet des attaques. ---------ABSTRACT Network services are becoming larger and increasingly complex to manage. It is extremely important to maintain the users QoS, the response time of applications, and critical services in high demand. On the other hand, we see impressive changes in the ways in which attackers gain access to systems and infect computers. Deployment of intrusion detection tools (IDS) is critical to monitor and analyze running systems. An important component needed to complement intrusion detection tools is a subsystem to evaluate the severity of each attack and select a correct response at the right time. This component is called Intrusion Response System (IRS). An IRS has to accurately assess the value of the loss incurred by a compromised resource and have an accurate evaluation of the responses cost. Otherwise, our automated IRS will reduce network performance, wrongly disconnect users from the network, or result in high costs for administrators reestablishing services, and become a DoS attack for our network, which will eventually have to be disabled. In this thesis, we address this challenges and we propose a cost-sensitive framework for IRS. In the rst part of this dissertation, we present a dynamic response cost evaluation. Response cost evaluation is a major part of the Intrusion Response System. Although many automated IRSs have been proposed, most of them use statically evaluated responses, avoiding the need for dynamic evaluation of response cost. However, by designing a dynamic evaluation for the responses, we can alleviate the drawbacks of the static model. Furthermore,it will be more eective at defending a system from an attack as it will be less predictable. A dynamic model oers the best response based on the current situation of the network. Thus, the evaluation of the positive eects and negative impacts of the responses must be computed online, at attack time, in a dynamic model. We evaluate the response cost online with respect to the resources dependencies and the number of online users. In the second part, an IRS has been proposed that works with an online risk assessment component. Perfect coordination between the risk assessment mechanism and the response system in the proposed model has led to an ecient framework that is able to: (1) manage risk reduction issues; (2) calculate the response Goodness; and (3) perform response activation and deactivation based on factors that have rarely been seen in previous models involving this kind of cooperation. To demonstrate the eciency and feasibility of using the proposed model in real production environments, a sophisticated attack exploiting a combination of vulnerabilities to compromise a target machine was implemented. In the third part, we present an online method to calculate the attack cost using a combination of dynamic attack graph and service dependency graph in live mode. In this work, detecting and generating the attack graph is based on kernel level events which is new in this work.Our group (DORSAL Lab) has designed a low impact tracer in the Linux operating system called LTTng (Linux Trace Toolkit next generation). All the proposed frameworks are based on the LTTng tracer. The Linux kernel is instrumented with the tracepoint infrastructure. Thus, it can provide a lot of information about system call entry and exit. Also, this mechanism is available at user-space level. After gathering all traces, we have to synchronize them because each trace is generated on a node with its own clock. We use an abstraction algorithm, to deal with huge trace les, to prepare useful information for the detection mechanism and nally to trigger corrective measures to mitigate attacks