1 Les installations de système clés-en-main
1.1 Les cédéroms d'installation clés-en-main
Le CERTA a traité cette semaine la compromission d'un serveur Web. Ce dernier a été utilisé pour installer plusieurs sites factices (de filoutage). L'analyse a permis d'identifier des causes à ces intrusions et notamment la mise en œuvre d'applications Web dont les versions ne sont plus du tout d'actualité. On peut citer par exemple des composants Joomla! comme com_remository, ou extcalendar. Cependant, le problème ne se limite pas à ces quelques composants. En effet, le serveur a été installé à partir d'une distribution clés-en-main, proposant à toute personne -y compris des néophytes- d'installer des serveurs sous Linux. Cette distribution se présente sous la forme d'une image à graver sur un cédérom. Le démarrage d'une machine, à partir du cédérom va installer ladite distribution en posant quelques questions élémentaires à l'utilisateur, l'objectif étant de lui offrir une installation simple et rapide.
Les services inclus peuvent être :
- hébergement d'un serveur FTP ;
- hébergement d'un annuaire d'utilisateurs ;
- hébergement d'un site Web avec des contenus dynamiques (forums, projets, systèmes de publication, etc.) utilisables en quelques clics ;
- hébergement d'un serveur de messagerie ;
- gestionnaire de partage de connexions, d'imprimantes et autres ressources.
Le CERTA constate que l'installation par défaut d'une telle distribution présente les faiblesses suivantes :
- seul un compte administrateur root est demandé / exigé ;
- aucune exigence de solidité n'est faite sur le mot de passe de ce compte ;
- la distribution repose sur un noyau Linux 2.2.26 datant de 2004 ;
- plusieurs services sont lancés pour une installation par défaut, incluant un serveur de résolution de noms (named), un serveur MySQL (mysqld), un serveur Apache particulier (httpd), un serveur d'impression (lpd), smbd, etc.
- les applications Web fournies regroupent des logiciels dont les vulnérabilités sont nombreuses et qui doivent être mises à jour fréquemment : claroline, phpbb, Phorum, dotclear, typo3, webcalendar, agora, etc. De plus, on constate que les versions fournies ne sont pas récentes, même pour un téléchargement récent de la distribution. Plus précisément, la dernière version de la distribution en question date de l'été 2006. Les versions de toutes les applications associées sont donc antérieures à cette date, parfois de plusieurs années (2003/2004).
Que faut-il donc retenir d'un tel incident ? L'objectif n'est évidemment pas de dénigrer de telles distributions, obtenues par un effort collectif afin de soutenir les personnes ayant peu d'expérience avec Linux. Malgré tout, de telles distributions :
- sont rarement mises à jour ;
- intègrent des composants non mis à jour ;
- ont une configuration de sécurité qui n'est clairement pas adaptée.
Il est donc très dangereux d'exposer de telles machines au monde Internet. Leur utilisation doit se borner aux environnements contrôlés ou confinés.
Le CERTA recommande ainsi d'éviter, pour ceux qui seraient tentés, d'utiliser dans un environnement de production de telles solutions, et, pour ceux qui le déploient déjà, de réfléchir à une solution plus sûre. Les responsables de sécurité doivent également s'assurer que de telles distributions n'apparaissent pas dans leur réseau, car il s'agirait de points faibles potentiels.
1.2 Les cédéroms de démarrage
L'incident précédent soulève un problème plus important : celui des cédéroms de démarrage. Il existe un large choix de cédéroms téléchargeables sur l'Internet, en fonction des besoins : il peut s'agir d'une distribution destinée à fournir un environnement de bureau Linux complet, à faire des tests d'audit ou à installer un routeur ou un pare-feu.
Les arguments intéressants qui conduisent à utiliser de telles solutions sont les suivants :
- éviter la longue procédure d'installation initiale ;
- effectuer un minimum de configuration ;
- obtenir rapidement un système fonctionnel ;
- répondre à un besoin ponctuel sans laisser de traces importantes sur le disque dur d'une machine ;
- assurer que les codes du système ne sont pas modifiés sur le support (cédérom), et donc un certain niveau d'intégrité.
Il faut néanmoins garder à l'esprit que ces solutions posent le même problème que le cas précédemment cité : quid des mises à jour ? Ces distributions sont renouvelées peu fréquemment (de l'ordre de plusieurs mois) et peuvent souffrir de quelques vulnérabilités. Les configurations par défaut ne sont également pas toujours parfaites.
Les données personnelles ajoutées peuvent donc courir un risque. Si le système est compromis, il peut donner accès à d'autres périphériques (disques durs, supports USB, etc.).
Le CERTA ne dénigre pas de telles solutions, qui présentent des avantages certains, mais insiste sur le fait qu'elles introduisent également quelques problèmes de sécurité à considérer.
2 La défiguration, effet visible pouvant révéler des incidents plus graves
Le CERTA a traité cette semaine un autre cas de défiguration d'un serveur Web. L'analyse des journaux de celui-ci a mis en évidence l'exploitation d'une vulnérabilité affectant le module xfsection de Xoops. Les journaux ont également montré que ce module faisait régulièrement l'objet d'attaques depuis mars 2007. La conséquence de ces autres attaques n'a pas été une défiguration visible, mais l'installation de nombreux outils malveillants.
Parmi les outils installés, on retrouve :
- deux bot irc écrits en PHP. Ces robots vont se connecter sur des canaux irc de serveurs généralement « privés » et ont la capacité de lancer des attaques en déni de service. Ils ont également une fonctionnalité leur permettant d'attaquer d'autres serveurs Web en tentant d'exploiter des vulnérabilités de type php include ;
- un programme effectuant des connexions sur une base de données externe afin d'y récupérer une liste d'adresses de messagerie, ainsi que des messages électroniques. Cet outil permet notamment de transformer le serveur Web en plate-forme de spam ;
- un interpréteur de commandes PHP encodé en base64 afin d'échapper à une détection par recherche de chaînes de caractères.
Pour fonctionner, ces outils ont besoin de pouvoir effectuer une connexion vers l'Internet. Il est donc recommandé d'interdire aux serveurs Web d'effectuer des connexions sortantes. Cette mesure aura pour effet de rendre inopérante la plupart des attaques de type php include.
3 Des modifications de contenus de pages Web
3.1 Introduction
Les défigurations sont les manifestations les plus visibles de modifications de contenus de pages Web. Cependant, les mois précédents ont montré que d'autres modifications étaient possibles, et non visibles directement. Parmi celles-ci, nous avons mentionné dans nos précédentes publications :
- les cadres incorporés IFRAME (CERTA-2007-ACT-025) ;
- les scripts ajoutés (SCRIPT) ;
- les images trompeuses intégrant des scripts (CERTA-2007-ACT-026) ;
- l'optimisation de la popularité d'un site, en dissimulant des liens dans une balise DIV (CERTA-2007-ACT-033).
Dans cet article, il s'agit d'un autre élément : les données de style, ou CSS (pour Cascading Style Sheets). Elles servent à définir la présentation des documents HTML, et couvrent notamment les polices, les couleurs, les marges, les lignes, les images en arrière-plan, les différents positionnements, etc.
Différentes utilisations sont possibles. Les données peuvent être insérées dans une balise :
<_body style="background-color: #FF0000;">
Ou insérées entre des balises particulières :
<_style type="text/css"> body {background-color: #FF0000;"} </_style>
Voir directement insérées dans un fichier dédié reprenant les lignes précédentes :
<_link rel="stylesheet" type="text/css" href="style.css" />
Les trois méthodes permettent d'obtenir un fond rouge pour les élements corps de la page.
3.2 La vulnérabilité
Des preuves de faisabilité ont été récemment publiées, et montrent qu'il est possible de balayer certaines plages d'adresses IP locales, lorsque le navigateur interprète une page Web ayant des données de style particulières. Le fonctionnement global est le suivant : un ensemble de styles est défini (style1, style2, style3, etc.), et chacun est associé à une adresse IP à scanner. Ensuite, les styles sont appelés successivement par la page HTML pour déterminer les adresses réactives.
Cette technique peut être utilisée pour différents motifs, comme déterminer l'espace d'adressage utilisé, l'existence de passerelles, ou celles d' interfaces de modems / routeurs par exemple.
Cette modification de style peut être visible soit directement dans le code de la page, soit dans le fichier .css associé. Dans le cas du code publié récemment, une succession de lignes est visible, avec des contenus de type :
a[href="http://W.X.Y.Z"], o� W.X.Y.Z est une adresse IPUne simple page PHP avec une variable de valeur W.X.Y.Zpermet ensuite à la personne distante de récupérer l'information.
Cette technique ne nécessite pas forcément de Javascript, mais comme dans les insertions malveillantes précédentes, il peut être employé pour dissimuler le code. La personne malveillante peut utiliser son propre serveur Web hébergeant un tel site, mais elle a tout intérêt à l'ajouter sur un site plus « populaire » et « de confiance », afin de collecter indirectement les informations des postes des personnes navigantes.
Il est donc très important, compte-tenu de ces méthodes, de contrôler préventivement l'intégrité de l'ensemble des fichiers et données du site Web. C'est l'une des seules méthodes pour s'apercevoir qu'un tel code malveillant est présent sur l'une des pages du site administré.
4 Les paramètres d'installation par défaut oubliés
4.1 Le problème
Cette semaine le CERTA a rencontré un site Internet compromis dont tous les composants semblaient à jour. Ce site, dynamique, respectait des préconisations simples :
- les produits et composants utilisés étaient à jour ;
- les composants non-utiles étaient désactivés ;
- le code PHP contrôlait les variables utilisées ;
- l'archivage et la journalisation des connexions était en place.
L'analyse de la compromission a montré que ce serveur dédié utilisait une application accessible depuis l'Internet dont l'installation proposait un mot de passe par défaut. Ce mot de passe n'ayant jamais été changé, certains individus malintentionnés ont pu se connecter sur la machine et réaliser des attaques par rebond. Au-delà des actions réalisées par les attaquants, il est dommageable de constater que des précautions basiques n'ont pas été respectées sur ce serveur (alors qu'elles l'ont été sur le site Internet qu'il contenait) :
- tous les accès par mot de passe doivent être surveillés dans la mesure du possible ;
- les mots de passe initiaux doivent être immédiatement remplacés par des mots de passe forts qu'il convient de changer régulièrement ;
- les services et applications non utilisés doivent être arrêtés
4.2 Documentation associée
- Note d'information du CERTA sur les mots de passe :
http://www.certa.ssi.gouv.fr/site/CERTA-2005-INF-001
- Note d'information du CERTA sur le filtrage et les pare-feux :
http://www.certa.ssi.gouv.fr/site/CERTA-2006-INF-001
- Note d'information du CERTA sur la sécurisation des applications Web :
http://www.certa.ssi.gouv.fr/site/CERTA-2004-INF-001
5 Nouveaux correctifs pour Windows Vista
5.1 Les correctifs
Le 28 août 2007, soit en dehors des dates usuelles de publications de mises à jour (deuxième mardi de chaque mois), Microsoft a rendu disponible via des mises à jour automatiques deux correctifs pour Windows Vista qui avaient été publiés le 7 août 2007 ainsi que deux supplémentaires :
- une mise à jour concerne l'arrêt inopiné du Background Intelligent Transfer Service (service de transfert intelligent) qui peut se produire lors du téléchargement de mises à jour (KB939159) ;
- un correctif traite divers problèmes de performance et de fiabilité : suppression de la passerelle par défaut après hibernation, fuites mémoire, lenteur de transferts de fichiers, corruptions de fichiers, etc. (KB938979) ;
- une autre mise à jour corrige davantage de problèmes de stabilité (arrêt inopiné de Windows Calendar, du partage Internet, du service d'impression) mais aussi de compatibilité matérielle, notamment pour les cartes graphiques (KB938194) ;
- le dernier correctif traite une erreur dans le libellé de langue traditionnelle chinoise (KB938952).
La liste complète des correctifs est fournie à la fin de cet article. D'autres mises à jour ont également été publiées sur le site de Microsoft (en téléchargement manuel). Elles concernent Windows XP et Vista en versions 32 et 64 bits et corrigent des problèmes plus marginaux.
5.2 Problèmes concernant la validation WGA
La validation WGA (Windows Genuine Advantage) permet à Microsoft de s'assurer que la copie de l'utilisateur est bien originale. Dans la nuit du vendredi 24 août au samedi 25 août 2007, de nombreux utilisateurs n'ont toutefois pu valider l'authenticité de leur Windows Vista. Par conséquent, certaines fonctionnalités de Windows n'ont pu être disponibles pour ces personnes, notamment : Windows Aero, Readyboost, fonctionnement de Windows Defender en mode dégradé, téléchargement limité aux mises à jour de sécurité critiques et affichage d'un message persistant.
Le problème a été résolu par Microsoft. Il était dû à une mauvaise manipulation lors de la mise à jour des serveurs de validation qui ont ainsi, selon Microsoft, décliné les demandes de validation. Les utilisateurs ayant rencontré ce problème peuvent maintenant valider leur exemplaire correctement.
5.3 Références
- Base de connaissances Microsoft n˚938194 :
http://support.microsoft.com/kb/938194
- Base de connaissances Microsoft n˚939159 :
http://support.microsoft.com/kb/938194
- Base de connaissances Microsoft n˚938979 :
http://support.microsoft.com/kb/938194
- Base de connaissances Microsoft n˚938952 :
http://support.microsoft.com/kb/938194