FLASH INFORMATIQUE FI



public averti Anatomie d’une attaque, de GhostNet à Aurora


Internet, un monde parfait  ? Quand la réalité rejoint la fiction. Un conflit cybernétique entre la Chine et Google.



Internet a perfect World ? When the reality meet fiction. A cyber war between China and Google.


Laurent KLING


Aurora : Google, Citing Attack, Threatens to Exit China

Le mardi 13 janvier 2010, je lisais les dernières nouvelles issues de flux RSS sur mon iPhone. L’accroche d’un article du New York Times éveilla immédiatement mon attention.
Tout en veillant à ne pas rater la correspondance avec le métro M1, je parcours l’article et saute sur le lien qui me conduit au communiqué de presse de Google. Celui-ci est particulièrement intéressant par le lieu, l’auteur, son contenu et ses conséquences.

Le lieu ou un blog

Le communiqué de presse est souvent l’émanation officielle des entreprises, par exemple, le dernier-né d’Apple, l’iPad a été sobrement présenté sur le site suisse d’Apple jusqu’au dimanche 31 janvier 2010.
Par un atavisme issu du réseau de télégraphes et de l’emploi du code morse, les communiqués sont souvent austères et concis. Google utilise pour ses avis une version plus moderne, un blog officiel.
Probablement que chacun de nous a consulté un blog (contraction de Web Log). Certaines de ses caractéristiques sont intéressantes :

  • il fédère l’information sur un sujet dans l’ordre ante chronologique, la nouveauté en premier ;
  • par nature, son espace-temps n’est pas fini, il est toujours en mouvement ;
  • et comme il utilise le Web, il intègre naturellement la notion de liens hypertextes et de tags, il s’insère dans l’espace d’Internet plutôt que d’être une feuille morte.

L’auteur : David C. Drummond

Le rédacteur de ce papierest le responsable juridique de Google, vice-président de la compagnie, ce qui donne du poids au message.

Son contenu : Aurora, une attaque cybernétique

En général, la sécurité en informatique est envisagée sous un aspect défensif, on se barricade derrière nos pare-feu on se protège par des systèmes d’exploitation mis à jour régulièrement et finalement on fait confiance à notre bon sens pour éviter de mettre en péril notre infrastructure où nos données sont ô combien précieuses :  googleblog.blogspot.com/2010/01/new-approach-to-china.html.
Dans ce contexte, il est rare d’observer qu’une entreprise :

  • annonce qu’elle a été victime de tentative de piratage, logiquement couronné de succès ;
  • puis informe que l’attaque n’était pas uniquement dirigée contre elle, mais concerne des entreprises variées (de la finance à Internet en passant par la chimie) ;
  • désigne comme première cible les défenseurs des droits humains en Chine et au Tibet ;
  • et pointe du doigt les auteurs en Chine (mais pas le gouvernement chinois J) en précisant des similarités avec GhostNet. En conséquence de cette attaque, Google prend des mesures particulièrement inattendues pour une entreprise commerciale :
  • à brèves échéances, lever la censure de son site chinois de recherche (google.cn) ;
  • la menace de fermer ce site et potentiellement ses bureaux en Chine si aucune nouvelle forme de collaboration n’est possible.

Une décision de cette ampleur doit provenir d’une menace importante avec un objectif particulièrement grave.
Certains analystes émettent l’hypothèse de cette réaction par une pénétration relativement faible pour le moteur de recherche de Google (30 %) en Chine, mais cela semble peu crédible si l’on tient compte des efforts de Microsoft avec Bing pour récupérer une parcelle du marché mondial de la recherche (actuellement 11 % aux USA, 2 % en Europe).

GhostNet, une attaque contre le Dalaï-Lama

Le 29 mars 2009, un centre de recherche interdisciplinaire de l’université de Toronto dévoile l’analyse d’une attaque contre le Dalaï-Lama.
Il est naturellement instructif de consulter le fichier décrivant cette attaque.
Une autre source d’information est le rapport technique rédigé par deux des investigateurs issus de l’université de Cambridge.
Dans ce cas, il est intéressant de suivre le parcours de l’infection :

  • un message apparemment licite avec un fichier Word attaché, celui-ci contient une charge virale exploitant un trou de sécurité (le document peut être d’un autre type, par exemple un trou de sécurité dans Excel, PowerPoint, Microsoft Access, WinRAR ou un PDF),
  • une autre variante utilise un lien sur un site Web contenant un PDF, dans ce cas le PDF est inoffensif et légitime, mais par contre le site Web exploite un trou de sécurité de votre navigateur !
  • une fois exécuté, la charge virale offre un contrôle complet de l’ordinateur, presque en temps réel si celui-ci est connecté sur un réseau avec un débit suffisant (la majorité des accès Internet disponibles en Suisse propose une vitesse élevée).

Dans la logique de l’assiégé, on pourrait espérer que nos protections sont convenables pour ne pas laisser entrer l’intrus, mais malheureusement celui-ci n’est pas identifié, car sa signature est inconnue (les symptômes de l’infection ne sont pas reconnus comme tels).
Voici les résultats de la détection de ce virus à l’époque de l’attaque pour le cheval de Troie

AntiVir 7.6.0.73/20080310 found [HEUR/Malware]
F-Secure 6.70.13260.0/20080310 found [Suspicious:W32/Malware!Gemini]
Prevx1 V2/20080310 found [Heuristic: Suspicious Self Modifying File]
Webwasher-Gateway 6.6.2/20080310 found [Heuristic.Malware]
AhnLab-V3 2008.3.4.0/20080310 found nothing
Authentium 4.93.8/20080307 found nothing
Avast 4.7.1098.0/20080309 found nothing
AVG 7.5.0.516/20080310 found nothing
BitDefender 7.2/20080310 found nothing
CAT-QuickHeal 9.50/20080308 found nothing
ClamAV None/20080310 found nothing
DrWeb 4.44.0.09170/20080310 found nothing
eSafe 7.0.15.0/20080309 found nothing
eTrust-Vet 31.3.5597/20080307 found nothing
Ewido 4.0/20080310 found nothing
F-Prot 4.4.2.54/20080309 found nothing
FileAdvisor 1/20080310 found nothing
Fortinet 3.14.0.0/20080310 found nothing
Ikarus T3.1.1.20/20080310 found nothing
Kaspersky 7.0.0.125/20080310 found nothing
McAfee 5247/20080307 found nothing
Microsoft 1.3301/20080310 found nothing
NOD32v2 2935/20080310 found nothing
Norman 5.80.02/20080307 found nothing
Panda 9.0.0.4/20080309 found nothing
Rising 20.35.02.00/20080310 found nothing
Sophos 4.27.0/20080310 found [Mal/Behav-116]
Sunbelt 3.0.930.0/20080305 found nothing
Symantec 10/20080310 found nothing
TheHacker 6.2.92.239/20080309 found nothing
VBA32 3.12.6.2/20080305 found nothing
VirusBuster 4.3.26:9/20080309 found nothing

Le contrôle de l’ordinateur ne se limitait pas à l’interception des contenus électroniques classiques comme la messagerie ou les documents Word, mais également des ressources directement disponibles sur de nombreux portables comme la voix (avec le micro) ou même la vidéo (à travers la Webcam).
Au final, c’est un réseau de 1295 ordinateurs dans 103 pays comportant 30 % de cibles très intéressantes comme les ministères d’affaires étrangères ou les ambassades qui fut ainsi infecté.

Google, une attaque similaire ?

Naturellement, il est possible que l’assaut contre Google et 33 autres entreprises en décembre 2009 ait utilisé la Chine comme paravent. N’oublions pas l’incident du golfe du Tonkin qui a été utilisé pour l’escalade de la guerre du Vietnam.
Cependant, ces éléments sont avérés :

  • le lien sur l’analyse de Ghostnet dans le communiqué de Google,
  • la publication d’une faille majeure d’Internet Explorer.

Les différents moyens d’infection

Probablement que chacun d’entre nous a déjà été confronté à une machine piratée, en particulier sur la plate-forme la plus répandue, Microsoft.
Quelle stratégie le virus emploie-t-il ?

  • s’introduire dans la cellule,
  • se reproduire,
  • infester d’autres cellules, pardon d’autres ordinateurs.

Il est probable que votre ordinateur possède un antivirus et comme dans notre corps, celui-ci ne réagit qu’à des protéines particulières, des fragments de code spécifique, identifiables par leur signature.
Si l’organisme ne connaît pas les signatures, il n’est pas immunisé ! Maintenant, imaginons une agression plus intelligente, elle utilise le même mécanisme d’attaque, mais elle est capable de rester dans un état dormant, le virus est présent, mais il n’est pas détectable. Le corps peut avoir la sensation d’être guéri, mais ce n’est qu’une illusion.
En général, les virus informatiques sont du premier type, ils sont facilement reconnaissables, votre portable emploie toutes les ressources disponibles, votre ordinateur a la fièvre au sens propre (le bruit de la ventilation est un symptôme). Si cela se produit 5 minutes après son démarrage, sans lancer un programme, vous êtes probablement infecté  !
Avec un virus du second type, il vous infecte, mais reste dans un état latent. Naïvement, vous avez bien observé un comportement étrange, comme le lancement d’une fenêtre Web qui s’est planté, mais vous pensez que c’est juste une erreur. En fait, votre ordinateur possède à présent une porte dérobée (cheval de Troie) dont seul l’attaquant détient la clé. Dans ce cas, l’attaque se métamorphose en parasite qui va se nourrir de la substance de son hôte, ses informations.

La faille majeure d’Internet Explorer (août 2009)

Niklaus Wirth, un des pères de la programmation structurée a écrit en 1975 un livre de référence : Algorithms + Data Structures = Programs.
Dans la pratique, un informaticien est souvent confronté à un autre phénomène : GIGO = Garbage In, Garbage Out (détritus en entrée, détritus en sortie). En effet, si les données à traiter ne correspondent pas aux spécifications initiales, il est certain que le résultat d’un traitement informatique sera étrange.
Malgré le fait que l’origine de cette expression soit antédiluvienne (en 1956 avec un des premiers ordinateurs commerciaux d’IBM), elle reste toujours d’actualité, en particulier sous l’aspect sécuritaire. La majorité des attaques utilisent deux erreurs de programmation :

  • dépassement de capacité (ou Buffer overflow),
  • pointeur errant (ou Dangling Pointer).

En informatique, le pointeur est une brique élémentaire :

  • la mémoire de l’ordinateur est composée de cellules contiguës,
  • chaque cellule peut contenir des données ou des instructions,
  • un pointeur = conserver l’adresse de la donnée.

Quasiment toutes les structures de données dans un programme utilisent des pointeurs.

JPEG - 5.5 ko
gestion mémoire

Dans le dépassement de capacité, l’attaquant utilise une technique simple, il va simplement écrire dans un espace de données des instructions, puis obliger le programme à exécuter celle-ci.
Avec les processeurs modernes (MX bit avec Intel), il est possible d’activer un drapeau pour les zones contenant de la mémoire, toute tentative d’exécution de code dans une zone réservée pour les données entraine l’arrêt du programme incriminé (plus précisément une interruption logicielle).

JPEG - 6.9 ko
dépassement de capacité

Dans un pointeur errant, c’est une autre erreur qui est exploitée. Avec un système d’exploitation moderne, le programmeur ne gère pas directement la réservation d’espace mémoire, il utilise des appels systèmes (API) qui réservent celle-ci selon des critères d’efficacité. Quand vous avez fini d’occuper la mémoire, vous devez naturellement libérer cet espace.
C’est une situation simple, imaginons une allocation à deux niveaux :

  1. j’alloue un espace mémoire de 10 cellules
  2. chacune de ces cellules composant 1 est utilisée comme un pointeur
  3. j’alloue pour chaque pointeur un espace mémoire de 5 cellules.

Finalement, j’aurais un espace mémoire composé de 50 cellules utiles avec 10 cellules de gestion (les utilisateurs d’Excel imaginent déjà leurs feuilles de calcul).
Si j’ai bien fait mon travail, à la fin de mon programme je devrais :

  1. supprimer chacune de 10 zones de 5 cellules,
  2. supprimer la zone de 10 cellules initiales.

Malheureusement, certains programmeurs suppriment uniquement l’espace 1, ce qui signifie que j’ai 10 x 5 cellules mémoires disponibles.

JPEG - 8.2 ko
pointeur errant

Pour le cas qui nous intéresse, cette faille était due à un pointeur errant existant dans l’ensemble des versions d’IE (6, 7 et 8), seule la version 5 d’IE n’était pas affectée.
Le comble est que cette faille était connue depuis le 26 août 2009 : www.bugsec.com/index.php ?q=node/47.
La parade est triple :

  • mettre à jour Internet Explorer en version 8,
  • activer la protection de mémoire pour tous les processus,
  • et finalement, colmatez la brèche.

Identifier l’agresseur

Dans GhostNet, le dénouement est la partie la plus savoureuse, découvrir l’origine de l’attaque. La lecture des 2 rapports précités est digne d’un roman d’espionnage, on suit les cheminements techniques qui ont permis de remonter à la source de l’infection. Suspectant une compromission des ordinateurs, Wireshark un logiciel open source  de capture de paquet, a été utilisé et celui-ci a permis de remonter les flux d’informations et de finalement atteindre l’objectif, les postes de contrôle. Ceux-ci étaient géo localisés dans l’île de Hainan , qui possède une base stratégique de sous-marins nucléaires.

Internet, un réseau probabiliste, une géo localisation de facto

Internet utilise comme infrastructure TCP-IP (Transport Control Protocol - Internet Protocol).
Dans ce modèle, les paquets d’information peuvent suivre plusieurs chemins (par l’intermédiaire des routeurs). Cependant, une fois le chemin établi, il est probable que les informations suivent le même trajet.
En énumérant les délais de latence de chaque équipement réseau et par regroupement avec la position géographique de ceux-ci, on peut définir l’origine géographique d’une connexion. Les sceptiques sur la qualité de ce type d’analyse devraient regarder avec plus d’attention les résultats de  Google Analytics !

Un brevet du NSA (National Security Agency)

Dans la culture moderne, le dépôt de brevet est le signe extérieur d’une avancée. Dans le même principe, comment protéger une invention secrète ?
La méthode américaine peut surprendre, les services secrets déposent également des brevets, il ne devient visible pour le grand public ou une entreprise que quand un autre dépôt pourrait l’invalider.
C’est probablement ce mécanisme qui a conduit à l’apparition du brevet américain 6,947,978 déposé le 29 décembre 2000 par le directeur du NSA : Method for Geolocating Logical Network Adresses.

Les remèdes à la faille

Mise à jour obligatoire, abandonnez IE 6

Au premier degré, un usager de Firefox 3.5.7 sous Windows XP SP3 pourrait ne pas se sentir concerné par ce problème, car il n’emploie pas IE 6.
C’est méconnaitre le fait que l’ensemble des opérations de manipulation de fichier avec Windows XP SP 3 et Internet Explorer 6 utilisent le même moteur, celui d’Internet Explorer.

JPEG - 8.3 ko
Un exemple, sur le NAS de la faculté STI au site web de la même faculté !

Ce défaut conceptuel est la conséquence du choix technique d’intégrer dans le noyau de l’OS le cœur du butineur. C’est particulièrement stupide, car la moindre faille dans le navigateur se propage automatiquement dans le noyau. Les différends juridiques entre la Communauté européenne et Microsoft nous ont fourni un résultat tangible, la fin de cette dépendance depuis Internet Explorer 7.
Un autre élément qui est récemment apparu est l’abandon par Google de la compatibilité pour les applications web avec Internet Explorer 6 à partir du 1er mars 2010
Un effet collatéral de la fin d’Internet Explorer 6 est de rendre heureux tous les développeurs Web qui devaient régulièrement ajouter des trucs et astuces (hacks) à l’intérieur de leurs codes CSS 2 et HTML pour contourner les limitations propres à IE 6.
Malheureusement, cette joie est de courte durée, car Internet Explorer 8 a inventé la compatibilité arrière inversée  !
Dans un effort d’apaisement devant les hordes d’utilisateurs mécontents, en particulier les internautes d’autres navigateurs comme Firefox, Safari ou Google Chrome, Microsoft a fait un pas en avant révolutionnaire, respecter les standards Web  !
L’abandon soudain de ses propres incohérences a généré un fâcheux effet de bord, rendre innommable les designs réalisés par les aficionados (les sites web qui affichent optimisé pour Internet Explorer).
Devant ce dilemme insurmontable, Microsoft a choisi une solution digne d’un aphorisme zen :

  • Mode compatible avec mise à jour
    Traduction : mode incompatible avec les standards Web, mais compatible avec le principe utilisé auparavant, sous-entendu quand nous croyions être seuls au monde.
  • Mode standard
    Traduction : mode compatible avec les standards Web.
JPEG - 4.9 ko

Prochaine mise à jour obligatoire, Windows XP SP3

Chez Microsoft, sauf incident du type Vista, la durée de vie du support d’une version antérieure est de 24 mois. Cela signifie que Windows XP SP2 ne sera plus supporté à partir du 13 juillet 2010. Dès la fin du support, les rustines et corrections ne seront plus disponibles ! En conséquence, il faut se préparer à cette échéance, car l’application d’une mise à jour majeure comme un service pack entraîne parfois des conséquences fâcheuses, en particulier dans les appareils de mesures qui utilisent une version de Windows XP SP2.
Actuellement, uniquement dans le Domaine Active Directory de la faculté STI :

  • 724 ordinateurs déjà à jour,
  • 493 ordinateurs avec Windows XP SP 2.

Pour ceux dont les bancs de mesures ou autre équipement scientifique ne supportent pas cette mise à jour, il faut envisager la solution de les isoler du monde extérieur :

  • déconnecter le câble réseau, ou,
  • pour ceux qui doivent échanger des données avec les usagers, créer un réseau séparé avec un ordinateur qui fait office de pare-feu et de partage de fichier accessible aux deux mondes.

Activer DEP   sur son PC Windows XP SP2

Pour se prémunir contre les attaques par usurpation de mémoire, je recommande d’activer DEP.
En premier, il faut vérifier que la protection de dépassement par matériel existe dans votre ordinateur, je vous propose de suivre la procédure décrite dans la base de connaissance de Microsoft. Ensuite je recommande d’activer DEP pour tous les programmes.
Il est possible que ce réglage provoque l’arrêt de certains programmes, éradiquez-les, car même des logiciels licites ne devraient pas utiliser des techniques de programmation d’un autre âge.

Conclusion, que faire, qui croire ?

Envisager un internet encrypté

Google a décidé d’augmenter la sécurité des échanges avec Gmail. Depuis le 12 janvier 2010, le jour précédant l’annonce de l’agression, tous vos échanges utilisent par défaut un protocole sécurisé (HTTPS) pour l’ensemble de la session.
Peut-être faut-il remettre au goût du jour le principe d’une messagerie encryptée, car actuellement vos e-mails transitent sur Internet comme des cartes postales, le contenu est lisible par toute personne ou gouvernement pouvant accéder à l’infrastructure technique.

Que faire ?

En premier, il faut que votre ordinateur soit dans un état stable, il est impératif de le maintenir à jour, en particulier compte tenu des failles régulièrement découvertes. En deuxième, se comporter rationnellement :

  • ne faire confiance qu’à une source connue, bien que ce principe peut être facilement battu en brèche si votre interlocuteur de confiance est lui-même infecté,
  • se promener sur le Web uniquement dans un environnement isolé.

Les ordinateurs actuels possèdent des capacités élevées, il est facile de créer une machine virtuelle pour surfer sur le Web, elle peut être facilement restaurée dans un état antérieur.
En troisième, avoir une infrastructure à jour. Tous les efforts sont ruinés si un composant de l’infrastructure est lui-même corrompu. Imaginer les conséquences si c’est votre serveur Web qui est corrompu.
Finalement, la sécurité, un enjeu global. C’est l’ensemble de la chaîne qui doit être sécurisé, c’est un effort collectif. Par exemple, pourquoi disposer d’un portable avec un disque encrypté si vous introduisez un cheval de Troie par vos habitudes de navigation sur le Web ?

Qui croire ?

Naturellement, on peut envisager que l’attaque contre Google n’ait pas eu lieu, que la faille dans Internet Explorer 6, 7 et 8 n’existât pas, que les serveurs de contrôle ne fussent pas à Taiwan et que les pirates ne fussent pas en Chine. Si vous êtes adeptes des théories de complots, c’est peut-être votre opinion.
Pour ma part, les éléments disponibles m’indiquent que cette attaque a eu lieu, les similitudes avec l’attaque contre le Dalaï-Lama sont grandes, et je suis certain que les ingénieurs de Google possèdent des compétences techniques qu’il est rare de voir réunies dans une seule entreprise.
Cette attaque avait probablement plusieurs objectifs :

  • atteindre les défenseurs des droits humains en Chine,
  • accéder aux réseaux internes d’entreprises actives dans des domaines stratégiques,
  • accéder aux dépôts des codes sources de nombreux logiciels et peut-être les altérer pour déposer à l’intérieur des chevaux de Troie.

Le dernier point fait frémir, mais nous ramène par un curieux détour aux prémices de l’informatique, le codage des messages secrets des nazis avec Enigma  et leurs décodages par Alan Turing et l’équipe de Bletchley Park.



Glossaire

DEP (Data Execution Protection)
dispositif de sécurité intégré à certaines versions du système d’exploitation Microsoft Windows
Hainan
île : de la superficie de la Belgique, avec huit millions d’habitants cette île est située au sud de la Chine. Zone économique spéciale, elle abrite la base des sous-marins atomiques et le 4e pas de tir spatial chinois.
open source
logiciel dont la base est publique et réutilisable, bénéficie des droits d’auteurs.
Google Analytics
service Web de la société Urchin, racheté par Google et rendu gratuit, permettant d’analyser finement la fréquentation d’un site web. Voir l’article Analyse et tendances avec Google – FI8/06.
Enigma
machine de chiffrement de message stratégique utilisé massivement par les nazis pendant la 2e Guerre Mondiale. Le cassage du modèle à trois rotors, puis à quatre rotors permit un avantage stratégique majeur à partir de 1942. Le rôle d’Alan Turing ne fut connu qu’à partir de 1975 avec la déclassification des documents top secret. Voir l’article Hacker, hacker, est-ce que j’ai une gueule de hacker  ? FI SP/00.


Cherchez ...

- dans tous les Flash informatique
(entre 1986 et 2001: seulement sur les titres et auteurs)
- par mot-clé

Avertissement

Cette page est un article d'une publication de l'EPFL.
Le contenu et certains liens ne sont peut-être plus d'actualité.

Responsabilité

Les articles n'engagent que leurs auteurs, sauf ceux qui concernent de façon évidente des prestations officielles (sous la responsabilité du DIT ou d'autres entités). Toute reproduction, même partielle, n'est autorisée qu'avec l'accord de la rédaction et des auteurs.


Archives sur clé USB

Le Flash informatique ne paraîtra plus. Le dernier numéro est daté de décembre 2013.

Taguage des articles

Depuis 2010, pour aider le lecteur, les articles sont taggués:
  •   tout public
    que vous soyiez utilisateur occasionnel du PC familial, ou bien simplement propriétaire d'un iPhone, lisez l'article marqué tout public, vous y apprendrez plein de choses qui vous permettront de mieux appréhender ces technologies qui envahissent votre quotidien
  •   public averti
    l'article parle de concepts techniques, mais à la portée de toute personne intéressée par les dessous des nouvelles technologies
  •   expert
    le sujet abordé n'intéresse que peu de lecteurs, mais ceux-là seront ravis d'approfondir un thème, d'en savoir plus sur un nouveau langage.