conf_usb_gare
Transcription
conf_usb_gare
Failles USB avec Hardware Jeumont le 22/12/2014 Vicogne Frédéric Enseignant en systèmes d'information et numérique Intervenant en DUT MPH, DUT informatique et licence CDAISI Concepteur/développeur de cartes numériques PIC 32bits F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Plan Quelques Chiffres Qu'est-ce que l'USB ? Pourquoi l'USB représente-t-il un danger ? Le Plug and Play Les dangers Les contre-mesures Exemples de périphériques hack Mise en œuvre des périphériques hack Démonstration d'applications Questions ? F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Quelques chiffres F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Quelques chiffres Les infections Les clés USB de stockage présentent un vecteur de propagation important des malwares, de l'ordre de 25 % F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Quelques chiffres Les infections L'autoplay, disponible depuis Windows XP grâce à l'autorun, à provoqué une augmentation significative des infections USB. Infection Detections of Malware that Spread via AutoRun source : Microsoft F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Quelques chiffres Prise en charge du matériel Presque 100 % des systèmes d'exploitation sont compatibles avec les périphériques HID (Human Interface Device) ET Plug and Play En particulier les claviers ! F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Qu'est-ce que l'USB ? F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Qu'est-ce que l'USB ? Les normes L'USB, Universal Serial Bus, est un port de communication série haute vitesse entre le système informatique et les périphériques. Il existe trois normes : USB 1 & 1.1 : 1996-1998 ; 190ko/s à 1,5Mo/s ; définie et développée par les grands groupes (IBM, INTEL, MICROSOFT…) USB 2 : 2000 ; 60Mo/s ; l'extension OTG (On The Go) est ajoutée en 2007 USB 3 : 2008 ; 625Mo/s (théorique) ; compatibilité ascendante USB 3.1 : 2014 ; 1,2Go/s F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Qu'est-ce que l'USB ? Les normes Les prises sont normalisées La puissance électrique fournie est de l'ordre de 2,5 W pour l'USB 2 F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Pourquoi l'USB représente-t-il un danger ? F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Pourquoi l'USB représente-t-il un danger ? Vulgarisation Standard international (fonctionnement et protocoles connus par tous) On les trouve partout (PC, Bornes développement photo, voiture, téléphones, comptoirs, bureaux, agences bancaires…) Tous les types de périphériques sont disponibles en USB De plus en plus rapide et accès de plus en plus direct au kernel et à la mémoire Prise en charge Plug and Play Outils d'analyse des périphériques USB dans le domaine public F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Pourquoi l'USB représente-t-il un danger ? Le risque DMA Le risque DMA (Direct Merory Access) est parmi les risques les plus critiques du moment. Un rapport de février 2012, écrit par Rory Breuk et Albert Spruyt donne comme conclusion : F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Le Plug and Play F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Le Plug and Play La marche automatique PnP défini un protocole d'échange d'information entre le système d'exploitation et le matériel afin de déterminer le type du périphérique ainsi que le driver à charger pour son utilisation. Une fois le matériel reconnu et le driver chargé, le système d'exploitation lance l'application associé au type de périphérique. Toutes ces opérations sont réalisées automatiquement sans aucune intervention de l'utilisateur. Ce qui en fait l'intérêt du PnP mais aussi son danger puisque avant même de reprendre la main sur le processus, beaucoup de code malveillant peut être injecté dans le système. F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Le Plug and Play La marche automatique La séquence de découverte Utilisateur Matériel USB Windows Branche Détecte Ping (demande ID) Envoie ID Initialise et configure Cherche et installe le driver Lance l'application Utilise le matériel F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Les dangers F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Les dangers Les malwares Les codes malveillants (malwares) comme les virus, vers, trojans trouvent un vecteur de propagation dans les périphériques USB. Exemple : FLASHM~1.VBE un ver qui se propage par les clés USB et qui transforme les fichiers en raccourcis F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Les dangers Les malwares Les logiciels malveillants (malwares) comme les virus, vers, trojans trouvent un vecteur de propagation dans les périphériques USB. Exemple : FLASHM~1.VBE un ver qui se propage par les clés USB et qui transforme les fichiers en raccourcis F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Les dangers Le BOOT USB Pratiquement tous les matériels informatiques récents peuvent être bootés (démarrés) sur un périphérique USB, ce qui permet de faire « tourner » un OS autre que celui légitime. Utilisation d'une KALI installée sur clé USB. Cette distribution possède tous les outils pour pirater un système comme WINDOWS ou le réseau local. F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Les dangers Le BOOT USB Pratiquement tous les matériels informatiques récents peuvent être bootés (démarrés) sur un périphérique USB, ce qui permet de faire « tourner » un OS autre que celui légitime. Utilisation d'une KON-BOOT installée sur clé USB. Cette distribution permet de démarrer WINDOWS et d'ouvrir des sessions utilisateurs sans mot de passe. F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Les dangers Les HID Les périphériques HID (Human Interface Device) USB sont disponibles et supportés par défaut par les OS. Leur prise en compte est Plug And Play. Les microcontrôleurs récents possèdent une interface USB pouvant facilement utiliser le protocole HID. Les performances technologiques permettent du programmer une puce et de se faire passer pour un périphérique légitime. F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Les dangers Les keyloggers Les keyloggers enregistrent toutes les frappes au clavier. F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Les dangers Les firmwares modifiés Les clés de stockage (flash) présentent une faille pouvant être exploitée. En effet certains modèles peuvent avoir leur firmware reprogrammé. Cette possibilité permet d'ajouter un comportement malveillant à la clé. Parmi les comportements possibles, une clé peut se faire passer pour une interface réseau et rediriger le trafic vers sa mémoire, se faire passer pour un clavier et lancer des commandes automatiquement... Puce reprogrammable Mémoire F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Les dangers L'accès DMA L'accès DMA (Direct Memory Access) permet de récupérer toutes les données stockées dans la mémoire de l'ordinateur sans contrôle du système d'exploitation. Beaucoup d'informations sont présentes en mémoire et restent tant qu'elles ne sont pas remplacées par d'autres. Les « logins » et « passwords » Les « mails » Les documents « bureautiques » …. Et le tout non chiffré ni protégé La possibilité de faire passer un matériel USB pour tout type de matériel associée à un bus haute vitesse et les extensions comme l'OTG rendent possible les attaques DMA. F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Les dangers Outils d'analyse Des outils d'analyse USB accessibles « grand public » peuvent être trouvés assez facilement. Exemple : le FaceDancer permet d'analyser le protocole et le firmware d'un matériel USB en se faisant passer pour un « host ». Cette étude permet de trouver les failles potentielles. F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Les contre-mesures F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Les contre-mesures L'accès BIOS La première des protections est de limiter l'accès à la configuration du BIOS par un mot de passe. Un mot de passe peut être également défini pour la mise sous tension. F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Les contre-mesures Le BOOT USB Pour éviter le redémarrage avec un OS différent, la fonction « BOOT » pour les périphériques USB doit être désactivée F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Les contre-mesures L'accès physique Les machines ne doivent pas être accessibles physiquement aux personnes non autorisées. Toujours inspecter la machine sur laquelle on travaille pour détecter des branchements « suspects ». F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Les contre-mesures L'autorisation des périphériques USB Merci à Jérôme R. Le paramétrage du système d'exploitation peut être configuré afin d'interdire les périphériques USB, dans WINDOWS : dans HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\S ervices\UsbStor 3 : USB acceptée 4 : USB refusée F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Les contre-mesures La sélection des périphériques USB Merci à Jérôme R. Pour être plus souple, on peut définir les périphériques autorisés (liste blanche) Retirer les droits de 'usbstor.inf & usbstor.pnf en modification/écriture après avoir branché les périphériques autorisés F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Les contre-mesures Configuration du pare-feu Le pare-feu permet de fermer tous les ports (en entrée comme en sortie) qui ne sont pas nécessaires. Les applications peuvent aussi être autorisées/interdites à communiquer. F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Les contre-mesures Antivirus à jour Un antivirus à jour va permettre de bloquer l'exécution de la plupart des codes malveillants Très utile également : mise à jour du système d'exploitation F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Exemples de périphériques hack F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Exemples de périphériques hack Les clés Teensy Les clés Teensy sont de petits circuits capables de se faire passer pour un périphérique HID. Elles ont la taille et la forme d'une clé USB et sont construites avec des microcontrôleurs de structure AVR. Leur programmation est très simple. Environ 20 euros F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Exemples de périphériques hack La clé Ducky La clé Ducky réalise la même chose que les clés Teensy. Elle possède en plus une carte SD permettant l'enregistrement du programme mais aussi pouvant servir comme clé de stockage. Environ 35 euros F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Exemples de périphériques hack Le matériel numérique grand public De plus en plus de matériels numériques simples et performants sont disponibles pour le grand public. Leur mise en œuvre, hard et soft, est accessible à celui qui se débrouille un peu dans ce domaine technologique. Arduino Raspberry PI F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Exemples de périphériques hack Le matériel développé Pour les personnes possédant un peu plus de connaissances, la conception de circuits numériques à base de microcontrôleurs performants est une solution qui permet la personnalisation. F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Mise en œuvre des périphériques hack F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Mise en œuvre des périphériques hack Les clés Teensy Les clés Teensy sont programmées en langage C dans un environnement Arduino modifié. Cet environnement s'appelle teensyduino, disponible sur le site https://www.pjrc.com/teensy/index.html F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Mise en œuvre des périphériques hack Les clés Teensy La procédure d'installation est relativement simple : Sous linux : sudo cp 49-teensy.rules /etc/udev/rules.d/ Sous windows : un driver s'installe au début du processus On lance l'installateur en lui indiquant le dossier où se trouve l'IDE Arduino que l'on veut modifier. Après quelques options et copies de fichiers, Teensyduino est prêt ! F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Mise en œuvre des périphériques hack Les clés Teensy Une fois l'environnement Arduino modifié, le choix de la clé Teensy est proposé dans les menus. Il existe plusieurs versions : 2.0 ; ++2.0 ; 3.0 ; 3.1 F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Mise en œuvre des périphériques hack Les clés Teensy On choisit ensuite le type USB : F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Mise en œuvre des périphériques hack Les clés Teensy Le programme est structuré comme un programme Arduino avec une fonction « setup » et une fonction « loop » Les touches sont envoyées par le clavier émulé grâce à la fonction « Keyboard.print » Toutes les combinaisons de touches sont possibles en utilisant les fonctions spéciales « Keyboard.set_modifier » « Keyboard.set_keyN » « Keyboard.send_now » F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Mise en œuvre des périphériques hack Les clés Teensy Structure de base d'un programme Uitilisation des combinaisons de touches F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Mise en œuvre des périphériques hack La clé Ducky La clé Ducky se programme grâce à un script que l'on encode dans un langage spécifique à l'aide d'une application JAVA. Deux possibilités sont disponibles : - le site http://www.ducktoolkit.com/ propose d'encoder votre script et vous fourni le fichier binaire - un programme JAR est téléchargeable qui permet d'encoder en local L'utilisation de JAVA rend l'encodeur multiplate-forme F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Mise en œuvre des périphériques hack La clé Ducky Utilisation du site : F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Mise en œuvre des périphériques hack La clé Ducky Create Payload Étape 1 : 2 Valider 1 Choix utilisateur F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Mise en œuvre des périphériques hack La clé Ducky Create Payload étape 2 : 2 choix clavier 3 valider 1 personnalisation F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Mise en œuvre des périphériques hack La clé Ducky Create Payload étape 3 : F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Mise en œuvre des périphériques hack La clé Ducky Encoder : 2 choix clavier 3 valider 1 saisie du code F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Mise en œuvre des périphériques hack La clé Ducky Utilisation de l'encodeur local : On saisit le script dans un éditeur de texte. On l'encode après l'avoir sauvegardé. F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Démonstration d'applications F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Démonstration d'applications Démarrage sans mot de passe La distribution KON-BOOT permet, si l'ordinateur peut « booter » en USB, d'ouvrir des sessions utilisateurs sans mot de passe. F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Démonstration d'applications Le « Hello World » avec Teensy Cette application montre un exemple simple du fonctionnement. Le script ouvre NotePad et écrit « Hello World » F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Démonstration d'applications Récupération des fichiers SAM & SYSTEM Grâce aux fichiers SAM et SYSTEM du dossier config, on peut récupérer les mots de passe des utilisateurs. Le fichier SYSTEM contient la clé syskey Le fichier SAM contient les utilisateurs et les mots de passe cryptés. Les utilitaires bkhive et samdump2 permettent d'extraire la liste des utilisateur/hash à partir de ces deux fichiers. D'autres utilitaires ainsi que des sites WEB décryptent les hashs ! Code source F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Démonstration d'applications Création d'un reverse BackDoor avec Ducky par Aurélien Vicogne La clé Ducky, dans notre exemple, installe un reverse BackDoor qui permet l'ouverture d'un SHELL à distance sur une machine cible. Ce SHELL donne un accès direct au système et au matériel. Le script « Ducky » utilise les puissantes possibilités de PowerShell permettant de télécharger des fichiers et de les lancer en processus cachés. Code source F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Des questions ? F Vicogne Failles USB avec Hardware Jeumont le 22/12/2014 Merci de votre attention F Vicogne