Découvrez notre société Contactez-nous

e-Xpert Solutions Genève

109, chemin du Pont-Du-Centenaire
CH-1228 Plan-les-Ouates / Genève
SUISSE

Tel. : +41 22 727 05 55 Fax : +41 22 727 05 50

e-Xpert Solutions Lausanne

Avenue de Gratta-Paille 20
CH-1018 Lausanne
SUISSE

Tel. : +41 21 802 26 78 Fax : +41 22 727 05 50
Contactez notre support : +41 22 727 05 56
Envoyez votre message

Swiss Security Hackademy

Suivez notre blog bilingue en sécurité informatique !

Retour aux articles

Analyse d’une cyber-attaque gouvernementale

Visant le parti démocratique durant les élections de 2016


Auteur : David.R

Date de publication : 7 août 2018 - Dernière mise à jour : 9 août 2018


Vendredi 13 Juillet 2018 !
Une procédure de mise en accusation pour « Conspiration », a été émise par le Grand Jury américain contre plusieurs membres des services de renseignement Russe.

Un document de 29 pages* décrit de façon précise le déroulement d'une cyber-attaque visant à « pirater les ordinateurs des citoyens et d’entités liés aux élections américaines de 2016, de voler des documents et de les publier afin d’interférer dans le déroulement des élections ».
*Consulter le document de 29 pages

Cibles des pirates : les réseaux du Democratic National Committee (DNC) et le Democratic Congressional Campaign Committee (DCCC), les employés, les proches collaborateurs d’Hillary Clinton.

La suite a été le scandale « DCLeaks », opération durant laquelle de nombreux échanges emails et documents « compromettants » ont été publiés par les attaquants afin de tenter de déstabiliser le parti démocrate durant la campagne présidentielle.

Cette cyber-attaque a duré plusieurs mois (de Mars à Novembre 2016), et a été d’une grande ampleur, impactant les utilisateurs (sphère privée et professionnelle), les infrastructures (réseaux DNC & DCCC), certains fournisseurs (logiciel lié à la gestion des votes) etc…

Dans ce bulletin, nous nous concentrons sur les attaques ciblant les utilisateurs et les infrastructures et nous abordons la méthodologie et les techniques utilisées par les attaquants (Tactics Techniques and Procedures). De là, nous envisageons les mécanismes de réponses qui auraient pu contrecarrer cette attaque.

Analyse d’une cyber-attaque gouvernementale

Attaque initiale du DNC (patient 0) : John Podesta (Directeur de campagne)

Analyse d’une cyber-attaque gouvernementale

John Podesta (Directeur de campagne DNC)

Le 16 Mars 2016, John Podesta reçoit le mail ci-dessous :

Analyse d’une cyber-attaque gouvernementale

Le mail invite la victime à changer son mot de passe en cliquant sur le lien vers un service d’ « URL Shortener ».

En analysant le lien « bit.ly » on découvre vers quelle URL finale la victime est en fait renvoyée :

Analyse d’une cyber-attaque gouvernementale

Il s’agit de « myaccount.google.com-securitysettingpage.tk », le domaine de destination réel étant : securitysettingpage.tk. (Évidemment pas un service de Google).

Cette technique de Phishing est communément utilisée pour tromper la vigilance des victimes puisque si le nom du domaine est lu rapidement il est facile de se tromper pour un utilisateur non « averti ».

à noter : L’utilisation du domaine .tk est gratuite… limitant ainsi les traces de paiements potentiels...

Force est de constater que cette technique est toujours d’actualité…

Analyse d’une cyber-attaque gouvernementale

Extrait d’une base Threat Intelligence (2017-07)

John Podesta n'a pas pressenti la ruse. Il s'est connecté au site en question et a saisi toutes ses information d'authentification. Le piège se referme ! Toutes ses informations sont désormais entre les mains des pirates !

Analyse d’une cyber-attaque gouvernementale

Image d’illustration d’un Phishing

En moins de 2 jours plus de 50 000 emails ont été dérobés (au 21 Mars 2016).

DNC : Reconnaissance, Mouvement latéral, Exfiltration

Les attaquants veulent se rapprocher de la candidate, pour cela ils ont opéré plusieurs attaques de phishing successives ciblant plus de 30 employés de campagnes.

La première étape a été de s’appuyer massivement sur les réseaux sociaux ainsi que sur les mails récupérés pour étudier les relations entre les différentes personnes.

Le scénario diffère légèrement cette fois ci :

  • Les victimes ont reçu un mail semblant provenir d’un membre connu de la campagne,
  • Ils ont été invités à télécharger un fichier : « hillary-clinton-favorable-rating.xlsx »,
  • Un lien de téléchargement les invite à s’authentifier en utilisant leur login/ mot de passe..

Le scénario le plus "classique » est d'inviter les utilisateurs à saisir leur identifiant et mot de passe pour télécharger un document.

Analyse d’une cyber-attaque gouvernementale

Image d’illustration Phishing – Document downlaod

Intrusion dans le réseau DCCC & DNC : Reconnaissance, Scanning, Intrusion, Persistance, Mouvement latéral puis Exfiltration

Analyse d’une cyber-attaque gouvernementale

Dans le même temps les attaquants ont également ciblé l’infrastructure utilisée par le DCCC et le DNC.

Pour cela ils ont procédé de façon « classique » :

  • Reconnaissance & Scanning : Découverte des services exposés, recherches, scans IP,
  • Compromission d’un utilisateur: Nouvelle attaque de Phishing ciblée sur le DCCC (pas plus de détails sur la méthode de compromission),
  • Persistance,
  • Mesures « anti-forensique »,
  • Mouvement latéral : Accès au réseau du DNC en allant de machines en machines (depuis le DCCC),
  • Exfiltration des données.

La description de la méthodologie de cette attaque s'appuie en partie sur le rapport fourni par CrowdStrike (2) (mandaté pour effectuer les investigations).

PERSISTANCE (LISTE NON EXHAUSTIVE)

L’étape de persistance est primordiale pour un attaquant, elle consiste à conserver l’accès après une intrusion dans un système.

Les éléments suivants font partie de l’attaque :

  • Implant WMI : Cette technique dite « avancée » consiste à créer des « Query WMI » qui lorsqu’elles retournent un contenu, déclencheront une action (par exemple l’activation d’une communication avec un serveur de Command & Control). Il suffit de configurer une « Query » qui renvoie un contenu pour déclencher le code malveillant. Il établit la communication avec le Command & Control.
  • Outils d’accès distants (Remote Access Tools) X-Agent et X-Tunnel
  • Commande powershell utilisée pour la connexion vers un Command & Control et exécutée via l’implant WMI.
Analyse d’une cyber-attaque gouvernementale

Techniques « anti forensique » : Ce type de mesures sont utilisées dans des attaques avancées pour rendre le travail d’un analyste plus difficile (en théorie). Le « contre-coup » de ces méthodes et qu’elles peuvent aider un analyste averti puisqu’il concentrera sa recherche / alerting sur la détection de mesures anti-forensique… (nous le démontrerons dans la suite de cet article).

Les méthodes utilisées :

  • Backdoor HTTP encapsulant du trafic chiffré vers un serveur de Command & Control (via le domaine linuxkrnl.net => déjà utilisé et connu en 2014…),
Analyse d’une cyber-attaque gouvernementale
  • Suppression régulière des évènements Windows (Logs de Sécurité / Logs Système).
Analyse d’une cyber-attaque gouvernementale

MOUVEMENT LATÉRAL

Le mouvement latéral fait partie des étapes classiques d’une intrusion, cela consiste à tenter d’étendre ses accès sur un réseau à partir une intrusion initiale.

Méthodes utilisées

Mimikatz : C’est un outil développé par Benjamin DELPHY servant à récupérer le mot de passe d’un utilisateur Windows. En effet, les mots de passes lors d’une connexion (interactive, RDP…) sont stockés en clair dans une zone « cache ». L’outil va extraire ces informations. C’est un outil classique utilisé dans les tests d’intrusion.

Authentifications depuis la workstation initialement compromise : Une fois des mots de passes récupérés (avec Mimikatz) l’attaquant va essayer de se connecter à de nouveaux ordinateurs pour étendre son emprise sur le réseau.

EXFILTRATION

Une fois bien établi sur les réseaux du DNC et du DCCC les attaquants cherchent des données.

Analyse d’une cyber-attaque gouvernementale

Ils ont ensuite exfiltré ces données vers un serveur sous leur contrôle avant de les publier sur DCLeaks.

La publication contenait des emails en grand nombre ainsi que des documents volés.

Analyse d’une cyber-attaque gouvernementale

Contenu du « DCLeaks »

MOYENS DE DÉFENSE POSSIBLES

Cette attaque même avancée par son ampleur et ses cibles démontre des défaillances dans les méthodes de protection et de détection.

Nous ne parlons ici pas de produits spécifiques mais de bonnes pratiques à adopter en matière de protection et de détection qui auraient permis d’empêcher ces attaques ou du moins d’en réduire fortement les impacts.

Le tableau suivant reprend les différents éléments liés à cette attaque et propose des réponses qui auraient pu être mise en place en amont afin de garantir la sécurité des données.

Ces réponses sont d’ordre humaines ou techniques, seuls les uses cases concernant cette attaque sont couverts dans cet article.

Analyse d’une cyber-attaque gouvernementale

Pas d’utilisation de 0-day ou d’attaques hautement complexes pour les compromissions initiales, seulement du Phishing et l’exploitation de failles « humaines » !

SENSIBILISATION

Une sensibilisation adéquate aurait permis de limiter l’incident mais aussi d’avoir des utilisateurs avertis capables de reconnaître l’attaque et d'enclencher les bons moyens de réponses (renforcement de la surveillance, de la sécurité, assistance d’experts etc…).

UTILISATION DE RESSOURCES PERSONNELLES À DES FINS PROFESSIONNELLES

Plusieurs attaques ont été perpétrées sur des mails « privés » ex gmail.com.

De même, un volume important de mails liés aux activités du parti a été volé sur ces environnements. Il est souvent déconseillé d’utiliser ses mails personnels à des fins professionnelles et pour cause…

Analyse d’une cyber-attaque gouvernementale

Même si cette attaque peut paraitre complexe sur le plan technique plusieurs mesures auraient permis de prévenir ou à minima de détecter ces activités malicieuses.

INTRUSION / COMPROMISSION D’UN UTILISATEUR

Authentifications à double facteurs - prévention : L'avantage de ce process est de prévenir la connexion d’un utilisateur malveillant, puisque la personne qui s’authentifie doit « Connaître et Posséder quelque chose qui l’identifie».

Généralement on a un mot de passe, l’élément « connu » et un token (l’élément possédé) pour s’authentifier. Les tokens pouvant être un SMS envoyé par le système, un code généré sur le téléphone mobile de l’utilisateur légitime, une clé etc…

Ce procédé permet de contrer la majorité des attaques de Phishing.
à noter : Google propose gratuitement ce service aux utilisateurs de Gmail depuis 2012 !

EXÉCUTION

“Malware Can Hide, But It Must Run”

Collecte des Windows (exécution de commandes) - détection : L’activation de stratégie d’audits Windows liées aux Exécutions de commandes permet de détecter l’utilisation de binaire non trustés (X-Agent X-Tunnel) ou le « détournement de binaires trustés à des fins malveillantes (ex powershell…).

Analyse d’une cyber-attaque gouvernementale

Plusieurs uses cases de détection possibles (puisque l’antivirus a été inefficace) :

  • Approche basée sur des keywords (peu efficace pour les binaires inconnus) mais qui aurait été utile pour détecter la charge malicieuse dans Powershell (« hidden », « bypass » etc…),
  • Analyse basée sur le principe statistique de « Least Frequency Of Occurrence » sur les exécutions de programmes,
  • Exécution de programmes en dehors des chemins standards (Program Files / Windows),
  • Exécution de programme ayant comme processus parent (ParentImage) un binaire venant d’un chemin C:\Program*OFFICE*\.

Les événements Windows utilisables pour cette détection sont :

  • Source : Security - Event ID 4688 (Execution de commandes),
  • ou Source : Sysmon - Event ID 1.

Restriction des logiciels non approuvés - prévention :

L’utilisation d‘Applocker (inclus dans Microsoft Windows) aurait permis de détecter et de bloquer l’utilisation de logiciels non approuvés. Cette méthode très efficace contre les malwares reste marginale en termes d’implémentation dû au problématique de faux positifs.

PERSISTANCE

Détection des implants WMI (collecte des logs Windows) – détection :

La technique de persistance utilisée est de type « fileless ».
Ce type d'attaques est connu depuis plusieurs années et déjà utilisé dans différents malwares ou frameworks d'attaques (ex : Metasploit, Nishang, Powersploit…).

De même ce type d’implant WMI n’est pas nouveau puisqu’il était déjà utilisé dans le malware Stuxnet (4) en 2010 ! De même il est décrit dans une présentation à la conférence BlackHat 2015 (3).
Il est possible de le détecter via les évènements Windows et/ou Sysmon :

sans Sysmon :

  • Source : Security EventID=4688 “ParentProcessName”=C:\Windows\System32\svchost.exe NewProcessname=“C:\WINDOWS\system32\wbem\scrcons.exe”

Avec le monitoring WMI (sans Sysmon) :

  • Source : Microsoft-Windows-WMI-Activity/Operational EventID=5860, EventID=5859, EventID=5861
Analyse d’une cyber-attaque gouvernementale

Exemple d’une search query Splunk dédiée à cette détection.

TECHNIQUES « ANTI FORENSIQUE » ET COMMUNICATIONS VERS COMMAND & CONTROL

Détection de l’Event Log Clearing (via la collecte des logs Windows) – détection :

Cette mesure anti-forensique effectuée par les attaquants est en réalité un excellent moyen de détection d’une attaque, en effet, le fait de supprimer les entrées du journal des événements va générer un événement de sécurité !

Analyse d’une cyber-attaque gouvernementale

Il suffit donc de collecter les events suivants :

  • Source : Security EventID=1102

Déclencher une alerte sur cet événement et le premier use case que nous implémentons, puisqu’il est justement facile à générer et permet de tester les méthodes d’alarmes.


Détection de communication vers un Command & Control (via la collecte d’information réseau) détection / prévention :

En utilisant par exemple une sonde IDS, il est possible de surveiller le trafic DNS afin d’identifier des connections vers des domaines connus comme malicieux. Cette opération est possible avec certains Firewall qui supportent également l’ « ingestion » d’Indicateurs de Compromission.

Dans le cas de l’attaque du DNC/DCCC une connexion sortante était effectuée vers « linuxkrnl.net » depuis un serveur Linux. Ce site était connu comme malicieux depuis 2015 sur des bases d’indicateurs publiques (Threat Intelligence) :

Analyse d’une cyber-attaque gouvernementale

Architecture du réseau et des flux – prévention :

On ne connait pas l’état de la segmentation du réseau, nous rappelons qu’il est toujours recommandé de segmenter les réseaux pour améliorer la sécurité et si possible d’empêcher les communications entre machines / serveurs sans nécessité du métier.

Par ailleurs, la bonne pratique aurait voulu que les stations de travail n’aient pas accès direct à Internet mais passent par un proxy (qui par exemple aurait bloqué les sites connus comme malicieux ou non catégorisés…)

De même des serveurs ne devraient jamais pouvoir sortir sur Internet directement, la bonne pratique est d’utiliser un proxy avec une liste blanche uniquement vers les dépôts nécessaires aux updates systèmes/logiciels.

MOUVEMENT LATÉRAL

Détection de Mimikatz (via la collecte des logs Windows) – détection :

Même si le binaire de Mimikatz est obfusqué ou que ce dernier est exécuté en mémoire (via Powershell par exemple) il est possible de le détecter grâce au comportement qu’il va avoir sur le système.

L’utilisation de Sysmon est nécessaire…

Analyse d’une cyber-attaque gouvernementale

Exemple via une search query Splunk

Détection du mouvement latéral depuis la Workstation source (via la collecte des logs Windows) – détection :

Lors d’une authentification Windows entre deux ordinateurs un évènement Windows de type 4624 est généré sur la machine de destination.

L’utilisation d’une approche statistique qui pourrait être résumée de la façon suivante permet une détection aisée de ce type d’attaque :

  • Groupage des Event 4624 avec un filtre par type de Logon par source IP,
  • La source IP devient la clé d’agrégation (K),
  • Si Y(destinations) > valeur_max - depuis K sur N(heures),
  • On déclenche une alarme.
Analyse d’une cyber-attaque gouvernementale

Exfiltration

Détection de fuite de données (via un proxy) – détection / prévention :

Un proxy aurait pu filtrer l’envoi de documents internes vers des sites non autorisés.
Il est établi que si l’utilisation du Malware déployé par l’attaquant utilisait un protocole particulier sur du http, cela n’aurait pas été possible avec un proxy. (ce dernier aurait bloqué également le site de destination).

Couplé à une technologie de DLP, il aurait été possible de détecter des fuites tant au niveau Endpoint, qu’au niveau réseau (Mail/Http).

Conclusion

L’attribution de cette attaque à un gouvernement reste sujette à caution pour beaucoup d’experts, de même, le fait que la justice américaine ait pu produire les noms exacts des agents impliqués dans l’attaque sans indiquer les sources rajoute une part de mystère dans cette affaire.

Une hypothèse avancée par le journal Néerlandais « de Volkstraant » indique que des agents des services secrets Néerlandais surveillaient les services Russes en s’étant introduits dans leur infrastructure (5).

L’analyse de ces attaques (attribuées à un état) démontre que des attaques même « avancées » utilisent des méthodes finalement « classiques », ici pas de zero-day (failles exploitées non connues par l’éditeur), pas d’exploitation d’infrastructures à grande échelle (type attaque BGP etc).

En effet, la faille principalement exploitée a été la faille « humaine » via des campagnes massives de phishing, s’en est suivi un schéma d’exploitation très classique.

Par ailleurs, nous avons démontré que des moyens simples (collecte de logs sur les environnements Windows) auraient permis de détecter et d’alerter les administrateurs et le gouvernement dès les premiers signes d'attaques.

All Ref.