Aller au contenu principal

Automatisation de la vérification cybersécurité de systèmes cyber physiques

Dans tous les domaines industriels, de plus en plus d’infrastructures et de systèmes critiques évoluent vers plus de connectivité. La connectivité accrue de ces systèmes procure de nombreux avantages tels que l’intégration plus facile avec d’autres systèmes, la surveillance de leur état afin de détecter ou d’anticiper des pannes, ou encore leur évolution en réalisant des mises à jour de firmware/logiciel. Cette évolution vers des systèmes plus connectés est connue sous le nom de “Cyber Physical Systems (CPS)”. Un CPS est défini comme un système intelligent incorporant des réseaux de composants logiciels et physiques qui interagissent entre eux [1]. Ces systèmes critiques industriels sont en général des systèmes complexes couplant des composantes embarquées avec des composantes hébergées sur des serveurs physiques ou virtuels, souvent dans un cloud public/privé/hybride. Cette évolution est généralisée dans de nombreux domaines tels que les systèmes de contrôle industriel (SCADA), l’énergie avec les “Smart Grid”, le transport avec les voitures intelligentes ou la santé avec les “medical devices” qui sont parfois implantés dans le corps des patients (ex. une pompe à insuline). D’après la “National Science Foundation” (NSF), les composants physiques et logiciels intégrés dans les CPS sont étroitement liés, chacun opérant sur des échelles spatio-temporelles différentes, présentant des modalités comportementales multiples et différentes, et interagissant entre eux de nombreuses manières qui dépendent du contexte. Alors qu’un système embarqué a une frontière claire avec son environnement, un CPS entretien des interactions complexes et dans des environnement ouverts. 

Ceci rend leur conception et vérification plus délicate à réaliser et automatiser, y compris en ce qui concerne les propriétés de sécurité. La problématique devient d’autant plus importante que nos infrastructures et systèmes reposent de plus en plus sur des CPS. Par exemple, la mobilité du futur sera multimodale, automatisée et basée sur des infrastructures de transports intelligents. A plus large échelle, on doit raisonner en termes de systèmes de systèmes hautement connectés et de plus en plus composé de CPS. Afin de sécuriser de tels systèmes, les tests de cybersécurité/pénétration auront un rôle important à jouer en complément à d’autres techniques.  Ceux-ci devront être plus automatisés afin de tenir compte de la complexité croissante des systèmes intelligents. En lien avec le seconde défi, une meilleure intégration des tests avec l’analyse de risque permettrait de les focaliser sur les risques les plus importants. 

Actuellement la réalisation des tests de cybersécurité fonctionnels (de l’architecture de sécurité) et les tests de pénétration requièrent une intervention importante d’experts pour leur définition et réalisation. Les processus de type DevSecOps permettent déjà une automatisation et intégration des processus de conception, test, déploiement et surveillance. Ce défi vise à pousser plus loin l’automatisation des phases liées aux processus de tests. En particulier, la phase de création des tests est difficile car elle requiert un effort important afin d’atteindre un haut niveau de qualité. Son automatisation est donc un défi industriel important pour de nombreuses organisations.

Au niveau de la génération automatique des tests de cybersécurité fonctionnels, de nombreuses approches sont prometteuses. Les bénéfices sont particulièrement attendus pour les tests de pénétration qui nécessitent des connaissances multiples à la fois sur les outils à utiliser pour les tests, l’architecture concernée, ainsi que les technologies mises en œuvre, leurs vulnérabilités et les différentes techniques d’attaque. Pour ces tests, l’automatisation complète de la génération est un objectif trop difficile à atteindre. Par contre un objectif réalisable est l’automatisation partielle sous forme d’assistance à la fois au niveau du processus de création et de la définition des tests de pénétration eux-mêmes. Il est aussi important d’étudier quelles techniques/outils utiliser pour avoir le meilleur ROI possible (vulnérabilités détectées versus coût/temps de test). En particulier, il est important de mieux comprendre comment le “risk-based testing” peut contribuer à trouver le meilleur ROI et jusqu’où aller en termes de spécification des menaces dans l’analyse de risques.

La distinction entre tests de cybersécurité unitaire et des tests d’intégration doit aussi être abordée dans ce défi. Ces méthodes de tests de cybersécurité plus automatisées doivent non seulement être applicables en laboratoire sur des CPS individuels, mais devraient être également applicables à des systèmes de systèmes plus complexes déjà déployés et opérationnels. Comme expliqué ci-dessus, les CPS sont souvent connectés à des serveurs centraux de supervision souvent déployés sur des clouds privés, publics ou hybrides. Il est important de pouvoir vérifier la sécurité des connexions entre le CPS et les serveurs de supervision. Ceci nécessite de vérifier si ces méthodes et outils de tests de laboratoire peuvent également être utilisés pour réaliser des tests d’intégration au niveau du système de systèmes.  

Le résultat des recherches sur ce grand défi seront des briques technologiques de TRL 4 permettant de générer des tests de cybersécurité fonctionnels et/ou de pénétration. Ces briques technologiques seront validées dans la factory CyberExcellence et accessibles aux entreprises pour évaluer leurs performances. L’automatisation de la génération des tests de cybersécurité réduira le coût associé à la mise en œuvre de tests de cybersécurité. 

Références

[1] TY – RPRT TI – Framework for cyber-physical systems: volume 1, overview AU – Griffor, Edward R AU – Greer, Chris AU – Wollman, David A AU – Burns, Martin J PY – 2017 PB – National Institute of Standards and Technology CY – Gaithersburg, MD SN – NIST SP 1500-201 DO – 10.6028/NIST.SP.1500-201 ER

Responsable(s) du grand défi