R?union RESIST (R?seaux et Syst?mes d'Information S?curis?s ? Toulouse) du 27 mai 2002-05-27

  • R?dacteur : Pierre PLET - On-X Consulting Group - Toulouse

    La troisi?me r?union toulousaine de l'OSSIR se tenait ? l'ONERA le 27 mai dernier. Beaucoup de monde ? cette r?union (une cinquantaine de personnes) certainement gr?ce au th?me tr?s f?d?rateur de la d?tection d'attaques et d'intrusions.

    Au menu, supervision des intrusions r?seaux (IDS et analyse de log, par Y FOURASTIER - XP conseil) et Analyse de compromission sur UNIX (P Bourgeois CERT-IST). Avant cela, une courte pr?sentation permettant de faire un tour d'horizon sur l'actualit? s?curit? nous a ?t? pr?sent?e par Fabrice Prigent.

    1 - Tour d'horizon

  • Pr?sent? par Fabrice Prigent

    Le nombre de compromissions sur RENATER, depuis le d?but de l'ann?e est en diminution, les scans sont ? plus de 70% sur les services HTTP, avec une augmentation des scans lents (4 machines par jour). Inversement, on constate une augmentation des tentatives d'intrusion via MS SQL (7%, puis 15% semaine suivante). Dans tout les cas, la premi?re motivation reste la recherche d'espace de stockage pour WAREZ (21% de ftp).

    Au niveau des virus : 84% KLEZ, 11% SIRCAM, 2% HYBRIS

    Ce tour d'horizon a continu? avec quelques d?tails sur certaines failles ou virus. En premier lieu, MS SQL, qui par d?faut ne place pas de mot de passe sur le compte SA (patch disponible). On tente l'authentification par le port 1433. Parade : bloquer le port 1433, et mettre un mot de passe sur le compte SA.

    Virus KLEZ, qui se propage par fichier et par r?seau (VER), d?couvert le 17 avril 2002 (dernier variant KLEZ-i), o? le nom de l'exp?diteur des messages SMTP est choisi dans le carnet d'adresse de la personne infect?e. Il utilise comme beaucoup un serveur SMTP embarqu?, et il d?sactive l'antivirus. Enfin, il d?truit certains documents (change en fonction de la version ).

    Deux programmes ont attir? l'attention, avec en premier un nouveau rootKit, d?couvert en janvier de cette ann?e, nomm? Optic kt (tux), ainsi qu'un programme de simulation de r?seaux, simulant plusieurs r?seaux avec des serveurs de plusieurs OS.

    On trouvera la derni?re version sur www.citi.umich.edu/uprovos/honeyd; L'auteur PROVOS, n'en est pas ? sa premi?re tentative puisqu'il avait d?j? travaill? sur Dsniff (sniffeur de mot de passe). Enfin, on trouvera ?galement une base de donn?es de scan en ligne www.dshied.org qui indique si un site a ?t? ou non scann? r?cemment (il semble qu'il ait cependant quelques petits probl?mes de base de donn?es ces temps-ci).

    2 - D?tection d'attaques et d'intrusions

  • Pr?sent? par Y. FOURASTIER - XP conseil, groupe DevoTeam

    XP Conseil a fait une pr?sentation g?n?rale concernant la d?tection d'attaques et d'intrusions et c'est plus particuli?rement attach? a pr?senter les grandes fonctionnalit?s de IDS et SNORT.

    Quelques rappels

    L'IDS et l'analyse de log correspondent ? deux domaines d'investigation qui sont la surveillance des actions malveillantes, et constitution des preuves.

    Les aspects ? prendre en compte pour les traces sont : la centralisation, la consolidation, agr?gation, corr?lation (maturit? faible, peu d'outils) des logs, ainsi que l'usage des consoles de supervision.

    IDS (syst?me de d?tection d'intrusion) se scindent en deux familles qui sont : les NIDS (Network IDS) et les HIDS (pour host). La tendance va ? la fusion des deux familles. Les syst?mes IDS permettent de reconna?tre les tentatives d'intrusions mais ?galement dans certains cas de les bloquer dynamiquement.

    Les seules actions indiqu?es sur l'implantation de ces outils, consistent ? mener au pr?alable une ?tude de s?curit? de mani?re ? d?finir et hi?rarchiser les zones de s?curit?, ainsi que de faire attention aux d?gradations de performances des serveurs h?bergeant les HIDS.

    La probl?matique des environnements switch?s a ?galement ?t? pos?e pour les NIDS (en environnement micro segment?, une sonde ne vois rien) sans pour autant y apporter de solution concr?te (on aurait pu parler ?galement de la charge CPU sur les switchs, de la recopie de port, des probl?mes li?s aux VLAN, ou encore des solutions li?es ? SMON).

    SNORT

    SNORT est un outil libre de droit tournant principalement sous linux, mais ?galement sous Wintel. Il permet de g?n?rer des traces ainsi que des alarmes en fonction de crit?re contenue dans des r?gles.

    C'est un produit mature avec plus de cinq ans d'existence, qui serait ? classer dans la cat?gorie des NIDS tendant ? fusionner fonctionnellement avec le HIDS (pr?vu pour la fin de l'ann?e).

    Bas? sur un jeu de r?gles compos?s d'un header qui correspond ? l'instanciation de filtrage, et d'options qui correspondent ? l'action, il n'est pas limit? ? la simple gestion de g?n?ration de log, car il permet d'utiliser des plug-in. Ces derniers permettent d'enrichir les actions possibles, mais ?galement les crit?res d?clenchant ces actions.

    M?me si le produit est mature en terme de fonctionnalit?, il est important de ne pas le consid?rer comme un produit sur ?tag?re, car il reste d?licat ? implanter et ? param?trer.

    3 - Analyse de compromission sous Unix

  • Philippe Bourgeois - Cert-IST

    Monsieur Bourgeois a trait? dans cette pr?sentation la probl?matique de l'audit d'une machine compromise, et a eu l'excellente id?e d'?tayer son discours par plusieurs manipulations en direct depuis son portable.

    La d?marche n'est pas ici de g?rer l'incident au moment de la compromission, mais bel et bien de r?aliser un travail ? posteriori devant permettre ?ventuellement d'aboutir ? des poursuites judiciaires.

    L'objectif du CERT-IST pour ce type de travail peut se scinder en trois points :

    Pour atteindre cet objectif, la premi?re information ? obtenir sera d'identifier la date de compromission afin de reconstituer l'activit? du syst?me depuis. Pour cela, les moyens disponibles sont nombreux : anomalie trouv?e sur le syst?me, donn?es d'audit, contr?le d'int?grit? ou encore techniques d'autopsie (fichier effac?s, analyse de binaire).

    Il faut cependant garder en m?moire que la machine peut ?tre pi?g?e, et qu'il est important de ne pas alt?rer les donn?es du syst?me (un ls change la date du dernier acc?s au fichier du dossier courant). C'est pour cela que l'?tape pr?liminaire consistant ? capturer l'?tat du syst?me en analysant les donn?es depuis une autre machine est indispensable.

    Pour cela, le CERT utilise son propre kit binaire d'investigation pour les machines pi?g?es (sur CDROM, ou dans des cas moins sensibles t?l?charg? sur la machine compromise). Il consiste en un jeu de commandes Unix saines, qui seront les seules ? ?tre utilis?es sur la machine compromise. Dans la panoplie, on trouve ?galement un portable depuis lequel, ? travers le r?seau, on acc?dera ? la machine ? investiguer.

    Enfin, il est int?ressant d'avoir une machine de r?f?rence proche de la machine ? investiguer (m?me version d'OS, de patch, d'architecture), surtout utile si on n'a pas mis en place d'outils de v?rification d'int?grit? du type de trip wire (permettant de stocker une signature pour chacun des binaires syst?mes de la machine, en vue d'en valider l'int?grit?, et de d?couvrir, apr?s compromission quels binaires ont ?t? modifi?s).

    Le pi?ge le plus classique consiste ? installer un ensemble de binaires et/ou librairies dynamiques qui emp?che l'administrateur de la machine de conna?tre l'?tat r?el de la machine. Le plus simple d'entre eux correspond ? la modification de la commande ls pour que les fichiers du pirate n'apparaissent pas. Il existe des ensembles de binaires pirates enti?rement packag?s, enti?rement param?trables pour chaque syst?me, sur Internet, ce sont les rootkits.

    Les rootkits les plus ?volu?s n'usurpent pas seulement des commandes, mais ?galement des modules dynamiquement charg?s (LKMM lodable kernel module malicieux). Il sont plus difficiles ? d?tecter et surtout ? contourner sans changer l'?tat de la machine compromise.

    Enfin, il faut ?galement faire attention au m?canisme d'autodestruction permettant au pirate d'effacer le maximum d'indices en cas de d?couverte. Le cas le plus courant consiste ? rajouter un process qui v?rifie la connexion au r?seau de la machine. Si le r?seau vient ? ?tre coup?, alors le m?canisme d'effacement est lanc?.

    Il faut toujours cependant garder ? l'esprit que les donn?es collect?es peuvent ?tre incompl?tes ou fausses. Un recoupement par plusieurs m?thodes doit donc ?tre syst?matis? pour ne pas tomber dans un pi?ge non encore connu.

    La deuxi?me partie de cette pr?sentation nous a permis de mettre en application les ?l?ments pr?c?demment ?nonc?s, ainsi que de voir certaines m?thodes de plus pr?s.

    On commence par noter l'?cart entre la date et l'heure du poste corrompu et celle du portable d'investigation (qui doit lui, ?tre ? l'heure). Cela est n?cessaire afin de permettre de ne pas se tromper dans la d?termination de l'heure de compromission.

    Ensuite, on va r?cup?rer les trois dates associ?es ? chaque fichier de la machine compromise (en prenant bien soin d'utiliser un outil ne modifiant pas la date de dernier acc?s comme l'outil graverobber -m)

    Suivent la r?cup?ration des informations volatiles (Informations que l'on perd si on ?teint la machine), comme les process en cours d'ex?cution ou les connexions r?seau en cours, etc . (ps, netstat, ifconfig, isof).

    On en profite pour capturer ?galement le r?sultat des commandes natives (d?tection de rootkit) avec un diff entre ces commandes et les commandes venant du CDROM, ce qui permet de d?tecter les donn?es que le pirate ne souhaite pas divulguer.

    Enfin, on cherche ? faire une copie physique des partitions des disques (ce qui n'est pas toujours possible pour des raisons de taille. Dans ce cas, on copiera en priorit? les r?pertoires / et /var /swap /etc . , soit en fait les zones syst?me).

    A partir de l?, plusieurs d?marche sont possibles . La plus rigoureuse (ce qui ne veux pas dire la plus s?re) consiste ? proc?der ? une analyse syst?matique, soit ? base d'outils de contr?le d'int?grit?, soit ? l'aide d'une machine de r?f?rence saine.

    Une autre approche ?galement utilis?e consiste ? trouver des anomalies syst?me. Un examen minutieux des logs est alors indispensable, dans la mesure ou ils n'ont pas ?t? effac?s ou alt?r?s (en changeant la date de mani?re ? avoir des saut de date par exemple). Les outils de supervision, utiles pour d?tecter l'attaque ne sont par contre, plus d'une grande utilit? dans ce type d'analyse.

    Une des m?thodes donnant de bon r?sultat correspond ? l'analyse fine des date associ?es aux fichiers et r?pertoires. Ces dates sont au nombre de trois pour chaque fichier sous Unix :

    Cette analyse est ainsi nomm?e analyse MAC. Par exemple, l'utilisation du programme telnet ouvre un certain nombre de fichiers dans un ordre particulier et en cr?e d'autres. En faisant une analyse sur les dates (essentiellement sur les binaire, fichier syst?mes, log et fichier temporaire), on arrive ainsi ? savoir sans les log quelles sont les commandes qui ont ?t? utilis?es.

    A partir de cette information, il est possible d'aller chercher les fichiers temporaires ou directement le fichier d'?change en cherchant par exemple une ent?te telnet avec la date et l'heure d'utilisation ainsi trouv?es.

    Il est ?galement possible d'envisager de r?cup?rer certain fichiers effac?s sous certaines conditions. S'il est assez simple sous Linux (avant la version 2.4.2) de le faire , cela reste beaucoup plus complexe dans tout autre environnement Unix. Il existe cependant des outils permettant d'obtenir une aide pr?cieuse dans cette recherche souvent laborieuse.

    Enfin, la prochaine g?n?ration de rootkit s'annonce d?j? beaucoup plus complexe ? analyser. Il ne s'agit plus de programme ex?cutable corrompu, mais bel et bien de fichier sp?ciaux voire de portion de noyau qui pourrait ?tre modifi?e au profit de pirates . Ainsi, une gestion du syst?me de fichier corrompu masquerait certains fichiers m?me en utilisant des commandes ls saines .

    Une autre tendance correspond ? la d?mocratisation de rootkit 'pour les nuls ', ou l'installation et le param?trage sont compl?tement guid?s , ce qui maximise le nombre de personnes pouvant utiliser ce type d'outils.

    Enfin quelques liens utiles :