170 likes | 386 Views
SRS Day – Conférence 17 novembre 2010. Stuxnet : un exemple d’attaque ciblée. Par: Nicolas Auclert – auclert_n Pierre Brunetti – brunet_p Guillaume Camera – camera_g Aurélien Chartier – charti_a Damien Letellier – letell_d Sandjeyaine Marday – marday_s
E N D
SRS Day – Conférence 17 novembre 2010 Stuxnet : un exemple d’attaque ciblée Par: Nicolas Auclert – auclert_n Pierre Brunetti – brunet_pGuillaume Camera – camera_g Aurélien Chartier – charti_a Damien Letellier – letell_d SandjeyaineMarday – marday_s Matthieu Martin – martin_t
Introduction • Augmentation forte du nombre d’attaques ciblées chaque année • Sujet tabou pour beaucoup d’entreprises soucieuses de leurs images de marque • Professionnalisation des attaques ciblées • Stuxnet représente la dernière incarnation médiatisée de ces attaques SRS Day @ EPITA - 17 novembre 2010
Timeline • 17 Juin 2010: VirusBlokAda détecte Stuxnetet décrit la vulnérabilité LNK. • 24 Juin 2010: Le vol des certificats de Realtek Semiconductor est découvert. • 15 Juillet 2010: Un ver utilisant la vulnérabilité est repéré « dans la nature ». L’US-CERT et l’ICS-CERT publient des recommandations. • 16 Juillet 2010: Microsoft confirme l’existence de la vulnérabilité .lnk. Apparition de « proof of concept » exploitant la vulnérabilité. • 17 Juillet 2010: Les certificats de Realtek sont révoqués. Remplacés par un certificat JMicron dans le deuxième driver. • 23 Juillet 2010: Les premiers vers grand public sont détectés. • 2 août 2010: Microsoft met à disposition le correctif de sécurité. SRS Day @ EPITA - 17 novembre 2010
Vulnérabilité Siemens (CVE-2010-2772) • Vulnérabilité dans l’authentification des logiciels WinCC et Step7 de Siemens auprès de la base de données SQL • Identifiants par défaut (WinCCAdmin/2WSXcder) présents directement dans le code source • Divulgués en 2008 et trouvables facilement sur Internet • Permet un accès à toutes les données des logiciels à partir d’un simple compte local sur la machine cible • Exemple représentatif de la prise en compte de la sécurité dans les systèmes industriels. • Aucun correctif de Siemens SRS Day @ EPITA - 17 novembre 2010
Vulnérabilité LNK (CVE-2010-2568) • Vulnérabilité dans l’ouverture des fichiers d’icones Windows (CPL) par les fichiers LNK • L’ouverture se fait via la fonction LoadLibrary qui permet de charger une bibliothèque dynamique (DLL) • Possibilité d’inclure du code malveillant dans la bibliothèque chargée par le fichier LNK • Vulnérabilité présente sur toutes les versions de Windows (Stuxnet cible de 2000 à Seven) • Correctif vérifiant le nom du fichier CPL à charger disponible depuis le 2 août 2010. SRS Day @ EPITA - 17 novembre 2010
Propagation sur le réseau • 0-day du Spooler d’impression (MS10-061) : • Nécessite un accès à une imprimante partagée • On choisit comme destination un emplacement dans le système de fichier au lieu d’un port de l’imprimante • Windows ne fait pas de vérification de privilège au moment de l’écriture • Stuxnet écrit deux fichiers, le premier permettant l’exécution du deuxième qui infecte le système • Reprise des mécanismes de Conficker : • Network File System : Bruteforce des mots de passe (avec 250 mots de passe courants) sur le réseau pour y déposer des fichiers en charge de l’infection • RPC : Exploitation d’une faille dans la requête NetPathCanonicalize qui permet d’exécuter un shellcode qui se connecte au poste attaquant et télécharge la DLL de Stuxnet SRS Day @ EPITA –17 novembre 2010
Vulnérabilité Win32k.sys • Le dispatcher des entrées claviers est modifiable par l’utilisateur dans Windows • Le service en charge du dispatch possédait une faille : en spécifiant un index trop grand dans la table de dispatch, on pouvait faire exécuter du code arbitraire à l’adresse 0x60636261 Vulnérabilité du TaskScheduler • Possibilité de modifier des champs XML, ce qui permet de contourner la protection CRC32 et d’exécuter du code arbitraire • Peu d’informations car pas encore corrigée Résultats de ces vulnérabilités : possibilité d’exécuter du code arbitraire avec les privilèges SYSTEM SRS Day @ EPITA - 17 novembre 2010
Fonctionnalités de Stuxnet :Module principal (1/2) • Bibliothèque dynamique (DLL) packée avec UPX, 1.20 Mo • Installation: • Drivers en kernel-mode, bibliothèque principale, configuration du ver dans le registre, fichiers de tracing • Injection de la bibliothèque principale dans services.exe et démarrage du serveur RPC • Injection dans d’autres processus et modification de kernel32.dll et ole32.dll SRS Day @ EPITA - 17 novembre 2010
Fonctionnalités de Stuxnet :Module principal (2/2) • Injection: • Processus existant : allocation d’un buffer dans le processus, placement du code, modification de ntdll.dll (fonctions utilisées pour charger les drivers) pour rediriger vers le code injecté • Nouveau processus : Lancement d’un processus existant (lsass.exe, mcshield.exe,…) puis remplacement de l’image de ce dernier par le code du ver • Serveur RPC: • Communication avec les autres instances du ver sur le réseau • Mises à jour depuis internet ou les autres instances du ver • Fonctions d’exécution de processus, de suppression de fichiers, d’informations sur le système infecté • Deux modules : • Local pour communication avec les processus locaux • Distant pour communication avec les autres vers SRS Day @ EPITA - 17 novembre 2010
Fonctionnalités de Stuxnet :Modules complémentaires • Fonctionnalités de rootkit : drivers en kernel-mode signés numériquement par Realtek et Jmicron • MRXCLS.sys : • Injection de code dans l’espace d’adressage de processus systèmes • Pas d’injection en mode debug • Injection de modules Stuxnet, de code supplémentaire et modification du point d’entrée du processus • MRXNET.sys : • Masque les fichiers utiles à la propagation du ver (.lnk de 1471 octets et ~WTRXXXX.tmp) • Surveille et filtre les systèmes de fichiers NTFS,FAT et CDFS SRS Day @ EPITA - 17 novembre 2010
Fonctionnalités de Stuxnet :Configuration et communication • Vérification de la connexion : www.windowsupdate.com, www.msn.com • Serveurs de configuration : www.mypremierfutbol.com, www.todaysfutbol.com • Algorithme de chiffrement personnalisé • Informations communiquées : interfaces réseau, système d’exploitation, version du ver, version des logiciels Siemens … • Réponse du serveur : image exécutable d’une DLL, exécutée par RPC ou injection dans un processus SRS Day @ EPITA - 17 novembre 2010
Impacts de Stuxnet :Les cibles présumées • Ver conçu dans le but de soutirer des informations aux entreprises utilisant les systèmes SCADA (Siemens WinCC) • SCADA : Supervisory Control and Data Acquisition, utilisé dans les systèmes de gestion d’eau, d’électricité, de signalisation... Et dans les centrales nucléaires • Systèmes responsables du transit d’informations très sensibles : criticitéélevée • Démonstration de force par les auteurs du ver, développement de l’espionnage industriel SRS Day @ EPITA - 17 novembre 2010
Impacts de Stuxnet :Le nucléaire Iranien • De nombreux pays touchés mais d’importants soupçons sur le programme nucléaire iranien. • Interception d’une cargaison de contrôleurs Simatic S7 en partance pour l’Iran • de 23% des centrifugeuses utilisées pour enrichir l’uranium à l’usine de Natanz durant l’été • Possible implications des services de renseignements Israëliens ou Americains (Cyber Command) • Constat des faits, mais rien ne prouve concrètement que l’activité nucléaire iranienne était la cible. SRS Day @ EPITA - 17 novembre 2010
Impacts de Stuxnet :La signature numérique • Stuxnet utilise son propre pilote de périphérique mais signé numériquement par le constructeur Realtek • Plusieurs possibilitées : vol de clé privée, complicité ou brute-force • Principe de précaution à prendre dans leur politique de sécurité • Cible industrielle encore inconnue SRS Day @ EPITA - 17 novembre 2010
Ouverture : L’Intelligence Economique • Définie par le rapport Marte en 1994 • Trois axes principaux : la veille (l’acquisition et la surveillance des informations, le point le plus citrique), la protection des informations et l’influence • L’IE n’est pas de l’espionnage industriel, la principale contrainte étant la légalité • Trois types d’informations : information blanche accessible à tous (80%), information grise accessible via canaux spécialisés (15%) et information noire (5%) • L’information grise est considérée comme suffisante pour obtenir une image globale de la cible • L’information noire nécessite de recourir à d’autres méthodes : social engineering, attaques ciblées … SRS Day @ EPITA - 17 novembre 2010
Ouverture : Les attaques ciblées • Cybercrime s’attaquant à une entité précise, diminution de la propagation et des chances de détection • La plus courante, l’attaque par déni de service distribuée (DDOS) : extrêmement facile à mettre en place, difficile à retracer et impossible à prévenir • 80% des entreprises française interrogées par McAffee reconnaissent en avoir subies durant l’année écoulée, 10% plusieurs fois par jour • L’attaque externe : scan des ports, empoisonnement du DNS … • L’attaque interne : failles de sécurité exploitables, d’où l’importance de la découverte des failles 0-day SRS Day @ EPITA - 17 novembre 2010
Conclusion : Une nouvelle ère • Ces attaques sont notre quotidien, que ce soit Stuxnet ou Google mi-Décembre • 1 faille 0-day d’Adobe Reader, 34 sociétés ciblées, des boîtes gmail d’activistes chinois visées • Stuxnet annonce une nouvelle ère : • Impact maitrisé pour le moment • Préparation longue et minutieuse • Plusieurs acteurs et langages de programmation • Le ver utilise 4 failles 0-day SRS Day @ EPITA - 17 novembre 2010