Découvrez GoogleTest certifié TÜV avec Agentic AI pour les tests C/C++ !
Plus de détails »
Blog Parasoft
Ne laissez pas un pirate profiter d'une vulnérabilité logicielle non contrôlée dans votre application. Tirez parti de TARA pour identifier et atténuer les risques de cybersécurité et prévenir les violations coûteuses.
Aller à la section
L'analyse des menaces et l'évaluation des risques (TARA) jouent un rôle crucial dans le développement et le déploiement de logiciels. Que vous travailliez sous la norme ISO 21434 pour les composants automobiles , la norme IEC 62443 pour les dispositifs médicaux, ou encore la norme DO-326A pour l'avionique, les méthodologies TARA doivent être efficaces et intégrables à votre cycle de vie de développement logiciel (SDLC) et à votre écosystème de développement. De nombreux secteurs connaissent une transformation profonde. Par exemple, Renovo a dû relever des défis en matière de sûreté et de sécurité.
Choisir les bons outils pour compléter votre TARA peut faire la différence entre la durabilité de produits et services non sécurisés ou la fourniture de systèmes logiciels sécurisés et sûrs.
Ce blog répond aux questions suivantes :
En termes simples, une analyse des menaces et une évaluation des risques sont un processus permettant d'identifier les facteurs de risque, les vulnérabilités et les éléments non conformes possibles de votre logiciel. Il aide les équipes à identifier les zones non sécurisées ou les problèmes de conformité avec leur logiciel d'une manière qui favorise la mise en œuvre de l'atténuation et de la sécurité plus tôt dans le SDLC.
Certains connaissent peut-être le CWE ( Common Weakness Enumeration) , un outil essentiel dans l'élaboration d'une stratégie TARA (Targeted Assessment, Assessment, Relevé). La sécurité logicielle repose sur le CWE, car il simplifie la gestion des vulnérabilités et facilite leur compréhension. Bien que le CWE appartienne à MITRE et soit maintenu par cette organisation, il s'agit d'un catalogue collaboratif recensant divers risques dans de nombreux secteurs, dont l'automobile.
L'un des meilleurs exemples illustrant l'importance cruciale d'une analyse des risques liés à la sécurité (TARA) concerne la conformité à la norme ISO 21434. Comme indiqué dans notre article de blog sur la cybersécurité dans l'industrie automobile , la TARA permet d'identifier les failles et de guider les équipes sur la manière d'intégrer des mesures de sécurité à leurs processus de développement. Idéalement, une TARA complète et efficace atténuera les menaces et renforcera la conformité.
Une TARA bien exécutée peut sauver votre équipe de catastrophes de vulnérabilité évitables ou faire la différence entre répondre ou non aux exigences de sécurité. Dans les cas extrêmes, cela peut aussi faire la différence en lançant un produit ou un service ou en faisant marche arrière, en perdant du temps de développement et de l'argent.
Pensez-y de la même manière que de passer votre examen médical annuel chez le médecin chaque année. C'est un léger inconvénient qui pourrait vous aider à détecter un problème avant qu'il ne devienne un problème majeur, n'est-ce pas ? TARA permet aux équipes de développement de faire exactement la même chose. L'image suivante montre le processus de la méthode TARA.
Étape 1 : Définir le projet
Définissez ce que vous construisez, de sa fonction la plus basique à sa fonctionnalité la plus complexe. Veillez à cataloguer tous les actifs impliqués, tels que les composants réseau, les applications, etc.
Étape 2 : Identification de la menace et évaluation des risques
Essayer de développer une stratégie contre les risques sans connaître les plus grandes menaces est vain. Au lieu de cela, commencez par identifier les types de choses qui peuvent mal tourner avec votre projet. Vos données sont-elles protégées ? Êtes-vous vulnérable en raison de bibliothèques ou d'API tierces ? Peut-être devez-vous travailler avec une technologie propriétaire avec des exigences très spécifiques.
Quelle que soit la situation, être conscient de tous les types et vecteurs de menaces potentiels est une étape cruciale dans le développement et l'intégration d'une stratégie TARA.
Étape 3 : Atténuation des menaces
La prochaine étape naturelle consiste à prendre des mesures pour atténuer les éventuelles menaces et vecteurs de risque. Cela peut impliquer l'intégration de SEI CERT, une analyse de code de sécurité, dans votre pipeline CI/CD. D'autres méthodes de test pour atténuer les menaces possibles incluent les tests de sécurité des API et les tests fonctionnels ou les tests selon vos exigences de sécurité.
Le test de vos exigences de sécurité peut commencer à la phase de vérification de l'unité logicielle. Ensuite, il passe à la phase de vérification de l'intégration suivie de la phase de vérification du système. Cela peut être aussi simple que d'utiliser une solution comme Parasoft pour automatiser les tests unitaires, les tests d'intégration, les tests système et la couverture du code pour garantir l'exhaustivité des tests.
La génération automatisée de cas de test est une autre fonctionnalité puissante qui réduit les efforts et les coûts. De plus, des rapports et des analyses automatisés fournissent des commentaires exploitables pour mettre en évidence les points chauds et aider à maintenir le projet sur la bonne voie et en bonne santé.
Étape 4 : Mise en œuvre et validation
Cette étape garantit que, parmi les menaces traitées, aucune ne dépasse les niveaux de risque acceptés. En outre, l'équipe doit s'assurer que tous les risques restants relèvent également des paramètres acceptés.
Tous les projets n'exigeront pas la même méthode d'évaluation des risques. Ainsi, les équipes peuvent mesurer à la fois la probabilité et l'impact des vulnérabilités de plusieurs manières. L'une des options les plus populaires est une matrice de menaces comme indiqué ci-dessus, généralement dans des matrices 3 × 3, 4 × 4 ou 5 × 5. Les autres options incluent les suivantes :
Arbre de décision. Ce modèle peut aider une équipe à visualiser différents résultats et la probabilité de leur réalisation, ainsi qu'à calculer la valeur potentielle du projet, du service ou du produit.
Modèle en nœud papillon. Cette approche illustre les liens de causalité entre les sources de menaces et leurs conséquences potentielles. À gauche figure la cause, au centre l'événement déclencheur/risque, et à droite les conséquences potentielles.
L'analyse des modes de défaillance et de leurs effets (AMDE) est une méthode d'analyse utilisée pour la première fois dans les années 1940 au sein de l'armée américaine. Elle est particulièrement adaptée aux phases de proposition et de conception d'un projet. La partie « modes de défaillance » définit les problèmes, les risques potentiels et les défaillances. La partie « analyse des effets » examine l'impact potentiel de ces défaillances.
Déterminer la meilleure façon d'effectuer l'analyse des menaces et l'évaluation des risques peut être quelque peu compliqué car de nombreuses approches et cadres d'évaluation des risques de cybersécurité sont en cours de déploiement. Certains viennent du gouvernement et d'autres viennent d'organisations commerciales comme le NIST, l'ISO, l'OCTAVE, le NCSA, etc.
Au cours de votre processus, l'un des plus grands défis de l'évaluation des menaces est d'identifier toutes les menaces potentielles et les vecteurs de risque. L'intégration des processus de sécurité au développement peut également constituer un obstacle majeur pour certaines équipes. Elles peuvent ne pas en percevoir l'intérêt ou considérer que le jeu n'en vaut pas la chandelle.
Alors que les appareils embarqués connectés, l'IoT, le cloud, l'automatisation et d'autres avancées technologiques sont pris en compte dans les objets du quotidien comme les voitures et les appareils IRM, il est essentiel de mettre en œuvre et d'affiner les stratégies autour de la sécurité et de l'évaluation des risques.
Pour servir plusieurs industries et flux de travail, les méthodes et outils TARA varient dans leurs approches et leurs avantages. Mais identifier les meilleurs outils pour votre projet ne doit pas être un défi insurmontable. Vous pouvez identifier plus facilement l'outil dont vous avez besoin et la stratégie TARA pour votre équipe avec des éléments tels que les matrices de menaces.
De nombreuses matrices de menaces capturent l'ensemble des menaces potentielles et les fonctions ou sauvegardes qui doivent être mises en place. Cela correspond aux exigences de sécurité reconnues et aux types de méthodes de vérification et de validation (V&V) qui devront être employées.
Vous aurez besoin d'un outil de gestion des exigences solide comme Polarion, Jama ou codebeamer. Vous pouvez vérifier et valider ces exigences avec des solutions SAST et DAST automatisées étendues comme celles de Parasoft. Il existe également des entreprises, comme itemis, qui fournissent des outils de gestion des menaces et des risques.
Si l'intégration de l'assurance qualité dans votre pipeline CI/CD est une chose, garantir la sécurité à chaque étape de l'automatisation est peut-être encore plus crucial. En matière de conformité aux normes ISO 21434 et ISO 26262, les tests de sécurité par analyse statique (SAST) répondent aux exigences de standards tels que CERT, CWE, OWASP, etc., ainsi qu'à celles de normes comme MISRA, qui intègrent des règles et des recommandations de sécurité.
L'analyse statique, associée aux tests unitaires, aux rapports de conformité, à l'analyse des flux de données et aux autres fonctionnalités des outils Parasoft, permet à votre pipeline CI/CD d'automatiser les tests et d'aller bien au-delà d'un simple déplacement des tâches de développement. Vous pouvez ainsi enrichir votre cycle de vie de développement logiciel agile grâce à des processus automatisés et axés sur la sécurité.
Quel que soit votre secteur d'activité, s'assurer que les éléments critiques pour la sécurité et critiques pour la sécurité sont conformes et fonctionnent est le développement 101. De la même manière qu'un pipeline CI/CD tire parti de l'automatisation pour réduire le temps de mise sur le marché, des résultats de test plus efficaces et une meilleure utilisation du budget, une TARA peut réduire le temps passé à résoudre les bogues et les menaces de sécurité tout en atténuant les problèmes futurs et en identifiant les actifs non conformes.
Des tests tels que l'analyse statique peuvent faciliter la conformité à la norme MISRA, tandis que Parasoft C/C++test offre une solution unifiée d'automatisation des tests logiciels qui englobe les méthodes de test SAST et DAST ainsi que la prise en charge de l'obtention des normes FuSa de l'industrie.
« MISRA », « MISRA C » et le logo triangulaire sont des marques déposées de The MISRA Consortium Limited. © The MISRA Consortium Limited, 2021. Tous droits réservés.