Marianne ANSSI

CERT-FR

Centre gouvernemental de veille, d'alerte et de réponse aux attaques informatiques

logo ANSSI
Informations utiles

Que faire en cas d'intrusion ?

Les systèmes obsolètes

Liens utiles

 

L'ANSSI recrute

 

 

Les documents du CERT-FR

Publications récentes

Les alertes en cours

Les bulletins d'actualité

Les notes d'information

Année en cours Archive

 

Les Flux RSS du CERT-FR

Flux RSS complet

RSS

Flux RSS des alertes

RSS

Flux RSS SCADA

RSS

 

CERTFR-2017-ACT-009

Imprimer ce document

Version PDF

À propos du CERT-FR

Le CERT-FR

Nous contacter

Contact us ( Drapeau anglais )

A propos du site

Communauté CSIRT

Les CSIRT

Le FIRST

L'EGC

 
Archives du CERT-FR

Année 2017 Archive

Année 2016 Archive

Année 2015 Archive

Année 2014 Archive

Année 2013 Archive

Année 2012 Archive

Année 2011 Archive

Année 2010 Archive

Année 2009 Archive

Année 2008 Archive

Année 2007 Archive

Année 2006 Archive

Année 2005 Archive

Année 2004 Archive

Année 2003 Archive

Année 2002 Archive

Année 2001 Archive

Année 2000 Archive

 

S . G . D . S . N
Agence nationale
de la sécurité des
systèmes d'information

République Française Paris, le 27 février 2017
No CERTFR-2017-ACT-009

Affaire suivie par :

CERT-FR

Objet : Bulletin d'actualité CERTFR-2017-ACT-009

1 - Protection DesktopVerifyHeapUnicodeString

La mise à jour anniversaire de Windows 10 (14393) comporte de nouvelles contre-mesures. Notamment, une mise à jour vise à renforcer la sécurité du système d'exploitation à l'encontre d'exploits liés au composant win32k. Ce composant, présent depuis les premières versions de Windows, a évolué à maintes reprises (migré du monde utilisateur vers le monde noyau) et est une cible de choix pour les attaquants.

Lors de l'exploitation de vulnérabilités impactant le noyau, l'attaquant cherche à obtenir des primitives de lecture et écriture dans le but d'exécuter sa charge utile avec des privilèges élevés. Pour ce faire, une technique publique et utilisée par certains groupes d'attaquants consiste en la corruption de l'objet strName de type LARGE_UNICODE_STRING. Cet objet intégré à un objet Window (tagWND) correspond au titre de la fenêtre.

La modification de l'adresse de base l'objet strName couplé à l'utilisation des fonctions InternalGetWindowText et NtUserDefSetText permettent de respectivement lire et écrire des données en zone noyau.

La contre-mesure, implémentée au sein de la fonction DesktopVerifyHeapUnicodeString a été intégrée à ces deux fonctions. Cette fonction vérifie les propriétés de la structure LARGE_UNICODE_STRING (length, MaximumLength et buffer) qui sera manipulée par la fonction. Certains de ces contrôles s'appuient sur les caractéristiques de la zone mémoire allouée pour les objets graphiques associés au bureau courant (tagDESKTOP).

Cette contre-mesure réduit les possibilités de lecture et écriture de l'attaquant à la zone mémoire alloué pour les objets graphiques du bureau courant.

Cependant, une technique d'exploitation présentée lors de la conférence BlackHat Europe 2016 permettrait de contourner cette contre-mesure. Celle-ci repose sur la corruption du champ cbwnExtra et l'utilisation du tableau WindowExtraData de l'objet Window. En couplant la corruption de ce champ aux fonctions GetWindowLongW et SetWindowLongW, il est possible d'obtenir une première primitive de lecture et écriture. En juxtaposant deux objets Window, cette première primitive permettrait de corrompre le deuxième objet Window. L'objet correspondant au bureau courant utilisé par la contre-mesure est intégré à la structure Window. La technique consiste en la corruption de l'objet strName et de l'objet tagDESKTOP afin de valider l'ensemble des contrôles de sécurité.

Malgré les limitations de cette contre-mesure, le noyau Windows se voit ainsi doté d'une nouvelle protection augmentant la difficulté de son exploitation. Elle s'inscrit dans la stratégie de Microsoft qui consiste, entre autres, à casser les techniques d'exploitation connues.

Documentation


2 - Rappel des avis émis

Dans la période du 20 au 26 février 2017, le CERT-FR a émis les publications suivantes :

  • CERTFR-2017-ALE-002 : Vulnérabilité dans Microsoft Windows
  • CERTFR-2017-AVI-054 : Multiples vulnérabilités dans le noyau Linux de Suse
  • CERTFR-2017-AVI-055 : Multiples vulnérabilités dans Adobe Flash Player sur Windows
  • CERTFR-2017-AVI-056 : Vulnérabilité dans Xen
  • CERTFR-2017-AVI-057 : Multiples vulnérabilités dans Citrix XenServer
  • CERTFR-2017-AVI-058 : Multiples vulnérabilités dans le noyau Linux d'Ubuntu
  • CERTFR-2017-AVI-059 : Multiples vulnérabilités dans SCADA Siemens RUGGEDCOM NMS

Gestion détaillée du document

27 février 2017
version initiale.
Dernière version de ce document : http://cert.ssi.gouv.fr/site/CERTFR-2017-ACT-009

CERT-FR
2017-02-27
Premier Ministre / Secrétariat Général de la Défense et de la Sécurité Nationale / Agence nationale de la sécurité des systèmes d'information webmestre Dernière mise à jour : le 2017-04-28