Mise en pratique de la cyber kill chain pour la sécurité des systèmes industriels

de | 29 octobre 2017

La kill chain est un concept militaire pour modéliser la structure d’une attaque : identification de la cible, déploiement des forces vers la cible, confirmation de l’ordre d’attaque et, pour finir, destruction de la cible. La société Lockheed Martin a retranscrit ce concept dans le monde de la cyber sécurité afin d’identifier et de prévenir les intrusions dans les systèmes d’information, notamment les attaques furtives désignées par Advanced Persistent Threat, APT. Cette approche a été adaptée, en 2015, aux systèmes industriels par le SANS Institute dans le contexte des attaques Havex et Stuxnet.

La cyber kill chain, développé par la société Lockheed Martin, modélise un processus d’attaque en 7 étapes, qui explique l’utilisation de l’acronyme CKC7. La modélisation de ces étapes permet d’identifier les activités des attaquants, d’en comprendre le fonctionnement et ainsi positionner les mesures de protection les plus adaptées :

  1. Reconnaissance : collecte d’informations exploitables contre la cible ;
  2. Armement : sur la base du résultat de la phase de connaissance, choix et élaboration des actions et outil/charge destinés à compromettre la cible ;
  3. Livraison : activation des canaux destinés à mettre en oeuvre leurs actions et la transmission de l’outil/charge (pièce jointe à un mail, site web, clé usb, etc.)
  4. Exploitation : activation des mesures qui permettent la mise en oeuvre des actions et des outil/charge ;
  5. Installation : réalisation des actions et/ou installation de l’outil/charge
  6. Commande et contrôle (C2) : prise de contrôle à distance de la victime
  7. Actions : réalisation de la finalisation de l’attaque qui peut être de deux types exfiltration de données ou destruction du système compromis.

A mon sens : le mouvement latéral dans le système d’information victime de l’attaque, consiste à un rejeu de l’ensemble des étapes de la CKC7 depuis le PC victime vers d’autres composants du système d’information, l’objectif de l’attaque étant de trouver un point d’entrée dans l’organisation ciblée.

Concernant les détracteurs de la CKC7 qui arguent que la modélisation s’applique uniquement aux attaques basées sur des malwares : faux ! La modélisation d’appliquer à tout type d’attaques même au social engineering et à la fraude interne. La personne malveillante doit, dans les deux cas, réaliser une reconnaissance “interne”, choisir les modalités de réalisation de leur méfait voir l’installation d’un logiciel malveillant !

Le modèle en “couche” de la CKC7, assimilable à de “la défense en profondeur”, permet d’identifier les actions spécifiques réalisées par un attaquant dans chaque étape afin de mettre en oeuvre les mesures adaptées pour détecter les actions et bloquer l’attaque. L’enjeu est évidemment de détecter et de bloquer l’attaque le plus tôt possible dans sa réalisation.

La figure suivante représente quelques mesures à mettre en oeuvre à chaque étape :

A noter dans la figure précédente que :

  1. Il manque le durcissement des systèmes dans l’étape Exploitation, colonne Deny.
  2. L’outil Microsoft EMET a été remplacé par le module ProcessMitigations dans Windiws 10 et Windows Server 2016.

Revenons à l’application de CKC7 dans les systèmes industriels :

Havex est un trojan qui permet l’accès à distance (RAT, Remote Access Tool) sur le PC où il a été installé. Il semble avoir été développé par le groupe russe DragonFly, aka Energetic Bear, aka Crouching Yeti, qui sévit dans le secteur de l’énergie depuis quelques années.. Havex avait été déployé en 2012/2103 initialement aux Etat-Unis et le Canada, en ciblant les secteurs de la défense et de l’aviation puis en Europe, en ciblant le secteur de l’énergie. En 2014, une variante de ce trojan, spécifique aux systèmes industriels, avait été identifiée.

Trois modes de livraison du trojan avait été identifiés :

  1. Spearphishing : des employés des organisations ciblées par l’attaque ont reçu un mail ciblé contenant une pièce jointe qui contenait la trojan Havex. Les mails avaient été personnalisés pour chaque destinataire afin d’augmenter les chances que la pièce jointe soit ouverte, par exemple : en proposant une offre d’emploi qui correspond au métier du destinataire avec un salaire élevé, la pièce jointe décrivant dans le détail le poste proposé.
  2. Wathering hole : il s’agit de compromettre les sites web des fournisseurs des produits des systèmes industriels ou encore des blogs spécialisés dans les systèmes industriels. Suite à la compromission, Dragonfly fait en sorte que le visiteur télécharge et installe Havex à travers une iframe invisible qui pointe vers un serveur sur Internet contrôlé par le groupe d’attaquant. La iframe ayant été introduite dans le code du site web compromis du fournisseur par Dragonfly. A noter que les attaques contre les fournisseurs ou les blogs compromis sont passées par les 7 étapes de la CKC7 🙂
  3. Supply chain : Dragonfly avait compromis les systèmes d’information des fournisseurs de matériels et de logiciels de leurs cibles, toujours en passant par les 7 étapes de la CKC7. Lors de leur intrusion, le groupe a introduit Havex directement dans les logiciels développés par les victimes. L’objectif étant que les sociétés ciblées par l’attaque installent le logiciel et/ou une mise à jour compromis proposés par leurs fournisseurs, ce qui installera, à l’insu de leur plein gré, automatiquement Havex !

Ce que démontre la troisième étape de CKC7, en occurrence la livraison, un travail poussé de reconnaissance pour identifier les vecteurs à utiliser pour le déploiement de Havex, identification qui correspond à la première étape de CKC7. La seconde étape de CKC7, à savoir l’armement, correspond à la création de la variance de Havex pour les systèmes industriels et la compromission des systèmes d’information, sites webs et blogs qui font partie de l’écosystème de leurs cibles. Les étapes suivantes, exploitation, installation et C2, sont nativement portées par Havex. Par contre, les investigations ont montré que Havex s’est propagé jusqu’aux composants de contrôle et commande d’un système industriel (niveau 3 de l’architecture d’un système industriel en couche du modèle Perdue). Aucun trace du trojan au niveau des automates et des systèmes du terrain (niveaux 0, 1 et 3 du modèle Perdue).

Pour ce qui est de Stuxnet, la publication de Ralph Langner, voir dans les sources, démontre que les étapes de reconnaissance et d’armement s’étendent sur de nombreuses années. L’objectif était d’introduire dans un site nucléaire iranien un malware destructeur, un site localisé dans un pays sous embargo ! La propagation du malware laisse à penser que des reconnaissances physiques et/ou des renseignement depuis des sources internes ont été exploités.

La livraison initiale a été vraisemblablement faite à travers un ordinateur portable ou une clé USB qui avaient été préalablement compromis.

La conception de Stuxnet a intégré nativement les phases d’exploitation, installation et actions. Son caractère autonome fait que l’étape commande et contrôle est intrinsèque au malware.

Par ailleurs, après sa livraison initial, sa propagation comme un ver, lui confère des capacités à réaliser l’ensemble des étapes de CKC7 de manière totalement autonome : depuis la reconnaissance, afin de détecter d’autres systèmes industriels à compromettre, jusqu’à l’action, à savoir la destruction du système infecté.

En conclusion, la modélisation CKC7 est une approche efficace pour prendre du recul sur la sécurité du système d’information avec le point de vue d’un attaquant. Elle peut également être un bon support de sensibilisation vers les top management sur les modalités de réalisation d’une attaque et l’explication de l’intérêt de la mise en oeuvre de mesures organisationnelles ou techniques pour la sécurité du système d’information, l’objectif étant de montrer que la maîtrise de la sécurité d’un système d’information nécessite la mise en place de différentes mesures et que l’ultime solution n’existe pas.

La CKC7 trouvera une réelle place dans la démarche proactive de cyber sécurité si celle-ci est couplée à une veille et une gestion permanente de la menace -Threat Intelligence-, qui sera le sujet d’une prochaine publication.

2 réflexions au sujet de « Mise en pratique de la cyber kill chain pour la sécurité des systèmes industriels »

  1. Ping : Veille Cyber N155 – 13 novembre 2017 |

  2. Ping : Cyber sécurité, confiance numérique, sécurité des nouveaux usages, objets connectés, blockchain, etc. | Cybercriminalité

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *