Associer un vol de données ou un cybersabotage à un certain groupe de hackers est loin d’être simple. Pour parvenir à attribuer une attaque, les chercheurs en sécurité utilisent des techniques d’enquête particulièrement sophistiquées.
APT28, PutterPanda, Lazarus, Equation, Shamoon, Animal Farm… Pas une semaine ne passe sans qu’une attaque informatique d’envergure ne soit révélée au grand jour et attribuée à des acteurs plus ou moins identifiés. Il arrive même que des pirates soient nommément pointés du doigt. C’est arrivé de manière spectaculaire en 2014, lorsque le gouvernement américain a inculpé cinq officiers de l’armée chinoise pour piratage et espionnage informatique. Plus récemment, il a inculpé deux hackers du ministère chinois de la Sécurité d’Etat, noms et photos à l’appui. Mais comment les experts arrivent-ils à réaliser cette attribution ? Et quelle confiance faut-il avoir dans ce type d’analyse, dans la mesure où les données informatiques sont toujours susceptibles d’être modifiées ?
Quand on discute avec les chercheurs en sécurité ou que l’on lit leurs analyses, il apparaît que l’attribution est loin d’être une science exacte et qu’il n’existe pas non plus de méthode miracle pour retrouver les traces des pirates. C’est un processus long et fastidieux dans lequel il faut rassembler un maximum d’indices techniques permettant, le cas échéant, de formuler une hypothèse valable sur l’origine d’une attaque. Ces indices proviennent d’une multitude de domaines différents, c’est pourquoi il faut pouvoir s’appuyer « sur une équipe aux compétences multiples, comme le reverse engineering, l’analyse d’infrastructures, l’analyse géopolitique et l’investigation inforensique », explique Timo Steffens dans un livre dédié à l’attribution des attaques informatiques. Cet expert en intelligence artificielle est actuellement directeur adjoint du Cert-Bund, le centre d’alerte et de réaction aux attaques informatiques du gouvernement allemand.
Le code binaire, première source d’information
La première source d’information est le malware utilisé pendant l’attaque. Quand un exemplaire a pu être récupéré sur une machine, celui-ci va être ausculté par les ingénieurs spécialisés en rétro-ingénierie. Généralement, l’attaquant aura procédé à une obfuscation du code binaire qui a deux buts : rester sous le radar des antivirus et rendre le logiciel difficile à analyser. Cette obfuscation est généralement faite à l’aide d’un « packer », un logiciel qui va compresser le code binaire et le rendre illisible. Une fois déposé sur la machine cible, ce code binaire est remis d’équerre grâce à un module de décompression intégré. « Certains groupes de pirates créent leur propre packer et vont le réutiliser à plusieurs occasions. C’est aussi grâce à cela que l’on peut les reconnaître », souligne Alexis Dorais-Joncas, chef d’équipe renseignement sécurité chez Eset.
Une fois le code binaire récupéré, l’ingénieur peut enfin découvrir la mécanique interne du logiciel : sa manière d’infecter les ordinateurs, les fonctions qu’il exécute, les modules qui sont intégrés, le chiffrement des données, les serveurs externes contactés, etc. Il pourra alors savoir s’il s’agit d’une backdoor, d’un logiciel de prise de contrôle à distance (Remote Access Tool) ou d’un simple « dropper » qui va télécharger un autre malware. Analysé et décortiqué, ce code binaire sera comparé aux codes de malwares déjà connus. Chaque recoupement est un indice supplémentaire pour une attribution.
Souvent, le code binaire contient également des métadonnées générées par les compilateurs et les frameworks de développement. Ce qui permet de connaître le langage de développement et, surtout, la date de compilation. Cela est surtout bénéfique si les analystes disposent d’un grand nombre d’exemplaires du même malware. « Avec de simples méthodes statistiques, il est alors possible d’identifier les habitudes de vie des auteurs. Quels sont leurs horaires de travail? A quels jours de la semaine produisent-ils leurs codes binaires ? », explique Timo Steffens. Cette analyse permet alors d’identifier le fuseau horaire dans lequel travaille les pirates, voire même la zone culturelle. Une semaine de travail qui commence le samedi et se termine le jeudi peut, par exemple, être un indice pour une origine iranienne.
Evidemment, les dates de compilation peuvent être volontairement faussées, c’est pourquoi elles doivent toujours être corroborées par d’autres indices. « Dans la plupart des cas connus, les habitudes de vie ont pu être validés par d’autres indices. On peut donc en déduire qu’il n’y a que peu de groupes qui manipulent de manière systématique les dates de compilation », souligne Timo Steffens.
Les données télémétriques sont le nerf de la guerre
L’analyse de malware peut être complétée par une analyse inforensique de l’environnement attaqué. C’est le cas quand une entreprise victime fait appel à des experts pour « nettoyer » son infrastructure. Ces limiers de l’informatique vont analyser les logs des applications et du trafic réseau pour identifier le « patient zéro » (la première machine infectée) et les différentes étapes de l’attaque. A cette occasion, ces experts vont récupérer tout un tas d’indicateurs dits « de compromission » (IOC) : un nom de fichier déposé, une adresse IP contactée, un numéro de port utilisé, une certaine application lancée, une manière de voler les mots de passe, etc. Ces indicateurs vont mettre en lumière les outils et la manière de procéder des attaquants (Tools, Techniques and Procedures, TTP). Ces éléments permettront de définir un « set d’intrusion » qui formera d’une certaine manière la signature de l’attaque. « Une clé de chiffrement que l’on trouve dans le code ou sur l’infrastructure de l’attaquant est par exemple un très bon indicateur, car elle est censée rester secrète et ne pas être partagée avec d’autres groupes », souligne Alexis Dorais-Joncas.
L’avantage, c’est que les fournisseurs de solutions de sécurité vont pouvoir utiliser ces indicateurs pour détecter d’autres attaques similaires. Comment ? Grâce aux données télémétriques qu’ils récupèrent de leurs clients et/ou de leurs partenaires. En effet, les éditeurs d’antivirus et de détection d’intrusion récoltent en permanence des alertes et des données d’utilisation qui sont stockées dans leurs bases de données. Les IOC vont permettre de filtrer cette masse d’informations. « D’une certaine manière, cette recherche nous permet de faire un voyage dans le temps et dans l’espace. Elle nous permet de savoir quelles régions ont été ciblées et depuis combien d’années. La télémétrie, c’est vraiment le nerf de la guerre », poursuit Alexis Dorais-Joncas. Ces données télémétriques sont d’autant plus intéressantes qu’elles sont difficilement falsifiables. Certes, un attaquant pourra toujours essayer d’effacer ou de modifier après coup les logs d’une machine qu’il a infectée. Mais si les logs sont instantanément copiés et sauvegardés sur des serveurs tiers – comme cela est généralement conseillé – cela ne lui servira à rien. D’où l’intérêt d’avoir une bonne gestion des logs.
Une terminologie parfois déroutante
Une fois que l’on arrive à ce stade, les analystes arrivent généralement à associer une attaque à l’un des acteurs déjà identifiés auparavant ou, à l’inverse, à définir un nouvel acteur. C’est là qu’apparaissent alors ces noms exotiques comme Equation Group, DarkHotel, PutterPanda, etc. Chaque société de sécurité dispose de sa propre nomenclature. Le groupe de hackers que FireEye a baptisé « APT28 » est appelé « Sednit » par Eset et « Fancy Bear » par CrowdStrike. D’autres noms circulent comme Pawn Storm, Strontium ou Sofacy.
Pour s’y retrouver, il faut se doter d’une espèce table de traduction, sachant que cette transposition ne fonctionne pas à 100 %. « Les sociétés de sécurité analysent quotidiennement des logiciels malveillants et des attaques auprès de leurs clients, ce qui leur permet de mettre à jour les sets d’intrusion. Comme ils ont tous des clients différents, leurs capteurs détectent des attaques différentes. Ce qui crée forcément des différences dans la définition des sets d’intrusion et des groupes », explique Timo Steffens. Certains analystes vont par exemple créer des sous-groupes là où d’autres ne verront qu’un seul groupe. Le chercheur en sécurité Florian Roth a tenté de regrouper les différents termes dans un tableur Google en accès libre.
La plupart des sociétés de sécurité ne vont pas aller plus loin dans l’attribution. Elles se contentent des créer des nomenclatures et de décrire les attaques de manière technique. Au mieux, elles vont pouvoir dire qu’un acteur est de type cybercriminel (car il vole des données de cartes bancaires) ou étatique (car il espionne des agences gouvernementales) et donner quelques éléments hypothétiques sur l’origine géographique des attaquants. Mais elles ne vont pas faire d’affirmations officielles sur ce point, même si leurs convictions profondes transparaissent parfois dans le choix des noms. Ainsi, le mot Bear est utilisé pour désigner des hackers russes et le mot Panda pour signifier des hackers chinois.
Certaines sociétés comme CrowdStrike et FireEye prennent plus de risques, et vont jusqu’à identifier des organisations. Mais c’est plutôt l’exception. « Tout ce que nous pouvons voir, ce sont les traces laissées par les attaquants. Pour aller plus loin et réellement les identifier, il faut compléter ces informations et s’appuyer sur d’autres sources : il faut pouvoir saisir les serveurs, intercepter des communications, procéder à des écoutes, etc. C’est hors de notre portée », explique Alexis Dorais-Joncas. Ce travail ne peut être bien fait que par la police judiciaire ou les agences de renseignement. Ce sont les seuls acteurs à disposer de tels outils d’analyse. Quand un état ou une organisation étatique est officiellement pointé du doigt, c’est toujours à la suite d’une enquête des forces de l’ordre.
L’accusation officielle, stade ultime de l’attribution
Le problème, c’est que cette attribution n’est pas toujours transparente. Quand les Etats-Unis ont accusé les cinq officiers de l’armée chinoise en 2014, il y a eu un acte d’accusation avec beaucoup de détails techniques. Mais le rapport officiel sur les attaques russes durant la campagne présidentielle américaine n’en livre quasiment aucun (Grizzly Steppe). Et pour cause : cette attribution s’appuie très probablement sur des techniques de surveillance qu’il ne fallait pas compromettre. En tant que citoyen, on reste donc sur sa faim. Et l’organisation pointée du doigt peut facilement nier les conclusions d’une telle d’analyse (ce que la Russie a fait). Mais ce n’est pas forcément très grave, car l’objectif poursuivi est avant tout d’ordre politique : il ne s’agit pas d’informer ou convaincre l’opinion publique, mais d’augmenter la pression diplomatique sur l’adversaire.
Au final, on voit que l’attribution est un art très technique et encore largement artisanal. Elle est très utile pour les chercheurs en sécurité, car elle permet de mieux comprendre la logique des attaquants et, par conséquent, d’améliorer les produits de sécurité. Mais quand elle est poussée jusqu’au bout, avec à la clé des accusations provenant d’instances officielles, elle peut également devenir une arme politique.
Source : 01net