Audit technique et test d’intrusion en environnement industriel


Comment mène-t-on un audit technique sur un système industriel ? Analyse et méthodologie de Claire Vacherot et Marie Forrat, auditrices techniques chez Orange Cyberdefense.

Pourquoi auditer techniquement un système industriel ?

Un audit technique sur un système industriel, aussi appelé test d’intrusion, permet de simuler les actions malveillantes pouvant être réalisées par un malware ou un attaquant sur un tel système. Ces tests d’intrusion sont toujours réalisés avec, en amont, une phase préparatoire importante. Cela permet de minimiser les risques d’impacts sur la protection ou la disponibilité des installations, et ce tout en préservant la sécurité fonctionnelle (protection des biens et des personnes, aussi appelée « safety »). Cette dernière restant toujours la priorité.

L’objectif d’un auditeur pentester est de trouver des scénarios d’attaques réalistes et d’en identifier leurs conséquences probables afin de :

  • vérifier l’efficacité des mesures techniques mises en place pour la protection des systèmes sensibles ;
  • prioriser au mieux les actions à réaliser pour diminuer le niveau de menace sur ceux-ci.

Ce type d’audit permet également d’éveiller les consciences et de sensibiliser une population non-avertie aux risques liés à la cybersécurité pouvant peser sur un système industriel grâce à « l’effet démonstratif » important.

Un scénario d’attaque sur un système (qu’il soit industriel ou non) se déroule en 3 phases :

  • analyse et utilisation des différents points d’entrée pouvant permettre d’obtenir un accès au système d’information interne ;
  • attaque sur le réseau interne pour obtenir des droits plus élevés, accéder à des équipements sensibles ou à des informations critiques ;
  • utilisation des informations récoltées aux étapes précédentes pour, dans le cas des systèmes industriels, démontrer la possibilité d’affecter la disponibilité des installations ou modifier la traçabilité des données de production.

Cet article présente la démarche ainsi que les différentes étapes de réalisation d’un audit technique sur un système industriel en faisant le parallèle avec des scénarios ayant déjà été utilisés ces dernières années par des malwares ciblant des installations industrielles. Les failles détaillées ici sont celles rencontrées les plus fréquemment lors d’audits de systèmes industriels et sont donc basées sur nos différents retours d’expériences.

Il est toutefois important de noter que certains équipements industriels, parfois obsolètes, ne sont pas en mesure de gérer certaines requêtes réseau, il est parfois nécessaire de ne pas auditer tout ou partie d’un système. C’est donc avec la plus grande attention et minutie que ces travaux sont conduits, de préférence sur des installations en cours de maintenance, en période de travaux, ou sur des maquettes du système industriel.

Audit de la sécurité périmétrique

Afin d’obtenir un accès au système industriel, plusieurs leviers d’action peuvent exister. En effet, l’attaque est susceptible de provenir des vecteurs suivants.

Le réseau bureautique

Il s’agit de la principale menace pour un système industriel. En effet, c’est sur la partie bureautique que les accès Internet sont réalisés, que les emails sont ouverts. Ce type d’actions est en général interdit sur la partie industrielle. L’accès à la partie bureautique est possible de différentes manières, l’une des techniques les plus courantes étant via phishing email. C’est notamment l’un des vecteurs d’attaque principaux des ransomwares tels que Wannacry ou Notpetya.

Le principal problème pour les systèmes industriels réside alors dans le cloisonnement entre le réseau bureautique (IT) et le réseau industriel (OT). L’IT doit être considéré comme étant une zone de confiance moindre pour le réseau industriel. Depuis le réseau IT, un attaquant peut par exemple tenter de trouver un serveur ou un poste de travail possédant deux cartes réseau (une sur le réseau IT, une sur le réseau OT) ou bien un poste qui possède des passe-droits dans le pare-feu industriel (pare-feu séparant l’IT et l’OT). Il peut alors utiliser cette machine comme rebond et rediriger tout le trafic envoyé via cette machine pour accéder au réseau OT. Un fort cloisonnement réseau est nécessaire pour éviter l’infection de l’OT par un malware propagé depuis l’IT. Idéalement, une DMZ devrait être présente entre les deux environnements et aucun flux direct depuis l’IT vers l’OT ne devrait être autorisé[1].

Dans le cas d’un ransomware, ce ne sont généralement pas directement les installations industrielles qui sont visées, mais ce type de malware cherche à se répandre sur le réseau en scannant ses potentielles futures victimes. Ce type de scan est souvent mal supporté par certains éléments industriels et peut donc avoir des effets de bord importants, tels que l’arrêt d’installations. Par ailleurs, ces dernières années, plusieurs types de malwares ciblant directement des installations industrielles spécifiques ont été détectés. Il est, par exemple, intéressant de citer CrashOverride[2] (aussi connu sous le nom d’Industroyer) utilisé pour réaliser du déni de service sur des centrales électriques en Ukraine en 2016, ou plus récemment Triton[3] (ou Trisis, ou Hatman) qui a été détecté en 2018. Dans les deux cas, ils ont été introduits via phishing email sur le réseau bureautique, se sont ensuite répandus sur les postes opérateurs dans le réseau industriel jusqu’à trouver et cibler des équipements de marques et modèles spécifiques utilisés par l’industrie visée.

Les actifs exposés sur Internet

Un autre vecteur d’attaque est la compromission d’un actif exposé sur Internet. Ce vecteur a été utilisé par au minimum un malware industriel ciblé connu. En effet, en 2015, un malware de la famille BlackEnergy 3 utilisait des vulnérabilités permettant de faire de l’exécution de code à distance sans authentification sur les interfaces web d’équipements industriels exposés sur Internet[4]. Il n’est pas rare de trouver certaines applications web contrôlant des automates directement exposées sur Internet, notamment référencées sur le moteur de recherche d’équipements connectés « Shodan ». Ce type d’application peut contenir des failles critiques pouvant par exemple permettre à un attaquant de prendre la main à distance sur l’équipement associé. Les éléments industriels ne devraient jamais être exposés publiquement sur Internet.

Les éléments amovibles

Le vecteur d’attaque suivant, visant à l’obtention d’un accès direct au système d’information industriel, est l’utilisation de clés USB ou autres éléments amovibles préalablement infectés et connectés aux postes opérateurs. C’était notamment le point d’entrée utilisé par Stuxnet en 2010. Une restriction sur l’utilisation d’éléments amovibles est nécessaire. Quand d’autres solutions que la clé USB ne sont pas envisageables, l’utilisation d’éléments amovibles dédiés et scannés régulièrement par un antivirus au travers d’un sas de décontamination limite les risques de compromission.

Les intervenants extérieurs

Les postes d’intervenants extérieurs constituent aussi un vecteur d’attaque pouvant être lié à l’utilisation de médias amovibles. En effet, un intervenant extérieur utilise son poste notamment pour consulter ses emails et est également amené à le brancher sur le réseau industriel. Celui-ci peut donc être infecté et sa connexion (au réseau directement ou via un VPN) au système industriel peut permettre à l’infection de se répandre plus largement selon le niveau de sécurité de son poste, dépendant de la société auquel il appartient.

Il est alors important de s’assurer que son poste dispose, a minima, d’un antivirus à jour réalisant des analyses du disque régulières et dernières mises à jour du système d’exploitation et des différents logiciels installés. Une clause contractuelle avec la société externe doit également être ajoutée au contrat.[5]

Les réseaux sans fil

Enfin, l’attaque de réseaux sans fil de type Wi-Fi ou routeur 4G donnant accès au réseau de l’installation industrielle est un vecteur possible. Il est nécessaire d’avoir une cartographie complète des réseaux sans fil afin de pouvoir les configurer en respectant les bonnes pratiques de sécurité. De plus, il est important de s’assurer que la puissance de diffusion de ce type de réseau soit adaptée afin que les possibilités d’attaques depuis un endroit public (tel que la rue) soient réduites. Le blocage des ports USB doit également être envisagé afin de prévenir le partage de connexion via un smartphone par exemple.

Audit du système industriel

Une fois qu’un auditeur, qu’un attaquant ou qu’un malware se trouve sur le réseau industriel, sa cible devient les installations (dans le cas du malware ciblé), c’est-à-dire les postes opérateurs ou les automates. Un attaquant se retrouvant sur le même réseau qu’une de ces deux catégories d’éléments est, d’après notre retour d’expérience, en mesure d’effectuer les actions qu’il souhaite dans la plupart des cas, comme atteindre la disponibilité de l’installation industrielle et sa sûreté de fonctionnement.

Pour obtenir cet accès privilégié, différents rebonds sur les machines au sein du réseau peuvent être nécessaires. Comme cela peut être fait pour passer de l’IT à l’OT, il peut trouver d’autres postes possédant des droits particuliers dans des pare-feu ou un poste avec une double carte réseau pour augmenter sa surface d’attaque et pouvoir, par exemple, accéder aux postes opérateur. Le cloisonnement du réseau interne aux systèmes industriels est donc également important[6].

L’importance des mises à jour

Une fois sa surface d’attaque étendue, il peut alors tenter d’exploiter des vulnérabilités sur les composants à sa disposition. L’absence d’un patch de sécurité sur un système peut être très facilement exploitée dans la mesure où des codes d’exploitation publics sont souvent disponibles sur Internet. Ceux-ci sont utilisés par des malwares, comme cela a par exemple été le cas pour des ransomwares tels que Wannacry, qui exploitaient la vulnérabilité Windows MS17-010 (EternalBlue).

Le patch management et la gestion de l’obsolescence en milieu industriel amènent des problématiques assez fortes, liées à la difficulté de mise à jour des composants dans ces environnements de production. En effet, il peut être difficile, voire impossible dans certains cas, de modifier et de redémarrer les systèmes pour effectuer les mises à jour. De plus, une ligne de production étant prévue pour rester opérationnelle de nombreuses années, la gestion de l’obsolescence des systèmes d’exploitation et la migration de ces derniers n’est pas toujours possible, par exemple pour des raisons de compatibilité avec des logiciels et équipements industriels.

En prenant en compte ces différentes problématiques des environnements industriels, il est tout d’abord nécessaire de « patcher » ou migrer les systèmes (postes opérateurs, équipements terrain, etc.) pouvant l’être. Lorsque cela n’est pas possible, un durcissement réseau et système de ces derniers, voire un isolement total, peut être envisagé. Il est également recommandé de n’activer que les services strictement nécessaires (par exemple désactiver SMB sur les composants avec un système d’exploitation Windows qui n’est pas à jour). Un fort contrôle d’accès réseau doit également être ajouté, afin que seules les personnes habilitées puissent accéder à ces machines vulnérables. Ce contrôle doit aussi s’appliquer à l’accès physique.

La gestion des accès logiques

Un dernier axe d’attaque concerne l’ensemble des actions liées à la gestion des accès logiques. Le rejeu de mots de passe entre les environnements bureautique et industriel, l’utilisation de comptes à privilèges élevés lorsque cela n’est pas nécessaire, l’écriture en clair d’un mot de passe dans la documentation, l’utilisation de comptes génériques ou encore l’utilisation de mots de passe par défaut sont des vecteurs d’attaque largement utilisés.

En particulier, la plupart des équipements industriels sont fournis avec des mots de passe par défaut pour s’authentifier sur les services qu’ils exposent (par exemple : serveur web, FTP, SSH présent sur les automates), référencés dans la documentation du constructeur. Si ces mots de passe ne sont pas modifiés, il est alors facile pour une personne mal intentionnée de les retrouver (des bases de mots de passe par défaut existent sur Internet) et de les utiliser. Une procédure peut être formalisée et appliquée pour s’assurer que tous les mots de passe par défaut sont systématiquement modifiés.

Concernant la réutilisation de mots de passe entre environnements, des campagnes de sensibilisation pour tous les utilisateurs devraient être conduites pour augmenter la robustesse globale des mots de passe et éviter le rejeu de mots de passe entre les domaines bureautique et industriel. Une solution pour aider les utilisateurs à stocker leurs mots de passe de manière sécurisée peut également être déployée.

Afin de s’affranchir de l’utilisation de mots de passe pour certains postes spécifiques, il peut être possible de mettre en place une authentification avec un facteur physique tel qu’une carte à puce ou un badge RFID. Ce type d’authentification permet d’identifier nominativement l’utilisateur, d’améliorer la traçabilité et d’affiner le contrôle d’accès, ce qui n’est pas possible avec un compte générique. De plus, un badge ou un autre matériel similaire est généralement plus pratique à utiliser pour les opérateurs (par exemple, il n’est pas nécessaire de retirer ses gants pour s’en servir).

Méthodologie d’audit technique en système industriel

Afin de simuler les différents scénarios d’attaque réalistes (ceux utilisés notamment par les différents malwares ayant pu être introduits dans un système industriel) expliqués précédemment, une corrélation de différents types d’audit « classique » est nécessaire.

En effet, réaliser des tests d’intrusion sur un système d’information industriel comme cela pourrait être fait pour un système d’information bureautique représente un risque trop important pour la disponibilité des installations. La corrélation de la boîte blanche (audit d’architecture, audit de configuration), des tests d’intrusions sur des éléments non critiques pour la production et des tests sur maquette au plus proche de la réalité (ou sur des éléments à l’arrêt) permettent d’identifier des scénarios de menaces et un plan d’action associé. L’identification des points d’adhérence entre la partie IT et OT est incluse dans l’audit.

Chez Orange Cyberdefense, la méthodologie pour l’audit de systèmes industriels peut être représentée comme cela :

Méthodologie pour l’audit de systèmes industriels chez Orange Cyberdefense

Des audits supplémentaires peuvent être réalisés pour mettre à l’épreuve d’autres vecteurs d’attaque périmétriques.

  • Dans le cas d’adresses IP exposées, un scan de vulnérabilités ou un test d’intrusion externe peut être envisagé afin de s’assurer qu’une compromission depuis Internet sans information spécifique (boîte noire) n’est pas possible.
  • Afin de tester le niveau de sensibilité des employés aux menaces de type Social Engineering, des campagnes de phishing par email ou de diffusion de supports USB malveillants, ainsi que des tests d’intrusion physiques peuvent être envisagés.
  • Finalement, s’il existe des réseaux Wi-Fi sur l’installation industrielle, il est possible de vérifier que ces derniers possèdent des configurations suffisamment robustes.
A propos des blogueuses

Ingénieure de formation, Marie Forrat est aujourd’hui responsable d’équipe et auditrice sécurité pour l’antenne lyonnaise d’Orange Cyberdefense. Claire Vacherot est auditrice sécurité, également pour Orange Cyberdefense Lyon. 

Ethical Hackeuse chez Orange Cyberdefense

Sources :

[1] https://www.ssi.gouv.fr/uploads/2014/01/industrial_security_WG_detailed_measures.pdf

[2] https://dragosinc.info/blog/crashoverride/CrashOverride-01.pdf

[3] https://www.nozominetworks.com/downloads/US/Nozomi-Networks-TRITON-The-First-SIS-Cyberattack.pdf

[4] https://www.us-cert.gov/ics/alerts/ICS-ALERT-14-281-01B

[5] https://www.ssi.gouv.fr/uploads/2016/03/Referentiel_exigences_prestataires_integration_maintenance_V1_0.1.pdf

[6] https://www.ssi.gouv.fr/uploads/2014/01/industrial_security_WG_detailed_measures.pdf