La sécurité au sein des processeurs x86

Magazine
Marque
MISC
Numéro
58
Mois de parution
novembre 2011
Domaines


Résumé
L'objectif du premier article de ce dossier est de résumer les principes fondamentaux qui régissent la sécurité au sein d'un processeur et qui remontent à la fin du siècle dernier : les modes d'exécution et les niveaux de privilèges du processeur, la segmentation et la pagination. Cet article se veut également une courte introduction à des extensions des plates-formes x86 qui ont été ajoutées ces dernières années. Certaines d'entre elles sont décrites plus en détail dans les articles qui suivent.

1. Modes d'exécution et privilèges du CPU

1.1 Architecture générale d'un PC

Quelques rappels sur l'architecture générale d'une plate-forme x86 sont d'abord nécessaires à la compréhension des concepts qui suivent. Le cœur du système est constitué par la mémoire (RAM et mémoires non volatiles, comme celle contenant le code du BIOS), qui stocke le code à exécuter et les données associées, et le CPU, qui réalise l'exécution du code. Il s'appuie sur le chipset, qui relie le CPU à la mémoire et aux périphériques. En plus de la signalisation par interruptions, il existe trois mécanismes permettant le transfert d'informations entre le cœur et ses périphériques :

- Les ports d'entrées/sorties (PMIO, Port Mapped I/O), qui correspondent à un espace d'adressage propre aux périphériques, et sont exploités par des instructions machine spécifiques (instructions assembleur in et out).

- Les entrées/sorties projetées en mémoire (MMIO, Memory-Mapped I/O), pour...

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...

En sécurité sous les drapeaux

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

En sécurité sous les drapeaux... du compilateur, ces fameux -fstack-protector-strong et autres -D_FORTIFY_SOURCE=2 que l’on retrouve dans de plus en plus de logs de compilation. Cet article se propose de parcourir quelques-uns des drapeaux les plus célèbres, en observant les artefacts dans le code généré qui peuvent indiquer leur utilisation, tout en discutant de leur support par gcc et clang. Après tout, nombre d’entre eux sont utilisés par défaut sous Debian ou Fedora, ils méritent bien qu’on s’y intéresse un peu.

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.).