![]() |
CERTA Centre d'Expertise Gouvernemental de |
![]() |
|
Affaire suivie par : CERTA Objet : Bulletin d'actualité
2007-12
Gestion du documentUne gestion de version détaillée se trouve à la fin de ce 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-2007-ACT-012.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-2007-ACT-012/ 1 Activités en cours1.1 Installation d'un site de filoutage (phishing) suite à une défigurationLe CERTA a traité cette semaine un cas de site de filoutage (phishing). Ce site de filoutage a été mis en place près de 10 jours après une défiguration. Suite à la découverte de la défiguration, le webmestre du site s'était contenté de supprimer la page de défiguration et de mettre à jour l'application vulnérable attaquée, à savoir pmb. Le webmestre n'a pas vu que les intrus avaient également installé un interpréteur de commandes écrit en php (phpshell). Celui-ci pouvait être utilisé par n'importe quel internaute et permettait la télé-administration du site web, tout en donnant des droits limités sur le serveur. Le CERTA rappelle que les incidents de défiguration ne se limitent pas toujours à l'ajout ou la modification d'une page web, mais que du code malveillant peut également être déposé. La modification de pages Web doit toujours faire l'objet d'une analyse pour chercher si elle cache des choses plus graves. Des recommandations sont indiquées dans la note d'information CERTA-2002-INF-002 (Les bons réflexes en cas d'intrusion sur un système d'information) disponible à l'adresse : http://www.certa.ssi.gouv.fr/site/CERTA-2002-INF-002/ 1.2 Autre cas de phishingLe CERTA a traité un autre cas de site de phishing détecté suite à l'envoi massif de messages électroniques pointant vers ce serveur. L'analyse de ce serveur montre qu'aucun site de phishing n'est installé, mais qu'une page contenant une redirection vers le vrai site de phishing avait été ajouté. 2 Le mois PHP2.1 IntroductionLe CERTA mentionnait dans un précédent bulletin l'existence du projet MoPB (pour Month of PHP Bug). Il s'agit de publier, au mois de mars 2007, quotidiennement, une nouvelle vulnérabilité concernant PHP. La fin du mois étant proche, le CERTA se propose d'établir un premier bilan de celles-ci dans les paragraphes suivants. Comme de nombreux incidents traités sont liés à des applications développées avec le langage PHP, le CERTA a également publié cette semaine une note d'information CERTA-2007-INF-002 plus générale rappelant quelques bons usages associés au langage PHP. http://www.certa.ssi.gouv.fr/site/CERTA-2007-INF-002/ 2.2 Présentation générale des vulnérabilités PHP du MoPBA la date de rédaction de ce document, le projet MoPB a publié sur son site 29 vulnérabilités, dont 16 qui ne sont pas encore officiellement corrigées. Elles impliquent aussi bien la branche PHP 4.x que 5.x et certaines ont été corrigées dans les mises à jour de PHP sorties il y a quelques semaines (version 5.2.1 publiée le 14 février 2007, et version 4.4.6 le 01 mars 2007). D'autres font l'objet de discussion entre les développeurs dans le forum du CVS de PHP : http://marc.info/?l=php-cvs&r=1&b=200703&w=2 La première remarque concerne les vulnérabilités qui ont été corrigées. Celles-ci n'avaient pas été annoncées publiquement par les développeurs de PHP au moment de la mise en ligne de la nouvelle version. Cette approche est criticable, dans la mesure où les utilisateurs, s'ils ne sont pas tenus informés des corrections apportées, ne peuvent pas percevoir l'impact rééel d'une mise à jour plus « tardive ». Comme seconde remarque, il est important de comprendre que ces vulnérabilités n'impliquent pas, comme souvent, un mauvais usage du langage, mais bien des erreurs intrinsèques à l'implémentation PHP. Tout serveur ayant installé celui-ci peut-être concerné par ces vulnérabilités. Le CERTA invite donc ses correspondants à :
Quelques vulnérabilités sont détaillées, à valeur d'illustration, dans les sections suivantes. 2.3 Faille PHP concernant les URL de type zip:// et bzip2://Une vulnérabilité dans la gestion des adresses
réticulaires de type zip://
et bzip2:// a été
publiée par le projet MoPB et n'est pas
corrigée à la date de parution de ce bulletin. En
effet, la mise en 2.4 Vulnérabilité de mod_securityLe module mod_security est un pare-feu applicatif orienté HTTP. Il offre un certain nombre de protections contre les attaques à l'encontre des applications Web. Il fonctionne avec le serveur Apache et souvent avec PHP. Le caractère ASCIIZ (caractère NULL, parfois appelé « Zéro ») est utilisé comme signe de fin d'une chaîne de caractères dans certaines représentations. Une vulnérabilité concernant mod_security a récemment été rendue publique, et implique ce caractère particulier. L'exploitation de celle-ci permet de contourner certaines règles de sécurité. Elle nécessite les conditions suivantes :
Le module mod_security ne traite pas les caractères situés à droite du caractère ASCIIZ, ce qui n'est pas le cas des différents langages de script comme Perl, Python, etc. Le langage PHP interprète également tout ce qui se trouve à droite du caractère ASCIIZ, depuis la version 5.2.0. Ce problème est détaillé à l'adresse suivante : http://www.modsecurity.org/blog/archives/2007/03/modsecurity_asc.html Un contournement y est proposé, en l'attente d'un correctif. 2.5 Vulnérabilité de la fonction substr_compare()La fonction substr_compare() est normalement utilisée pour comparer deux chaînes de caractères en spécifiant un décalage ou offset pour la première chaîne (à partir d'où il faut comparer) et une longueur de comparaison. Ainsi, en appelant substr_compare("abcd", "efgh", 2, 2), les chaînes "cd" et "ef" sont comparées. La fonction retourne 1 si la première chaîne est plus grande 0 si les deux chaînes sont égales, et -1 sinon. Certains filtres empêchent de spécifier des offsets et longueurs de manière à comparer des valeurs en dehors des chaînes en paramètre. Cependant, le dépassement d'entier n'est pas pris en compte et permet de réaliser ceci. En se servant de cette vulnérabilité, un attaquant peut lire des informations en mémoire. Cette vulnérabilité ne touche pas les applications se servant de la fonction substr_compare(), mais est utile à une personne malintentionnée : elle lui permet notamment de trouver des adresses pour exécuter du code arbitraire avec un débordement de tampon. 3 Un exemple d'actualité : l'application W-Agora, ou Web AgoraPlusieurs vulnérabilités ont été publiées cette semaine, concernant l'application w-agora, ou Web Agora. Il s'agit d'un logiciel français de gestion de forums et de publications, disponible sur le site : http://www.w-agora.net Les problèmes sont nombreux :
Les références suivantes mentionnent certaines de ces vulnérabilités. http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2007-0606 http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2007-0607 http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2007-1604 http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2007-1605 http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2007-1606 http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2007-1607 Dans l'attente d'une mise à jour de l'application, il est préférable de chercher une solution alternative et de surveiller attentivement les journaux, si celle-ci est déjà installée. 4 Commentaires sur les vulnérabilités de libwpdLe CERTA a publié cette semaine l'avis CERTA-2007-AVI-135 concernant plusieurs vulnérabilités affectant la bibliothèque libwpd (versions 0.8.8 et antérieures). Cette bibliothèque permet le traitement de documents au format WordPerfect. Elle est utilisée en tant que module par des applications telles que OpenOffice depuis la version 2.0, Koffice depuis la version 1.4 et AbiWord depuis la version 1.4. D'autres applications peuvent faire appel à cette bibliothèque, et donc l'installer. L'exploitation de ces vulnérabilités permet l'exécution de code arbitraire au moment de l'ouverture d'un document WordPerfect. Il est possible que la mise à jour de cette bibliothèque soit intégrée dans les derniers paquetages des applicatifs sus-mentionnés, comme c'est le cas pour OpenOffice. Il est tout de même conseillé de vérifier la version de libwpd, après application des dernières mises à jour (attention, certaines distributions ne respectent pas les numéros de version). 5 Les publicités et les techniques de web spamming5.1 IntroductionDe nombreuses techniques sont utilisées pour faire apparaître des liens Web pointant vers des sites douteux. Une méthode, nommée search spamming ou web spamming, consiste à utiliser des techniques d'optimisation des moteurs de recherche pour améliorer le rang des pages Web dans les résultats de recherche. L'idée est bien sûr de les faire apparaître dans les premières lignes retournées. Les moyens ont d'abord consisté à tricher sur les mots-clés qualifiant les pages (keywords). Puis, comme certains moteurs de recherche s'appuient également sur les informations des liens eux-mêmes pour établir une classification, des associations de sites se sont créées pour s'entre-aider. Les deux solutions les plus fréquentes sont :
Les techniques sont nombreuses et variées. Les plus récentes consistent à tromper les outils automatiques qui parcourent les sites (web crawlers) en ne leur fournissant pas la même page qu'une personne arrivant sur le site douteux depuis le résultat d'un moteur de recherche. Cette décision peut se faire, par exemple, après consultation de l'en-tête HTTP et de ces champs user-agent et referer. La personne subit une redirection dès que la page est chargée. Le scénario implique une chaîne d'acteurs, qui sont identifiés comme suit :
Ce bulletin d'actualité n'a pas la prétention d'expliquer tout le fonctionnement de ces activités complexes. Il cherche uniquement à mettre en valeur le fait suivant : le web spamming est un phénomène répandu, et très organisé. Les moyens techniques pour s'en protéger existent, mais ne sont pas parfaits. A valeur d'illustration, la redirection peut se faire au moyen d'un script Javascript sur la page visitée :
<_script language="javascript">
location.replace("Nouvelle_Page.html")
</_script>
Cependant, même si le Javascript, comme il faudrait,
reste désactivé par défaut, il reste
possible d'abuser de la propriété de
rafraichissement des pages, en ajoutant dans l'en-tête
HTML :
<_meta http-equiv="refresh" content="0; url=Nouvelle_Page.html">
5.2 Recommandations du CERTAPour éviter de naviguer dans les pages précédemment citées, il est préférable de :
5.3 Documentation associée
6 Cheval de Troie : GoziUne analyse inverse d'un code malveillant, de type cheval de Troie (surnommé « Gozi ») a été publiée sur l'Internet. Il existe beaucoup de variantes de chevaux de Troie, mais celui-ci présente une caractéristique qui n'est pas, a priori très courante. Ce code malveillant embarque des fonctions qui permettent la capture d'informations sensibles. Ce code exploite des fonctions avancées de la bibliothèque de fonctions (DLL) "ws2_32.dll" afin de créer sur le système compromis un "Layered Service Provider" (LSP). Ainsi, le code malveillant se place entre le navigateur Internet Explorer et un tunnel SSL/TLS en cours d'utilisation. En pratique, un utilisateur connecté à un site à travers un tunnel SSL/TLS (consultation en HTTPS) verra ses informations capturées par le code malveillant avant d'être transférées dans le tunnel SSL/TLS. De plus, le code en question embarque des fonctions de dissimulation ("rootkit") qui rendent sa détection sur un système en fonctionnement délicate. Cependant, la mise en place de filtrages sur les équipements périmétriques (serveurs mandataires, pare-feu, ...) et la lecture régulière des journaux d'événements permettraient de découvrir de telles compromissions. Ce code malveillant donne l'occasion de rappeler que, même si le canal de communication et le serveur destinataires sont convenablement sûrs, la sécurité de la transaction impose aussi la salubrité des postes clients.
|
![]() |
||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||