De la découverte d’une vulnérabilité dans un driver Windows à l’élévation de privilèges

Magazine
Marque
MISC
Numéro
62
Mois de parution
juillet 2012
Domaines


Résumé
Les protections mises en place pour tenter d’empêcher l’exploitation des vulnérabilités applicatives sont de plus en plus complexes. Les systèmes Windows récents introduisent en effet de nombreuses contre-mesures : DEP, ASLR, SafeSEH, SEHOP, \GS Stack-Cookie [1]. Devant la difficulté grandissante de l’exploitation des failles dans les programmes utilisateurs, les chercheurs de vulnérabilités se tournent de plus en plus vers les failles présentes en kernel. Contrairement à l’user land, les mécanismes de protection contre la corruption de la mémoire en kernel land sont plus rudimentaires et peuvent être contournés plus facilement.Cet article va présenter l’exploitation kernel au travers d’une étude de cas concret assez représentative : une vulnérabilité que j'ai découverte dans un driver de l’HIPS « Norman Security Suite 8 » et qui, comme nous allons le voir, permet une élévation de privilèges (Bulletin de sécurité : [2]).

1. Introduction

À l’instar des applications classiques, les drivers ne sont pas exempts de vulnérabilités. Les buffer overflows restent cependant plus rares au profit des failles de type « déréférencement de pointeurs ». Les bugs logiques tels que les « race conditions » peuvent aussi bien évidemment se retrouver dans les drivers.

Avant tout, il est toutefois important de noter que la plupart des drivers ne sont accessibles que dans un contexte local, donc les éventuelles failles qu'ils abritent ne peuvent être exploitées par un attaquant qu’après avoir gagné un accès à la machine. De telles vulnérabilités restent tout de même intéressantes pour permettre une élévation de privilèges vers le compte SYSTEM. Notons qu'il existe tout de même des cas d’exploitation à distance de drivers Windows, comme dans les drivers de cartes Wi-Fi [3].

L’ironie de l’histoire est que ce sont souvent des logiciels destinés à apporter une meilleure sécurité sur le...

Cet article est réservé aux abonnés. Il vous reste 96% à découvrir.
à partir de 21,65€ HT/mois/lecteur pour un accès 5 lecteurs à toute la plateforme
J'en profite


Articles qui pourraient vous intéresser...

Introduction aux TPM (Trusted Platform Modules)

Magazine
Marque
MISC
HS n°
Numéro
22
Mois de parution
octobre 2020
Domaines
Résumé

Les TPM (Trusted Platform Modules), brique de base du Trusted Computing, ont été imaginés il y a une vingtaine d’années, et pourtant ils ne sont pas très utilisés malgré leurs réelles qualités. Comment expliquer cela ? Cet article tend à fournir de premiers éléments de réponse.

Identification automatique de signaux grâce à la fonction d’autocorrélation

Magazine
Marque
MISC
HS n°
Numéro
22
Mois de parution
octobre 2020
Domaines
Résumé

Vous connaissiez la chasse au trésor… Initiez-vous maintenant à la chasse au signal (signal hunting en anglais). La chasse au signal consiste à rechercher les signaux qui nous entourent dans l’espace invisible du spectre électromagnétique. Mais plus besoin de rester l’oreille collée sur un haut-parleur à tourner le bouton pour régler la fréquence. La SDR (Software Defined Radio) a révolutionné tout cela : une radio numérique et un PC est vous voilà armé pour découvrir ce monde que les professionnels dénomment le SIGINT (SIGnal INTelligence).

Avec le Spanning Tree Protocol, suis-je en sécurité dans mon réseau ?

Magazine
Marque
MISC
HS n°
Numéro
22
Mois de parution
octobre 2020
Domaines
Résumé

Dans le cadre des hors-séries sur les retours aux fondamentaux, cet article aura comme sujet le protocole STP (Spanning Tree Protocol). Inventé en 1985 par Radia Perlman, il permet principalement d’assurer une liaison réseau redondante et sans boucle. Ce protocole étant primordial au sein d’un réseau de moyenne à grande envergure, s’il n’est pas correctement configuré, cela pourra alors permettre à des attaquants de compromettre le réseau.

Return oriented programming 101

Magazine
Marque
MISC
HS n°
Numéro
22
Mois de parution
octobre 2020
Domaines
Résumé

Le Returned Oriented Programming (ou ROP) est une technique permettant d'exploiter des programmes disposant de la protection NX (No eXecute) ou DEP (Data Execution Prevention). L'objectif de cet article est de vous présenter les bases du ROP, ainsi que l’exploitation pas-à-pas d’un programme d’entraînement via l'utilisation de la bibliothèque python pwntools [1]. Dans un souci de simplicité, la démonstration sera réalisée sur un programme s'exécutant sur un système Linux 64 bits. Bien entendu, cette démonstration reste applicable sur d'autres architectures (ARM, MIPS, etc.).

Use-After-Free dans le noyau Linux

Magazine
Marque
MISC
HS n°
Numéro
22
Mois de parution
octobre 2020
Domaines
Résumé

Pièce logicielle qui a accompagné les deux dernières décennies, le noyau Linux est un système relativement complet qui dispose d’un allocateur de mémoire dynamique. Comme tous les logiciels classiques, le noyau est ainsi régulièrement sujet à des vulnérabilités de type Use-After-Free via cet allocateur.