DMA

SSTIC – Jour 2 (mise à jour 18:00)

Mes notes de la deuxième journée (ce ne sont que des notes et je prie d’avance les lecteurs de m’excuser si elles ne sont pas claires).

Attaques DMA peer-to-peer et contre-mesures

Fernand Lone-Sang (et Loïc Duflot, Vincent Nicomette, Yves Deswarte)

Il s’agit d’attaques ciblant la mémoire des contrôleurs eux-mêmes et non la mémoire centrale du système. Le contrôleur utilisé pour l’attaque est un contrôleur Firewire. Les tests ont été effectués sur cinq chipsets (Lakeport, Eaglelake et Tylersburg). Noyau d’attaque Linux 64 bits recompilé pour retirer protections sur /dev/mem. dd est ensuite utilisé pour copier la mémoire des contrôleurs. L’architecture de la machine attaquante est classique.

Les chipsets Eaglelake et Lakeport ont des comportements similaires.

Une démonstration a été réalisée pour copier la mémoire de la carte graphique, qui apparaissent quasi en temps réel.

Contre-mesures possibles:

  • I/O MMU (In/Out Memory Management Unit) qui permet de l’isolation entre les régions de mémoire des contrôleurs, restreint l’accès des contrôleurs à leurs domaines respectifs. Implémenté au sein du northbridge dans les chipsets Intel. Certains chipsets AMD intègrent un I/O MMU dans le southbridge.
  • Access control services (ACS): définissent des points de contrôle sur les bus d’E/S. Apparus récemment dans des chipsets Intel x58, désactivés par défaut. Leur activation peut interférer avec certains pilotes de périphériques.

Sticky fingers & KBC Custom Shop

Alexandre Gazet, ESEC Sogeti

De très nombreuses “offres” vendant des mots de passe BIOS “maîtres” qui correspondraient à tel ordinateur. L’orateur découvre dans ses recherches le source d’un générateur de mot de passe correspondant à son ordinateur.

Ses recherches le mènent sur différents forums (mydigitallife.info, csdn.net…) et à adapter Metasm pour prendre en compte le processeur du contrôleur clavier (qui s’avère être un ARCompact).

Cela lui permet d’aller plus loin dans l’analyse du contrôleur de clavier. Il parvient notamment à forcer des mises à jour de la ROM du contrôleur clavier. Il procède ensuite à un débridage de la commande de lecteur pour un accès complet à la ROM et à la RAM du contrôleur clavier, ajouter un loggeur de commandes et une commande d’écriture en RAM.

Il ouvre la voie à l’exécution de code dans le SMM grâce à l’exploitation d’une faille dans le dialogue entre le contrôleur clavier et le handler SMI. Pour la démonstration il parvient à ajouter des fonctions à l’interface 0xB2 pour rendre accessible la SMRAM.

La fonction vulnérable est appelée à chaque démarrage par le BIOS, furtive (tout en mémoire), persistante (même en cas de réinstallation).

“Ça ne sert à rien.”, conclut-il. C’est quand même intéressant de démontrer qu’on peut explorer le fonctionnement des contrôleurs les plus simples et même y découvrir des failles qui ont un impact potentiel sécuritaire sur le fonctionnement central d’un PC et envisager des compromissions en cascade.

Virtualisation d’un poste physique depuis le boot

Stéphane Duverger, EADS Innovation Works

Leçons tirées du développement d’un hyperviseur de type 1 (sans système hôte), Ramooflax. L’objectif de ce travail est d’avoir des méthodes d’observation du fonctionnement d’un OS, y compris d’interagir en direct avec les process en cours (démo de débug en direct avec IDA).

Résultat du challenge SSTIC

Axel Tillequin, EADS, présente sa solution du challenge SSTIC 2011

Attacking and Fixing PKCS#11 Security Tokens with Tookan

Graham Steel (@graham_steel)

Conférence initiale en novembre 2010.

PKCS 11 décrit une interface pour les “tokens” d’authentification (clé USB, carte à puce,…). Les clés sont stockées dans le dispositif, protégées par un PIN.

Explication et démonstration de l’utilisation de Tookan pour tester les vulnérabilités de tels dispositifs de sécurité qui autoriseraient l’accessibilité en clair à des secrets théoriquement protégés dans celui-ci.

Beaucoup de produits ont montré des vulnérabilités (voir le site de Tookan)…

Peut-on éteindre l’Internet?

Stéphane Bortzmeyer (blog, @bortzmeyer)

Méthodes citées:

  • Couper les câbles – coûteux en main-d’oeuvre, réparable, difficile à faire sur une grande échelle
  • Trouver une 0-day, par exemple dans le code d’IOS (Cisco) – mais il faudrait des vulnérabilités multiples (plusieurs équipementiers) et l’attaque impose de ne pas couper l’Internet pour qu’elle puisse se propager
  • Attaque en déni de service – il faut cibler des ressources essentielles (par exemple la racine du DNS)
  • Action autoritaire (exemple de certains pays récemment coupés de l’Internet pendant plusieurs jours)

… facile donc de perturber l’Internet, essentiellement localement et pour un temps finalement assez court.

Pour améliorer la résilience:

  • Repenser Internet? Mais on se heurtera aux mêmes types de défauts intrinsèques aux systèmes complexes.
  • Réglementer?
S. Bortzmeyer croit plus en:
  • La redondance physique (éviter les points de défaillance unique – SPOF);
  • Ecrire des logiciels sans bogues – en tous cas direction à prendre;
  • Coordination des acteurs;
  • Action politique (au sens d’éviter des politiques de censure).

Architecture DNS sécurisée

Guillaume Valadon, Yves-Alexis Perez, ANSSI

Nota: l’ANSSI recrute 🙂

Présentation de DNSSEC (voir aussi article Wikipédia, ou un article précédent de S. Bortzmeyer).

L’enregistrement NSEC (Next SECure) a pour but de signer des enregistrements qui n’existent pas, afin d’éviter des usurpations non signées. La première solution fut d’énumérer ce type d’enregistrements manuellement. NSEC 3 (RFC 5155 ou sur le blog de S. Bortzmeyer)  est une évolution dans laquelle des empreintes cryptographiques sont utilisées à la place des noms.

Rump sessions (extraits)

Billetterie du SSTIC, Nicolas Bareil & Fabrice Desclaux. Signature HMAC-SHA1 du QR Code. Billet produit en Latex/Tikz, généré en Python.

XSS, Erwan Abgrall. Projet ANR DALI. Distinction payload/vecteur. Envisage fingerprinting grâce à ces résultats sans tenir compte du navigateur.

Digital forensics XML, Christophe Grenier. Format créé par Simson Garfinkel simsong@amg.org. Utilisé par scalpel, frag_find, photorec, ewfinfo, md5deep (*deep).

Audits techniques et analyses de risque, Pôle national de compétence SSI Education nationale. Méthodologie maison.

Référentiel d’exigences applicables aux prestataires d’audit de la SSI. ANSSI.

AirScan, Raphaël Rigo. Détecteur de points d’accès Wifi sous Nintendo DS. http://syscall.eu/

Orchids IDS opensource – http://www.lsv.ens-cachan.fr/orchids/

Incident response methodology, Jean-Philippe Teissier, CertSG.

Hack de couteau suisse USB auto-destructeur. 🙂

DGA/MI recrute aussi.

Usages offensifs de XSLT, Nicolas “Nicob” Grégoire.