Quel est le contenu de cette série ?

  • MS08-018 : exécution de code à distance dans Microsoft Project (critique) ;
  • MS08-019 : exécution de code à distance dans Microsoft Visio[1] (important) ;
  • MS08-020 : usurpation de contenu sur le client DNS (important)
  • MS08-021 : exécution de code à distance dans GDI (critique)
  • MS08-022 : exécution de code à distance dans les moteurs JScript et VBScript (critique)
  • MS08-023 : exécution de code à distance dans ActiveX (critique)
  • MS08-024 : exécution de code à distance dans Internet Explorer (critique)
  • MS08-025 : élévation de privilèges dans le noyau (important)

Résumons-nous. MS08-018 et MS08-019 fournissent deux vecteurs relativement classiques d'attaquer la suite bureautique Microsoft. C'est un vecteur d'attaque ciblée malheureusement classique à destination des entreprises puisqu'il se combine magnifiquement bien avec une recherche sommaire de profils au sein de la cible pour se construire un courrier bien senti.

Ensuite, nous avons une faille permettant de détourner le résultat d'une requête DNS. En gros, un support diablement efficace à des attaques de détournement de flux ou de phishing. Le problème ? Les IDs des requêtes DNS sont prévisibles, laissant la possibilité à un attaquant de fournir une réponse arbitraire. Pas de facteur limitant, pas de moyen de contournement. Il faut patcher. C'est un des problèmes que Pierre, Nicolas et moi avions abordés lors du SSTIC 2005 et qui est revient régulièrement, pas plus tard qu'en février avec ce papier sur le générateur aléatoire d'OpenBSD. Le truc relativement chiant avec ce type de faille est que ça demande du temps à corriger proprement, un générateur d'aléas impactant un grand nombre de composants dans le système. Plus pragmatiquement, cette faille fournit un excellent moyen d'envoyer quelques clients vers un site de son choix, soit pour lui faire télécharger un document bien senti répondant aux deux alertes ci-dessus, soit contenant des éléments malicieux pour jouer avec le navigateur.

Maintenant que nous pourrions diriger le navigateur vers un site de notre choix, voyons les options. Nous avons d'abord deux failles dans la couche graphique, deux overflow, un dans le tas, l'autre dans la pile. En pratique, ça se provoque par le chargement d'un fichier EMF, le successeur du tristement célèbre format WMF qui se trouve également impacté. Cette faille impacte toutes les applications s'appuyant sur cette interface standard, c'est à dire à peu près tout ce qui affiche des images, navigateur et lecteur de courrier en tête. On peut également inclure du code JScript ou VBScript permettant d'exécuter ce qu'on veut dans le contexte de l'utilisateur. Ou se servir d'un ActiveX. Ici encore, tout ce qui traite ces types de script est impacté. On pensera forcément au navigateur, mais également au lecteurs de courrier électronique. Encore une fois. Enfin, notre méchant favori pourra choisir d'exploiter directement Internet Explorer pour exécuter son code, plutôt que de recourir à l'un des composants vulnérables. Bref, l'attaquant a le choix des armes. C'est varié, ça touche plein de monde, et c'est que du critique.

Enfin, si les privilèges de l'utilisateur ne lui suffisent pas, l'attaquant pourra toujours exploiter le noyau pour gagner le droit de devenir System. Si ça lui chante.


Scénario catastrophe ? Je vous laisse juger de la crédibilité d'une attaque enchaînant DNS spoofing et page web piégée. L'élévation de privilège est la cerise sur le gâteau, mais entre nous, elle n'est pas franchement nécessaire. Possible ? Oui. Probable ? Hummm, je laisse les spécialistes de l'environnement cible vous éclairer. Mais bon, comme dirait l'autre, dormez tranquilles, braves gens, c'est bien connu, ce genre de choses n'arrivent qu'aux autres...



Complètement autre chose. Soucieux de vous remonter le moral, je ne peux m'empêcher de vous envoyer chez BouletCorp qui vient de pondre une série de douze planches sur les réunions de famille. C'est tout simplement énormissime. Ça m'a mis de bonne humeur pour la journée. Et ça tombe plutôt bien, je vais en avoir besoin...

Notes

[1] Pauvre Nono, heureusement que le viewer n'est pas impacté ;)