Quelques nouvelles d’Ukraine et d’ailleurs

Il y a deux ans un collègue allemand me recommandait l’ouvrage Black Out de Mark Elsberg, à l’époque disponible uniquement en Allemand. Je l’avais acheté en audio book pour pratiquer mon allemand dans le TGV, ce qui était très optimiste vu que je me suis arrêté au chapitre 2. Heureusement, non seulement à présent l’ouvrage est traduit et disponible en Français, mais en plus une démonstration grandeur réelle d’une cyber-attaque comparable au scénario du livre a été menée en Ukraine à Noël.

Le scenario de l’attaque Ukrainienne

En quelques lignes, cette attaque :

  • a sans doute été menée par les Russes, l’attaque ayant eu lieu un mois après la coupure de l’approvisionnement électrique de la Crimée par l’Ukraine ;
  • a fait l’objet d’une préparation longue, avec les phases typiques : recherche passive d’information sur internet, infiltration du réseau bureautique, collecte et exfiltration de données. Cette étape et la suivante sont bien décrites dans le rapport de l’institut SANS, qui a collaboré à la phase « forensic » pour le compte de l’ICS CERT américain, qui intervenait au secours de l’Ukraine ;
  • a visé trois réseaux de distribution d’électricité (on dispose du rapport détaillé sur l’attaque d’un des distributeurs répondant au doux nom de Prykarpattya Oblenergo) ;
  • la phase active de l’attaque a été déclenchée le 23 décembre 2015, et a été qualifiée de « brilliant » (génial en anglais) par l’un des experts US commissionnés pour l’étudier, en voici le déroulement qui a duré quelques minutes :
  1. un PC de bureautique avait accès à un poste de conduite réseau « industriel », séparé par un pare-feu. Il s’agit d’un accès VPN selon le rapport SANS (en réalité un tunnel SSH utilisé comme VPN), mais qui indique aussi qu’il y a prise de contrôle via une IHM existante – Remote Desktop ou VNC? – la combinaison des deux étant redoutable : SSH permet d’accéder à tout le réseau auquel la cible est connecté, et la prise de contrôle à distance permettant de faire ce qu’on veut sans surveillance automatique possible. Ce PC était compromis via une variante du malware « Blackenergy », qui permet d’installer de quoi compromettre le poste dans la durée avec pilotage à distance (ce qu’on appelle un APT « Advanced Persistant Threat »). Une telle prise de contrôle à distance permet de prendre son temps pour préparer l’attaque, et le jour J la mener à bien en quelques minutes.
  2. le jour J donc, l’attaquant a déconnecté l’utilisateur légitime du poste compromis et changé le mot de passe, empêchant la reprise de contrôle une fois que les relais ont commencé à s’ouvrir…
  3. il a utilisé le poste de conduite accessible par VPN pour ouvrir les relais et couper la distribution d’électricité, les ordres passants du réseau de conduite aux relais via des passerelles ethernet-série classiques,
  4. une fois le courant du réseau de distribution coupé, il a écrasé le firmware des passerelles (exploitant une vulnérabilité qui depuis a fait l’objet d’une alerte du CERT ICS), empêchant l’envoi d’ordres correctifs,
  5. les données des disques durs des PC ont été effacées,
  6. et enfin les UPS (courant secouru) on été désactivées (au moins sur un des 3 sites sites attaqués) pour éteindre la lumière une fois le travail fini !

L’impact a été de plonger quelques centaines de milliers d’Ukrainiens dans le noir pour plusieurs heures. En fait, cet impact est relativement modeste : il a été limité parce qu’il a été possible de ré-enclencher manuellement la distribution et faire fonctionner l’ensemble tant bien que mal, malgré le sabotage très abouti de tout le pilotage informatique.

Sur ce point des analystes américains, notamment dans un article bien écrit dans Wired, alertent sur le fait que les réseaux électriques plus modernes, aux US mais aussi en Europe, ne permettent plus ce type de reprise de contrôle manuel, c’est également l’objet d’un article alarmiste paru dans le magazine en ligne E&E news.net. Sans parler des réseaux électriques intelligents, qui introduisent une optimisation, et donc complexité de régulation ne permettant même plus un pilotage humain direct…

Une attaque similaire sur des réseaux « modernes » pourrait durer beaucoup plus longtemps: plusieurs jours au moins.

Si vous souhaitez en savoir plus sur cette attaque, je vous recommande l’article de JP Hauet dans le magazine ISA-flash #60 de l’association ISA-France, téléchargeable gratuitement sur le site de l’ISA, ou bien sûr de consulter le rapport SANS cité plus haut.

Ce qu’il faut retenir de l’attaque

Cette attaque est un cas d’école pour deux raisons :

  • elle a suivi toutes les étapes classiques d’une attaque, de la collecte passive d’information à l’effacement des traces (en l’occurrence ici cette dernière étape n’était pas totalement réussie car des logs et traces des activités ont pu être exploitées),
  • Prykarpattyaoblenergo était relativement sécurisé, c’est à dire, mieux que de nombreuses installations industrielles. Il y avait des mots de passe, des pare-feux, des règles en place : suffisamment pour résister à un hacker amateur ou un stagiaire malveillant, mais à l’évidence pas pour contrer une attaque d’une agence d’une nation étrangère.

Pour ces raisons, l’attaque est déjà utilisée dans les sensibilisations et formations dignes de ce nom de cybersécurité industrielle. Elle permet de montrer un scénario « classique », et de discuter de l’importance de définir le niveau de sécurité que l’on vise, par rapport à un niveau de menace donné.

Quelles mesures de sécurité adopter ?

Au vu du scénario, on peut imaginer des mesures qui auraient limité le risque :

  • un prestataire étant intervenu chez Prykarpattyaoblenergo a posté sur internet comme exemple de réalisation la liste du matériel installé, dont les passerelles… D’ailleurs, à cette date soit 6 mois après, cela y figure toujours : il n’y a aucune excuse à ne pas contrôler un minimum la confidentialité des informations concernant une installation vitale, via des accords avec les fournisseurs ou, a posteriori, des informations trouvées sur internet (tous les prestataires de sécurité vous proposent ce type de service…)
  • l’accès à des systèmes de conduite à partir de poste de bureautique est dangereuse : on expose inutilement les systèmes, surtout via des protocoles de prise de main à distance (RDP, VNC) difficiles à auditer/filtrer : les pare-feux sont inefficaces. Si c’est indispensable il faut sécuriser plus sérieusement (filtrage applicatif dont protocoles auditables, ou bastions – même si la solution est discutable)
  • l’absence de filtrage une fois sur le réseau industriel est classique : le réseau de conduite est « à plat », et souvent connecté sans filtre (ou via passerelles qui ne filtrent rien non plus), vers le réseau de contrôle du procédé. Il n’y a aucune raison de permettre de reprogrammer le firmware de passerelles à partir de postes de conduite : il faut limiter ceci à des postes de maintenance plus sécurisés, et se donner les moyens de filtrer les actions ou à minima détecter des activités malveillantes.

Il semble a-posteriori facile d’empêcher une telle attaque, mais la limite de l’exercice est qu’il est toujours facile de contrer un scénario spécifique après coup. Mettre en place les mesures ci-dessus donne l’impression qu’on se prémunit de ce type d’attaques, mais c’est une illusion, car des variantes peuvent être imaginées (clé USB au lieu d’accès distant, reconfiguration switchs au lieu de passerelle etc…).

A noter qu’il faut rajouter à ces mesures l’intérêt de remettre en place des systèmes contrôlés manuellement (comme évoqué dans l’article E&E précédemment cité) : cette option est souvent évoquée après une cyberattaque et même lors d’analyse de risques, mais est peu réaliste du fait de l’évolution de l’écosystème (fournisseurs, mainteneurs, opérateurs).

Mettre en œuvre une stratégie de sécurité

Il faut donc une réelle stratégie de sécurité pour concevoir un système capable de résister à des attaques pour un niveau d’attaquant donné. Pour commencer, il semble bien de s’appuyer sur le travail accompli par la communauté, pour profiter des réflexions déjà faites et des documents publiés.

Par exemple, aligner le niveau de sécurité sur le niveau de l’attaquant est la promesse que fait l’ISA, au travers de l’application des normes ISA/IEC 62443. En effet les SL (security level) permettent de mesurer un niveau de sécurité existant (SL-A pour « achieved » – atteint), et de définir une cible en fonction du niveau d’attaquant dont on veut se prémunir  (SL-T pour « target » – cible). L’ISA insiste également sur la mise en place de différents lignes de défenses, et on trouvera dans d’autres référentiels (NIST 800-82 notamment) des conseils intéressants sur la manière de combiner détection et prévention.

Pour en savoir plus et en discuter…

Ce sujet « Estimation du niveau SL de Prykarpattyaoblenergo avant l’attaque et du niveau SL requis pour la contrer » sera justement traité cet automne au travers de plusieurs conférences, notamment à l’Exera en septembre et (à confirmer) lors des journées Cyber à Rennes en novembre, qui devrait adresser un peu plus le volet « détection » avec des exemples de solutions déjà disponibles. Le sujet de l’attaque ukrainienne devrait aussi être abordé lors des journées ISA « Sûreté et cybersécurité » en octobre à Villeurbanne.

Mise à jour : concernant l’évaluation du niveau de sécurité « SL » en utilisant la norme ISA/IEC 62443-3-3, un article a été publié dans le numéro de Mars-Avril de la revue de l’ISA « Intech », il peut être téléchargé sur le site de ISA-France.

 

 

 

Tags: , ,

1 commentaire sur “Quelques nouvelles d’Ukraine et d’ailleurs”

Répondre à Patrice Bock

Note: Vous êtes responsable de vos commentaires, veillez à rester courtois et factuel. En postant votre commentaire, vous accordez de fait un droit de diffusion à Secur'id.