|
Failles WMF : état des lieux. Deux nouvelles failles !
Par Rédaction,
secuobs.com
Le 11/01/2006
Résumé : Une présentation effectuée lors d’une réunion organisée par l’OSSIR apporte des détails sur les failles WMF récemment découvertes. - Lire l'article
Cet article est basé sur une présentation réalisée le 10 janvier 2006 par Saâd Kadhi (Hapsys). Présentation organisée par l'OSSIR (Observatoire de la Sécurité des Systèmes d'Information et des Réseaux ) et plus particulièrement par le groupe SUR (Sécurité Unix & Réseau) à l'Ecole Nationale Supérieur des Arts et Métiers (ENSAM).
Pour information, Saâd Kadhi est le nouveau co-responsable du groupe SUR au même titre que Hervé Schauer et en remplacement de Daniel Azuelos que nous remerçions pour le travail qu'il a effectué au sein de ce groupe.
Le propos de cette présentation était la fameuse faille WMF qui affecte les systèmes Windows en ce début d'année et qui fait particulièrement couler beaucoup de l'encre.
WMF ou Windows MetaFile est un format de fichier de type vectoriel 16 bits introduit par Microsoft dès les versions 3.0 en 1990. Peu utilisé, il est remplacé progressivement par le format EMF (Enhanced Metafile) qui est une version 32 bits que nous espérons mieux conçu d'un point de vue sécurité que son prédècesseur.
Le format WMF est proche de la conception d'un format comme Postscript. Le WMF, c'est un ensemble de fonctions qui peuvent être envoyées vers GDI (Graphic Device Interface), la couche graphique de
Windows représentée sous la forme de la librairie "gdi32.dll".
Certains appels de WMF vers GDI sont dit sensibles, notamment les appels de type "escape" comme "SETABORTPROC" qui permet a une application de signaler un état d'impression ou d'erreur.
"SETABORTPROC" est obsolète depuis WIN32 mais le code est toujours présent pour assurer la compatibilité descendante. Il est notamment toujours possible de l'utiliser via "shimgvw.dll" (Microsoft Picture and Fax Viewer).
Rappel : la faille a été découverte par "noemail.pls" le 27/12/2005 dans un fichier malicieux qu'il a analysé. Selon les rumeurs, cette personne serait un employé de la société américaine Webtrends qui a vu la faille en "catégorisant" un site web.
On pourrait pratiquement en conclure que l’exploitation était déjà présente depuis un moment et que certains ont pu en profiter. Dans l'absolu, l'exploitation de cette faille est possible depuis 16 ans, en pratique l'intêret de son exploitation ne serait que bien plus récent !
Le code arbitraire joint à l'exploitation de la faille est exécuté avec les privilèges de l'utilisateur "System" avec une possible compromission totale de votre machine. Ce risque est aggravé par le nombre important de vecteurs d'initialisation caractérisé par toutes applications permettant de lire/afficher un fichier WMF.
Les plateformes concernées sont l'ensemble des OS Windows depuis 1990 à l'exception peut être des plateformes Windows Mobile qui ont été développées "from scratch" pour en faire un système presque monolithique. Les fonctions d'impression propres à "SETABORTPROC" sont peu utiles pour un format WMF sur des systèmes embarqués.
Sophos révèle plus de 200 codes d'exploitations recensés (certains ciblés, les plus dangereux) après 9 jours pour ceux qui étaient connus au 4 janvier 2006.
Le plus rapide à avoir été diffusé est celui qui a été intégré à Metasploit dans sa première version, un deuxième de bien meilleure qualité ayant ensuite été ajouté au framework.
A noter également l'émergence rapide du cheval de troie "SATILOLER.B" (nom donné par sophos) dont l'objectif est le vol d'informations bancaires.
Il est possible d'automatiser le processus d'exploitation via un site malicieux afin de piéger les utilisateurs d'Internet Explorer toujours nombreux. La sortie de cette faille pendant les fêtes lui a permis de bénéficier du peu d'effectifs techniques en place dans les entreprises lors de cette période afin d'y faire face. A noter également que l'émulateur Wine est vulnérable à cette faille, d'autres émulateurs le sont surement tout autant.
Une des premières protections possibles proposées a été de désactiver la dll "shimgvw.dll" via la commande suivante :
- regsvr32 -u %windir%\system32\shimgvw.dll
Cette DLL étant un passage "presque" obligatoire pour "SETABORTPROC" afin d'acceder à GDI. L'ISC (internet storm center) a cependant trouvé des applications qui réactivent cette dll au besoin sans vous prévenir. On ne peut donc considérer cette solution que comme partielle ; l'effacement n'étant pas une solution vu les processus de restauration automatique de fichier de Windows. La désactivation de ces processus implique des conséquences qui n'en font pas plus une idée judicieuse.
Le filtrage de fichiers ensuite proposé ne peut pas être réellement efficace si il est réalisé seulement au niveau de l'extension, seul le format importe et vous pouvez vous trouver face à un fichier en ".JPG" vulnérable à cette faille. Il doit être effectué sur les entêtes des fichiers, avec les ressources nécessaires qu'implique ce genre d'opération. Par ailleurs tant bien vous le mettriez en place, vous feriez tout de même face aux problèmatiques posés par le cryptage des données ainsi que l'apport de fichiers par des sources multiples comme les clés usb par exemple.
Les solutions basées sur les Antivirus ne sont pas non plus dans ce cas l'idéal, 200 codes disponibles, pas d'extension fixe ; c'est à dire autant de signatures antivirales différentes sans compter les codes non recensés. Le "Cath me Game" est d'avance voué à l'echec pour les éditeurs de ce type de solution.
Vient ensuite le correctif non officiel proposé par Ilfak Guilfanov (spécialiste sécurité Windows), ce patch bloque les tentatives d'accès à "SETABORTPROC", il est s'injecté en mémoire via la dll "wmfhotfix.dll" et ne fait aucune modification sur "gdi32.dll" ou tout autre fichier système.
La présence de ce patch n'est pas incompatible avec le patch officiel de Microsoft (cf. la suite de l'article), il a notamment été recommandé de l'installer par ISC & F-secure, Sophos étant moins enclin à cette recommandation. Il est facilement désinstallable et offre une protection totale sur cette faille WMF sauf dans le cas ou il serait possible de décharger cette dll (pas de POC - Proof of Concept - pour le moment). Le code source est disponible assurant une certaine transparence propice à la confiance.
Le patch officiel, annoncé pour le 10 janvier, est finalement sorti le 5 devant la pression des clients & notamment les grands comptes et administrations. Il désactive la fonction vulnérable comme le patch non officiel, mais directement dans la dll. Le patch non officiel n’aura finalement été que peu déployé par les entreprises de peur de perdre le support Microsoft
On peut en retirer que les images ne sont définitivement pas des fichiers de confiance, la
compatibilité descendante est un processus dangeureux (elle doit notamment être traitée
avec une notion de temps), la monoculture est une hérésie (Sophos vs ISC/F-Secure). Les éditeurs de logiciel doivent prendre leur responsabilités et rapidement !
En comparaison, lorsqu'Internet Explorer ouvre un fichier au format WMF alors qu'il n'en a pas l'extension, vous n'êtes prévenus de rien, Firefox moins "intelligent" ("Trop d'intelligence tue l'intelligence") demande à l'utilisateur la procédure à appliquer à ce fichier.
Cerise sur le gâteau, deux nouvelles failles pour WMF ont été découvertes ce 11 Janvier, possible corruption de mémoire au programme via les fonctions "extcoderegion" & "extescape", le tout permettant de provoquer un Déni de Service (DoS) sur les applications et l’exécution de code arbitraire selon ISC & SecurityFocus, mais pas selon Microsoft ("DoS possible au niveau applicatif mais pas sur leur système").
D'autres vulnérabilités pourraient sortir sous peu, les paris sont ouverts sur les délais et le nombre. Certains processeurs récents ne seraient pas vulnérables aux failles WMF de part leur conception de gestion de la mémoire, information à prendre au conditionnel.
- Article suivant : Le multiplexage sous Openssh. Pourquoi ? Comment ?
- Article précédent : Nicolas Ruff (SWNT/OSSIR): En ces temps de criminalisations des chercheurs en sécurité, il serait plus judicieux de mettre les utilisateurs & les éditeurs en face de leurs responsabilités
- Article suivant dans la catégorie Failles : Une nouvelle faille corrigée sur l’antivirus Symantec
- Article précédent dans la catégorie Failles : Un correctif non officiel est disponible pour la faille WMF
Mini-Tagwall des articles publiés sur SecuObs : | | | | sécurité, exploit, windows, attaque, outil, microsoft, réseau, audit, metasploit, vulnérabilité, système, virus, internet, usbsploit, données, source, linux, protocol, présentation, scanne, réseaux, scanner, bluetooth, conférence, reverse, shell, meterpreter, vista, rootkit, détection, mobile, security, malicieux, engineering, téléphone, paquet, trames, https, noyau, utilisant, intel, wishmaster, google, sysun, libre |
Mini-Tagwall de l'annuaire video : | | | | curit, security, biomet, metasploit, biometric, cking, password, windows, botnet, defcon, tutorial, crypt, xploit, exploit, lockpicking, linux, attack, wireshark, vmware, rootkit, conference, network, shmoocon, backtrack, virus, conficker, elcom, etter, elcomsoft, server, meterpreter, openvpn, ettercap, openbs, iphone, shell, openbsd, iptables, securitytube, deepsec, source, office, systm, openssh, radio |
Mini-Tagwall des articles de la revue de presse : | | | | security, microsoft, windows, hacker, attack, network, vulnerability, google, exploit, malware, internet, remote, iphone, server, inject, patch, apple, twitter, mobile, virus, ebook, facebook, vulnérabilité, crypt, source, linux, password, intel, research, virtual, phish, access, tutorial, trojan, social, privacy, firefox, adobe, overflow, office, cisco, conficker, botnet, pirate, sécurité |
Mini-Tagwall des Tweets de la revue Twitter : | | | | security, linux, botnet, attack, metasploit, cisco, defcon, phish, exploit, google, inject, server, firewall, network, twitter, vmware, windows, microsoft, compliance, vulnerability, python, engineering, source, kernel, crypt, social, overflow, nessus, crack, hacker, virus, iphone, patch, virtual, javascript, malware, conficker, pentest, research, email, password, adobe, apache, proxy, backtrack |
|
|
|
|
|