Marianne ANSSI

CERT-FR

Centre gouvernemental de veille, d'alerte et de réponse aux attaques informatiques

logo ANSSI
Informations utiles

Que faire en cas d'intrusion ?

Les systèmes obsolètes

Liens utiles

 

L'ANSSI recrute

 

 

Les documents du CERT-FR

Publications récentes

Les alertes en cours

Les bulletins d'actualité

Les notes d'information

Année en cours Archive

 

Les Flux RSS du CERT-FR

Flux RSS complet

RSS

Flux RSS des alertes

RSS

Flux RSS SCADA

RSS

 

CERTA-2009-ACT-015

Imprimer ce document

Version PDF

À propos du CERT-FR

Le CERT-FR

Nous contacter

Contact us ( Drapeau anglais )

A propos du site

Communauté CSIRT

Les CSIRT

Le FIRST

L'EGC

 
Archives du CERT-FR

Année 2017 Archive

Année 2016 Archive

Année 2015 Archive

Année 2014 Archive

Année 2013 Archive

Année 2012 Archive

Année 2011 Archive

Année 2010 Archive

Année 2009 Archive

Année 2008 Archive

Année 2007 Archive

Année 2006 Archive

Année 2005 Archive

Année 2004 Archive

Année 2003 Archive

Année 2002 Archive

Année 2001 Archive

Année 2000 Archive

 

S . G . D . S . N
Agence nationale
de la sécurité des
systèmes d'information

République Française Paris, le 10 avril 2009
No CERTA-2009-ACT-015

Affaire suivie par :

CERTA

Objet : Bulletin d'actualité 2009-15


Conditions d'utilisation de ce document : http://www.certa.ssi.gouv.fr/certa/apropos.html
Dernière version de ce document : http://www.certa.ssi.gouv.fr/site/CERTA-2009-ACT-015

Gestion du document

Le bulletin d'actualité est disponible dans son intégralité et au format PDF à l'adresse suivante :

http://www.certa.ssi.gouv.fr/site/CERTA-2009-ACT-015.pdf

Un extrait du bulletin, ne reprenant que les articles de la semaine, se trouve en HTML à l'adresse suivante :

http://www.certa.ssi.gouv.fr/site/CERTA-2009-ACT-015/

1 L'inclusion locale

1.1 Présentation

Cette semaine, le CERTA a traité un incident de sécurité relatif à la compromission d'un serveur Web. Cet incident a été révélé par la présence de contenu malveillant (du filoutage ou phishing). L'analyse des journaux a ensuite permis de mettre en évidence la présence et l'utilisation d'un outil malveillant de prise de contrôle à distance (un PHP Shell). Le téléchargement de ce fichier est en fait directement visible dans les journaux, l'attaquant a modifié dans sa requête Web le champ réservé à la présentation de la version de son navigateur (le UserAgent). L'attaque a ensuite consisté à inclure le fichier /proc/self/environ présent localement sur le serveur. Cette technique a permis à l'attaquant de contourner la mesure de protection qui se limitait à interdire l'inclusion de fichiers distants.

Cette attaque, aussi connue sous le nom de Local File Inclusion, est largement automatisée dans les codes malveillants. Il est pourtant assez simple de s'en prémunir. Il faut :

  • appliquer les correctifs de sécurité des applications et autres CMS utilisés ;
  • contrôler et valider systématiquement le contenu d'une variable avant de l'utiliser ;
  • protéger (voir interdire) l'accès aux ressources locales comme /proc/self/environ dévoilant la configuration du serveur.

Dans le cas d'hébergements mutualisés, toutes ces précautions sont rarement le fait de l'hébergeur. Le CERTA invite donc ses lecteurs à suivre ces bonnes pratiques afin de limiter les désagréments. Cet incident montre une nouvelle fois l'importance de la bonne gestion des journaux pour faciliter la compréhension de l'incident.

1.2 Documentation

2 Intrusion FTP

Le CERTA a traité cette semaine un incident dont le scénario est le suivant :

  1. une machine est infectée par un code malveillant ;
  2. l'utilisateur de cette machine se connecte au serveur FTP ftp.domain.tld et s'authentifie auprès de lui. Les identifiants de connexion sont interceptés par le code malveillant qui les transmet à un serveur distant sous contrôle d'attaquants ;
  3. un robot d'attaque se connecte quelque temps plus tard au serveur ftp.domain.tld et rejoue les identifiants de connexion. Il liste ensuite tous les fichiers des répertoires auxquels il a accès et télécharge (méthode RETR) tous les fichiers au format HTML. Il modifie quelques uns de ces fichiers en ajoutant du javascript et un iframe malveillants, puis il réinstalle (méthode STOR) ces fichiers. La durée de l'attaque est de l'ordre de quelques secondes ;
  4. plusieurs connexions font suite à cette attaque et il est difficile de dire s'il s'agit de robots ou non.

Après la découverte de cet incident, la réaction des administrateurs a été de modifier le mot de passe du compte FTP accédé frauduleusement. Cette décision peut paraître saine, mais elle ne suffit pas. En effet, le point de départ de cet incident est l'infection du client FTP. Le nouveau mot de passe positionné peut lui aussi être saisi par le code malveillant.

Dans un cas comme celui-ci, il est absolument indispensable de désactiver complètement le compte utilisé frauduleusement, tant que l'on n'a pas découvert quel poste client est infecté (il peut y en avoir plusieurs pour certains comptes partagés). D'autre part, dans la mesure où l'origine légitime des connexions FTP est connue (par exemple une adresse IP bien déterminée), il est particulièrement judicieux de mettre en place du filtrage afin de restreindre les accès.

3 Winemmem, un code malveillant original

3.1 Le fait

Cette semaine, un éditeur de solution antivirale a reporté l'existance d'une variante d'un code malveillant aux méthodes plutôt singulières. En effet, ce code malveillant réussit à s'insérer à l'intérieur d'une archive auto-extractible ou un fichier d'installation d'une application tout en passant les différents contrôles d'intégrité inclus dans ces différents formats.

3.2 La technique

Le code malveillant, nommé Winemmem par un éditeur d'antivirus, reussit à se camoufler grâce aux données supplémentaires (aussi appelée overlay) du format PE contenues dans les fichiers auto-extractibles et autres installeurs d'applications. Il réécrit la section code de l'application originale et réalloue une taille aléatoire de code du début de la section code et de l'OEP à la fin du fichier, augmentant ainsi la taille des données supplémentaires. Le virus ne crée pas de nouvelle section et ne modifie pas l'entête PE. Afin de prendre la main lors de l'éxecution du fichier infecté, le code malveillant réécrit le code original au point d'entrée (entry point).

À l'exécution du fichier compromis, le virus intercepte l'API CreateFileA() et recherche un fichier au format PE dans le répertoire Program Files. Il parcourt alors le fichier à la recherche d'une dll associée. Le code malveillant copie alors la dll dans le répertoire du fichier exécutable associé et l'infecte en modifiant l'entry point et en ajoutant sa charge utile à la fin de la dernière section. Il est ensuite capable de partir à la recherche de nouveaux fichiers exécutables sur des périphériques amovibles ou de récupérer de nouveaux codes d'une machine distante dès lors qu'il a été lancé.

Pour ne pas lever une alerte lors du contrôle d'intégrité des fichiers, le code malveillant restaure les données originales. Pour cela, il intercepte les fonctions d'une API contenue dans ntoskrnl.exe qui normalement empêche l'écriture ou la suppression d'un fichier en cours d'exécution ou vérouillé par un processus.

Le code malveillant contient également une routine d'interception des API ExitProcess() et ExitWindowsEx() afin de se recopier dans un fichier à la fermeture de l'exécution du fichier infecté ou de Microsoft Windows.

Cette technique permet à ce code malveillant de n'être reconnu que par très peu d'antivirus et peut poser des problèmes pour la désinfection.

3.3 Les recommandations

Le CERTA rappelle qui est important de n'exécuter que des fichiers de confiance. Il est ainsi recommandé de télécharger les installeurs sur le site de l'éditeur et de vérifer, lorsque celle-ci est disponible, la signature du fichier avant son exécution.


4 Rappel des avis émis

Dans la période du 03 au 10 avril 2009, le CERTA a émis les avis suivants :

  • CERTA-2009-AVI-128 : Vulnérabilité dans Moodle
  • CERTA-2009-AVI-129 : Vulnérabilité dans Asterisk
  • CERTA-2009-AVI-130 : Multiples vulnérabilités dans Joomla!
  • CERTA-2009-AVI-131 : Vulnérabilités de ClamAV
  • CERTA-2009-AVI-132 : Vulnérabilité dans Novell NetIdentity
  • CERTA-2009-AVI-133 : Vulnérabilités dans Kerberos


Liste des tableaux

Gestion détaillée du document

10 avril 2009
version initiale.


CERTA
2014-01-17
Premier Ministre / Secrétariat Général de la Défense et de la Sécurité Nationale / Agence nationale de la sécurité des systèmes d'information webmestre Dernière mise à jour : le 2017-09-19