samedi 17 octobre 2009

Le Monstre

Et oui, le Patch Tuesday d'octobre est tout simplement ... monstrueux ! Avec 13 bulletins corrigeant 33 failles, c'est un record dans l'histoire des bulletins de sécurité Microsoft.

Il faut dire que traditionnellement, avant chaque lancement d'une nouvelle version de Windows, Microsoft vide son placard des failles accumulées. Et Windows Seven sort le 22 octobre ...

Impossible de rentrer dans les détails techniques de tous ces correctifs en un seul billet. Je me contenterai de donner quelques remarques ou anecdotes concernant ces bulletins.

MS09-050 corrige 3 failles dans l'implémentation du protocole SMBv2: celle trouvée par Laurent Gaffié (qui n'est pas crédité, en châtiment de son irresponsible disclosure), et une autre faille exploitable trouvée par Matthieu Suiche (l'un de mes anciens stagiaires :). Notons que ces deux français sont expatriés: l'un au Canada, l'autre aux Pays-Bas.

MS09-051 corrige des failles dans un obscur codec de Windows Media, optimisé pour le traitement de la voix. Mais ce bulletin est symptomatique du fait qu'il faut lire les bulletins, et pas seulement appliquer les correctifs. En effet, ce codec n'est pas présent par défaut dans Windows Media Player 6.4 sur Windows 2000, mais a pu être installé par le mécanisme de recherche automatique des codecs en ligne. Si c'est le cas, une opération manuelle est requise sur le poste.

MS09-053 corrige des failles (déjà connues) dans le serveur FTP de Microsoft. Bizarrement, Kingcope est crédité alors que la publication de ces failles a été tout sauf responsable !

MS09-054 est un correctif cumulatif pour Internet Explorer. L'une des failles est exploitable par le biais de la technologie XBAP: il ne s'agit rien de moins que de créer des applications complètes (en code managé) qui vont être téléchargées et exécutées dans le navigateur ! Un remplacement des ActiveX et un concurrent pour la technologie Native Client de Google.

Là où ça devient fort, c'est que l'installation du Framework .NET 3.5 (pré-requis à l'exécution d'applications XBAP) va automatiquement installer une extension Firefox (si ce navigateur est présent). Donc même Firefox sur Windows est vulnérable à cette faille ! Du coup, la fondation Mozilla a désactivé cette extension par le biais des mises à jour automatiques de plugins ... Est-ce que Microsoft va réactiver le plugin par le biais de Windows Update ?

MS09-056 corrige deux failles dans la CryptoAPI (le pendant Windows de la libssl), permettant de tricher sur les propriétés d'un certificat. Manque de chance, ce correctif n'est pas compatible avec le produit Microsoft OCS - un produit de communication unifiée très en vogue actuellement: il provoque l'invalidation des clés de licence ...

MS09-061 permet basiquement d'exécuter du code "natif" depuis du code "managé", même si celui-ci s'exécute avec les droits minimum. Il s'agit d'une évasion de machine virtuelle comme Java en a connu par le passé. Dès lors que vous exécutez du code "managé" depuis une source non sûre, vous êtes exposés: applications XBAP, hébergement ASP.NET, mais aussi plugin SilverLight (le concurrent Microsoft d'Adobe Flash Player). Ce dernier est un produit important dans le portfolio Microsoft ...

L'auteur de l'un de ces bogues (Jeroen Frijters) n'en est pas à son coup d'essai. Pour la petite histoire, il est leader d'un projet Open Source visant à implémenter une machine Java en .NET (le projet IKVM). Dans le cadre de ce projet, il a déjà remonté plusieurs bogues critiques à Microsoft, qui ont tous été corrigés silencieusement. Du coup, il avait décidé d'appliquer ce qu'il appelle la "no Microsoft bug filing policy". Il faut croire que Microsoft s'en est ému.

PS. Si vous vous demandez à quoi peut bien servir une machine Java en .NET, sachez qu'il en existe déjà une, fournie par Microsoft: il s'agit de la technologie J#. C'est très pratique lorsque Microsoft fait l'acquisition d'applications entièrement écrites en Java ;) Seul problème: cette technologie a été développée à Hyderabad et s'avère ni fiable (d'après Jeroen Frijters), ni pérenne (d'après Wikipedia).

MS09-062 corrige un paquet de failles dans GDI+. Pour mémoire, GDI+ est la librairie qui traite tous les formats d'image sous Windows - l'impact potentiel de ces failles est donc énorme, compte-tenu du nombre de vecteurs d'attaque. Souvenez-vous, déjà en 2004 certains avaient prédit le "Big One" avec la faille JPEG dans cette même librairie (MS04-028).

Comme facteur aggravant, il faut noter que le code GDI+ est disponible sous forme de librairie dans les outils de développement Microsoft. Il est donc possible de lier statiquement ce code à toute application développée avec Visual Studio. Conclusion: malgré la mise à disposition par Microsoft (à l'époque) d'un outil de recherche de motifs dans le code compilé, il est impossible de venir entièrement à bout de cette faille dans toutes les applications tierces.

Notons que l'une de ces failles permet d'exécuter du code "natif" depuis du code "managé" (évasion du Framework .NET). Java a connu les mêmes: il s'agit d'un risque rampant, sauf à réécrire toutes les librairies graphiques en code managé.


Notons aussi que Thomas Garnier (SkyRecon) est crédité pour la découverte de l'une de ces failles. Sachant qu'il a quitté SkyRecon autour du mois de février 2009 (pour aller chez Microsoft), cela donne une idée du délai de correction de cette faille ... La faille dans les graphiques Office a été vendue à iDefense en avril 2008, et celle sur le format TIFF en ... décembre 2007 !

Que conclure de tout cela ?

Je ne vais pas employer un mot commençant par "E..." pour ne pas lasser mes lecteurs. Mais quand même, mettre plus d'un an à corriger des failles, corriger silencieusement des failles critiques dans le Framework .NET (exploitables à distance via SilverLight), introduire des failles dans des applications tierces comme Firefox ... ça la fout mal pour les champions du développement sécurisé ...


Pour finir, félicitations aux équipes de Google et Palo Alto Networks pour le nombre de failles qu'elles ont trouvées ! (Ce dernier étant un pare-feu innovant qui a fait du buzz lors des Assises de la Sécurité).

mercredi 7 octobre 2009

Pourquoi la sécurité ne va pas s'améliorer

Il n'a échappé à personne que 10,000 mots de passe Hotmail ont été "aperçus" sur le site pastebin.com. Pour ceux qui ne connaissent pas, PasteBin est un site gratuit et anonyme permettant d'échanger rapidement des données textuelles entre amis et avec le monde entier par la même occasion. Ce qui est l'occasion de voir parfois à quel point les gens sont confiants ...

L'origine de cette divulgation est probablement liée à une campagne de phishing.
Comme à chaque fois qu'une base importante de mots de passe est perdue, c'est l'occasion d'enrichir ses connaissances sur les pratiques des utilisateurs confrontés au problème crucial du choix d'un mot de passe.

Malheureusement, dans le cas de Hotmail comme dans tous les cas antérieurs (ex. phpbb.com), le mot de passe le plus courant est ... "123456".

Qu'est-ce que cela m'inspire ? Qu'après avoir lutté pendant des années pour mettre en place des politiques de robustesse sur les mots de passe dans les entreprises (c'est même une recommandation forte ou une exigence dans la plupart des normes et standards comme PCI/DSS ou ISO 2700x), le Web 2.0 nous fait revenir 20 ans en arrière.

La différence, c'est que le Web 2.0 a des clients là où les entreprises ont des utilisateurs. Et même si les utilisateurs sont (parfois) pénibles, on peut les contraindre à obéir. Alors que le client est roi ...

La situation est même pire que cela, puisque les clients du Web 2.0 sont les annonceurs. L'utilisateur, lui, ne paie rien et ne s'engage à rien (les contrats transnationaux signés par un simple clic sur "oui, j'accepte" n'ayant probablement aucune valeur légale). Il est donc essentiel de choyer l'utilisateur pour qu'il n'aille pas voir ailleurs. Et dans ce domaine, imposer des mots de passe complexes est tout sauf user-friendly.

Dans le Web 2.0, c'est le marketing qui arbitre sur les exigences de sécurité. Les informaticiens ayant une activité professionnelle à forte composante technique, qui se sont retrouvés rattachés du jour au lendemain à une direction marketing (j'en connais beaucoup), apprécieront l'impact potentiel ...

Quelques-uns, comme MySpace, imposent une relative complexité sur le mot de passe (lettres ET chiffres). Résultat: le mot de passe le plus commun sur ce site est ... "password1" (on notera au passage que les "gens normaux" commencent à compter à partir de 1, et non 0 comme tout informaticien qui se respecte :).

Est-ce que cela impacte les entreprises d'une manière ou d'une autre ? Je ne vais pas me lancer dans des débats sur l'informatique nébuleuse (Cloud Computing) ou la dépendance cachée à GMail ...

Mais quand on voit le nombre de sites institutionnels qui utilisent Google Analytics, sans que la politique sécurité de l'entreprise ne soit applicable au mot de passe choisi ... le fait que la majorité des gens réutilisent le même mot de passe partout ... et la dépendance chainée entre les différents services 2.0 par le biais de la réinitialisation de mot de passe (comme dans le cas emblématique de Twitter) ... je suis quand même vaguement inquiet, et pas du tout confiant dans le fait que les choses vont s'améliorer !