1 Incidents de la semaine

1.1 Chronologie d’une infection

Le CERTA a traité cette semaine le cas d’une machine infectée par un code malveillant appelé Virut. L’objectif de l’analyse de cet incident était de comprendre comment la machine, pourtant à jour de tous les correctifs, avait pu être infectée.

L’analyse montre que la machine est infectée par plusieurs codes malveillants, l’un d’entre eux correspondant à une page Web stockée dans l’historique d’Internet Explorer. Or le navigateur utilisé par défaut est Mozilla Firefox. Cette page Web ne contient qu’un iframe, vers un site de téléchargement de Virut. La page a été consultée sur un site connu de stockage de publicité. En particulier, cette page était régulièrement consultée du fait de la présence d’un adware (publiciel). L’installation de cet adware est lié à l’utilisation d’un jeu (de type puzzle) en version gratuite pour un mois, téléchargé sur l’Internet.

En s’appuyant sur les dates du système et des différents historiques, nous pouvons reconstruire la chronologie suivante :

  • courant octobre 2008, une version d’évaluation d’un jeu de type puzzle est téléchargé légitimement à l’aide de Mozilla Firefox. L’installation de ce jeu provoque l’infection de la machine par un adware ;
  • à partir de ce moment-là, la machine va régulièrement utiliser Internet Explorer pour télécharger des pages publicitaires ;
  • le 31 décembre 2008, la page publicitaire téléchargée ne contient qu’un iframe qui pointe vers un code malveillant appelé Virut. L’histoire ne dit pas si cet iframe a été volontairement déposé par les webmestres du site de publicité, ou s’il s’agit d’une compromission ;
  • Virut se propage à de très nombreux exécutables du système (plusieurs centaines d’occurrences sur la machine) entre fin décembre 2008 et avril 2009, date à laquelle il endommage un fichier au point de le rendre inutilisable. C’est ce qui va déclencher la détection de l’infection du système.

Un antivirus à jour aurait-il permis d’empêcher l’infection ? Rien n’est moins sûr, certains codes malveillants ayant comme fonctionnalité de neutraliser les antivirus. Le problème vient ici de la confiance en un fichier téléchargé. Ce n’est pas parce qu’il vient d’un site a priori sûr que le fichier ne contient pas de code malveillant.

1.2 Des en-têtes HTTP utiles surprenantes

Une administration ne parvenait pas à afficher la page Web d’un site. Il s’avère en réalité qu’il ne s’agit pas d’un problème de sécurité mais d’interprétation des réponses HTTP.

Voici un exemple d’échange en HTTP posant problème, vu par le navigateur client :

GET /HTTP/1.1
Host: www.Mon_Site_Interrog�.tld
User-Agent: xxxxxxxxxxxxxx
Accept: text/html,application/xhtml+xml,…
Accept-Encoding: gzip, deflate
(…)

HTTP/1.x 200 OK Date: Thu, 23 Apr 2009 15:21:31 GMT P3P: CP= »NON DSP COR CURa PSAa OUR STP NAV » Etag: « xxxxxxxxxxxxxxxxxxxxxxxxxx » Expires: Thu 23 Apr 2009 15:23:19 GMT Last-Modified: Wed, 04 Dec 2013 21:43:02 GMT Content-Type: text/html; charset=ISO-8859-1 Content-Language: fr Content-Encoding: gzip Age: 6 Vary: Accept-Encoding Transfer-Encoding: chunked X-Cache: MISS from Proxy_utilise Proxy-Connection: close Connection: close

Le serveur du site Web distant utilise une fonctionnalité nommée P3P qui permet au serveur Web de préciser à l’internaute sa politique de protection de données personnelles. P3P (pour Platform for Privacy Preferences) est un projet à l’initiative du consortium W3C. Lorsque ces informations sont vues par le navigateur, il peut prendre des décisions en fonction de sa propre configuration et de la politique proposée. Il s’agit d’un mécanisme de confiance, car rien n’oblige le site à respecter la politique affichée et rien n’oblige l’utilisateur a y croire. La politique déclarée par le site Web se trouve ainsi dans l’en-tête de réponse HTTP, avec une ligne de résumé appelée Compact Policy. Dans l’exemple ci-dessus, le site précise qu’il ne fournit aucun accès aux données identifiées (NON), qu’il met dans sa politique des éléments afin de régler les « disputes »/litiges (DSP), une politique de remédiation (COR) et de rétention (STP) et l’usage qui peut être fait des éléments (NAV). A la date de rédaction de cet article, encore peu de sites ont recours à cette technologie et peu de navigateurs l’interprètent utilement (exception faite de la gestion des cookies éventuellement).

On note également dans la réponse présentée ci-dessus l’utilisation d’une date pour le champ Last-Modified en 2013. Cette date n’indique en rien ce qu’elle devrait. Cette information erronée peut perturber les mises en cache éventuelles de proxy Web qui l’utilisent.

Enfin, on remarque que les données sont fournies au navigateur sous encodage de type « gzip ». Ne connaissant pas la taille totale des données, le serveur les envoie en plusieurs blocs (chunks).

Le proxy utilisé a décidé de clore l’échange. Les trois détails précédents dans la réponse du serveur peuvent en être la cause.

En réalité, dans le cas présent, quelques tests ont montré que le problème provient uniquement de l’encodage gzip qui n’est pas autorisé par le proxy. Le navigateur de l’utilisateur précise qu’il supporte ce dernier et le serveur lui retourne donc les données en conséquence. Il s’agit de la configuration par défaut du navigateur Mozilla Firefox 3.0.X. Cela est visible via le menu about:config et la variable network.http.accept-encoding.

Il est important de vérifier que la politique appliquée au niveau des passerelles de filtrage correspond aux configurations mises en œuvre par ailleurs sur les postes clients. Ce qui pouvait être un incident de sécurité n’en était ici finalement pas un.

2 Un botnet de machines Mac OS X

2.1 Les faits

Récemment, de nombreux articles ont annoncé la découverte d’un réseau de machines zombies installées avec le système d’exploitation Mac OS X. La méthode d’infection est assez classique : des versions non officielles des logiciels iWorks ’09 et Adobe Photoshop CS4 sont proposées en téléchargement sur des réseaux de partage en pair à pair. Ces versions ont été modifiées afin qu’un code malveillant soit installé en même temps que l’application désirée.

Le code malveillant en question est désigné par différents noms selon l’éditeur de la solution antivirale :

  • OSX.Iservice pour Symantec ;
  • OSX/iWorkServ pour F-Secure ;
  • OSX/IWService pour McAfee ;
  • OSX_KROWI pour Trend ;

Le cheval de Troie se présente sous la forme d’un package souvent dénommé iWorkService.pkg. Il permet à l’attaquant via une porte dérobée d’exécuter de nombreuses commandes sur la machine compromise. Le flux entre le canal de contrôle et la machine est de plus chiffré par l’algorithme AES.

2.2 Les recommandations

Le CERTA rapelle que les applications doivent être téléchargées sur le site officiel de l’éditeur et qu’il ne faut en aucun cas faire confiance à des applications récupérées sur des réseaux qui ne sont pas de confiance. Il est, de plus, conseillé de vérifier la signature de l’archive après téléchargement lorsque celle-ci est disponible. Le code malveillant tente de contacter des machines extérieures sur des ports hauts. Il est donc recommandé de surveiller tout trafic vers l’Internet et de vérifier qu’une politique de filtrage des flux sortants est bien rigoureusement appliquée.

3 Procédures d’authentification multiples

L’authentification est la procédure permettant de vérifier l’identité présentée par une entité. Plusieurs sites Web proposent de l’effectuer pour une identité donnée (l’identifiant) en renseignant un mot de passe. Seulement ce dernier peut être oublié ou perdu. De nombreux sites Web offrent donc la possibilité de prouver son identité en répondant à une série de questions comme :

  • le nom de jeune fille de la mère ;
  • le titre du film favori ;
  • la date de naissance ;
  • le titre de chanson préférée ;
  • la réponse à une question préalablement définie.

Dans la majorité des cas, il s’agit de réponses personnelles. Mais le sont-elles réellement ?

La presse s’est faite l’écho récemment de comptes de célébrités ainsi compromis car des utilisateurs sont parvenus, une fois sur l’interface d’authentification, à renseigner leurs informations « personnelles ».

En réalité, ces informations étaient assez facilement prédictibles.

De manière générale pour ces systèmes, l’utilisateur doit bien garder à l’esprit que les réponses à ces questions doivent être suffisamment robustes. Elles sont utilisées dans une procédure d’authentification. Un pré-requis nécessaire est d’avoir une bonne connaissance des informations « personnelles » déjà mises en ligne par un moyen ou un autre dont :

  • les profils des réseaux sociaux ;
  • les participations à des listes de diffusion ou des groupes de travail ;
  • des questionnaires d’enquête ou de satisfaction ;
  • etc.

Il faut aussi que ces informations soient différentes (questions et réponses) pour chaque site, de la même manière qu’un mot de passe.

Si l’utilisateur estime que cette phase d’authentification n’est pas fiable ou pratique, il peut également choisir de renseigner une question et une réponse aléatoire (frappes clavier à l’aveugle) si cette procédure n’est pas directement désactivable.

4 Microsoft Office 2007 et les informations confidentielles

Dans le dernière version de la suite bureautique de Microsoft, une fonctionnalité a été ajoutée : le Document Inspector. Elle permet de vérifier la présence de données invisibles telles que des annotations, des informations personnelles ou du texte caché. Si cette fonctionnalité est offerte aux utilisateurs, un article du bloc-notes en ligne du MSDN explique comment utiliser l’Open XML SDK pour automatiser cette vérification. Cela peut être utile, entre autres, aux administrateurs de serveurs qui voudraient vérifier que des informations confidentielles ne se retrouvent pas disponibles publiquement par erreur.

Le CERTA recommande de manière générale la plus grande prudence lors de la publication en ligne de documents pouvant contenir des informations sensibles et de maîtriser au mieux les formats utilisés. Ces derniers sont souvent bien plus complexes que l’on peut penser.

5 Nouvelle version de Ubuntu

La nouvelle version de la distribution GNU/Linux : Ubuntu est sortie cette semaine. La version 7.10 devient donc obsolète et ne fera plus l’objet de mises à jour. Par ailleurs, une des nouveautés présente dans cette version nommée « Jaunty Jackalope » est la présence de l’application Eucalytus qui permet selon ses développeurs de créer et déployer ses propres applications de Cloud Computing. Cette fonctionnalité n’est pour le moment proposée qu’en test mais il conviendra de rester circonspect en la matière. Pour le reste, il faudra s’attarder sur la configuration par défaut des applications installées ainsi que sur les services lancés par défaut même si les services réseau en écoute sont très restreints par défaut ; ce qui est une bonne chose. La configuration du pare-feu pourra être une bonne piste d’amélioration du niveau de sécurité après l’installation.

Rappel des avis émis

Dans la période du 13 au 19 avril 2009, le CERT-FR a émis les publications suivantes :


Durant la même période, les publications suivantes ont été mises à jour :