Découvrez comment intégrer facilement l'analyse statique, les tests unitaires et d'autres méthodes de test de logiciels C et C++ dans votre pipeline CI/CD. Inscrivez-vous pour la démo >>

Facilitez la conformité DISA ASD STIG avec les normes SAST natives

Par Arthur Hicken

13 juin 2022

5  min lire

Qu'est-ce que DISA ASD STIG?

La Defense Information Systems Agency (DISA), la sécurité et le développement des applications (ASD) et les guides de mise en œuvre technique de la sécurité (STIG) sont un ensemble de directives pour la sécurisation des applications de bureau et d'entreprise utilisées par le ministère de la Défense. Les directives couvrent spécifiquement le développement d'applications internes.

Le DISA STIG pour la sécurité et le développement des applications (DISA ASD STIG) peut être intimidant. Avec près de 300 éléments à vérifier, vous vous demandez peut-être comment vous allez être conforme, et encore moins par où commencer. Mais avec la bonne approche, utiliser le STIG pour sécuriser vos applications ne doit pas être trop difficile.

Comment aborder la conformité DISA-ASD-STIG

Exigences pour atteindre la conformité avec DISA ASD STIG

Respect des directives DISA ASD STIG requiert des éléments probants, généralement sous la forme de documents, qui satisfassent les auditeurs. Ce billet explique comment Tests de sécurité des applications statiques de Parasoft (SAST) peuvent aider à atteindre la conformité de manière efficace, moins risquée et rentable. Pour y parvenir, des méthodes de détection et de prévention sont recommandées.

  • Analyse des applications avec des outils d'analyse statique pour s'assurer que les vulnérabilités sont détectées et corrigées dans l'application. Le DISA-ASD-Stig a des directives spécifiques sur les classes de vulnérabilités à détecter et à corriger.
  • Conformité Shift-Left avec les processus préventifs, qui élimine les mauvaises pratiques de codage qui entraînent des vulnérabilités. Cette gamme de détection plus large comprend l'analyse des applications et l'application des normes de codage de l'industrie telles que OWASP Top 10 et SEI CERT C/C++. Il comprend également des directives telles que la suppression des «odeurs de code», qui sont de mauvaises pratiques connues pour être à l'origine des vulnérabilités logicielles.

Comment la conformité à DISA ASD STIG est-elle évaluée ?

La conformité aux directives est évaluée par rapport à la documentation du produit et du processus ainsi qu'à l'observation et à la vérification de la fonctionnalité.

Liste infographique Lignes directrices sur les codes de catégorie DISA pour les catégories I, II, III.

2.1.2 Fonctionnalité

Lors de l'examen d'une application, les aspects de la fonctionnalité de l'application doivent être évalués pour s'assurer que les contrôles appropriés existent pour protéger l'application et l'application
Les données. Les éléments à prendre en compte incluent le type de données traitées par l'application, telles que les données classifiées, non classifiées et publiables publiquement ou les informations d'identification personnelle (PII). Les connexions réseau de l'application, les contrôles d'accès au réseau, les points d'entrée/sortie de données, les mécanismes d'authentification d'application, les contrôles d'accès aux applications et les mécanismes d'audit des applications. Ces éléments varient en fonction de l'architecture de l'application, de la conception et des exigences de protection des données. —Vue d'ensemble ASD STIG, V4R9

En d'autres termes, le STIG exige la preuve d'une conception et d'une mise en œuvre sécurisées par le biais de la documentation, de la vérification et de la validation de tous les aspects du cycle de vie du développement logiciel, y compris le déploiement et l'exploitation. Ces directives s'appliquent tout au long de la durée de vie du produit, y compris la configuration, la maintenance et la fin de vie.

DISA ASD STIG nécessite l'utilisation de scanners de code d'application (Présentation, Section 4.1) "... un outil automatisé qui analyse le code source de l'application pour détecter les failles de sécurité, les codes malveillants et les portes dérobées." Dans une terminologie plus courante, il s'agit de tests de sécurité d'application statiques (SAST) mis en œuvre par le biais d'une analyse de code statique et « doit être utilisé chaque fois que possible. En particulier dans l'environnement de développement où le code qui a été identifié comme nécessitant une correction peut être traité avant sa publication.

Comment aborder la conformité DISA ASD STIG pour le développement logiciel

Quel est le rôle des outils SAST dans la conformité DISA ASD STIG ?

La version 3.x du DISA ASD STIG nécessitait utilisation de l'analyse de code statique ainsi que des directives d'analyse statique spécifiques à vérifier. Cependant, ce n'est pas le cas avec la version 5, release 1.

La V5.R1 utilise le terme « analyse d'application », qui correspond à l'analyse de code statique et aux technologies associées telles que l'analyse de la composition logicielle. En plus de l'exigence générale d'évaluation de la vulnérabilité via l'analyse de code statique, il existe des exigences pour :

  • Top 10 OWASP (V-69513)
  • Débordements (V-70277)
  • Conditions de course (V-70185)
  • Traitement des erreurs (V-70391)

À première vue, cela ressemble à un petit ensemble de vulnérabilités. Cependant, cela se traduit par de nombreuses faiblesses logicielles connexes. Par exemple, le Top 10 de l'OWASP se convertit en plus de 50 CWE, chacun présentant plusieurs faiblesses connexes.

Bien qu'il s'agisse de l'ensemble minimum de vulnérabilités spécifiques à la conformité, il est prudent d'envisager un éventail plus large de vulnérabilités à détecter. Cela rationalise l'audit STIG en détectant le code non sécurisé tôt avant que les vulnérabilités ne surviennent.

Tirez parti de l'automatisation et d'une approche de décalage vers la gauche pour la conformité DISA ASD STIG

Pour faciliter la conformité à DISA ASD STIG, Parasoft recommande de tirer parti de l'automatisation là où cela a le plus de sens et d'utiliser des techniques préventives pour prévenir les vulnérabilités.

Il est plus coûteux et plus long de détecter et de corriger les vulnérabilités lorsque le logiciel est presque terminé que pendant le développement. Pour cette raison, l'approche de Parasoft consiste à déplacer vers la gauche l'évaluation, la détection et la correction des vulnérabilités pour qu'elles se produisent plus tôt dans le cycle de vie.

Les développeurs sont moins préoccupés par la portée plus large des exigences DISA ASD STIG. Cependant, ils peuvent prendre des mesures essentielles pour se simplifier la vie et réduire la charge de travail du backend lors des audits. Une approche préventive, décalée vers la gauche qui utilise l'automatisation est la clé pour les développeurs.

Décalage à gauche Test avec analyse de code

Utilisation de l'analyse statique dès le début du développement empêche les vulnérabilités de pénétrer dans le logiciel en premier lieu. C'est également un bon moyen d'évaluer la qualité et la sécurité du code source hérité ou tiers.

Activez les détecteurs d'odeurs de code et les vérificateurs de normes préventives pour renforcer le code

Au-delà de la détection directe des bogues et des vulnérabilités, il est important d'éviter les mauvais styles de codage qui peuvent finir par poser problème plus tard. Celles-ci sont basées sur la travail réalisé par Kent Beck et Martin Fowler qui décrit les zones problématiques potentielles dans un code mal conçu, telles que la duplication ou les fonctions/méthodes trop volumineuses et complexes, en tant que zones où les bogues et les vulnérabilités sont susceptibles de se manifester.

Utiliser un outil avec prise en charge native des normes

DISA ASD STIG nécessite spécifiquement la recherche de certains types de vulnérabilités, ce que les développeurs font à l'aide d'un outil d'analyse statique avancé qui rassemble et analyse les résultats pour des rapports et des audits ultérieurs. Parasoft fournit des vérificateurs SAST qui fonctionnent dans un format natif standard, en utilisant des noms et des niveaux de gravité tels que définis par DISA ASD STIG. Cela évite les exercices de cartographie fastidieux pour relier les vulnérabilités aux exigences du STIG.

L'analyse statique Parasoft a une prise en charge prête à l'emploi pour DISA-ASD-STIG et OWASP Top 10, ainsi qu'une prise en charge prête à l'emploi pour d'autres normes de sécurité courantes telles que CWE et CERT, via des paramètres préconfigurés et des sites Web spécifiques. rapports de tableau de bord pour C, C++, C#, Java et VB.NET.

Comment choisir un outil d'analyse statique moderne

Les rapports DISA ASD STIG dans les outils Parasoft fournissent un cadre de conformité entièrement vérifiable pour les projets. Ces rapports sont intégrés dans un tableau de bord natif des standards. La configuration de test, qui est disponible dans les versions 2022.1 des solutions de test logiciel automatisé C/C++test, dotTEST et Jtest, facilite l'intégration et la démonstration automatiques de la conformité dans les rapports et la preuve de la conformité lors d'un audit, ce qui permet d'économiser du temps, du travail, et les coûts. La configuration native couvre également un large éventail de problèmes de sécurité afin d'améliorer la préparation du logiciel pour la partie fonctionnelle de l'audit.

Tableau de bord Parasoft DISA-ASD-STIG

Résumé

Le DISA ASD STIG présente un ensemble d'exigences assez décourageantes pour la sécurisation des logiciels pour les applications DoD. Il existe différentes méthodes pour démontrer la conformité aux règles décrites dans le STIG, généralement par le biais d'audits de la documentation, de rapports et d'efforts manuels pour utiliser une application et vérifier ses journaux. Il existe des possibilités d'automatisation dans les domaines clés décrits dans le STIG, tels que la numérisation du code d'application. Une solution SAST native aux normes rationalise la conformité avec la visibilité fournie par les vérificateurs natifs aux normes et les configurations de format DISA ASD STIG dédiées.

Une approche pragmatique qui met l'accent sur les techniques préventives qui éliminent les vulnérabilités tôt dans le cycle de vie du projet fonctionne mieux. Les outils SAST de Parasoft permettent une détection précoce des vulnérabilités et appliquent le style et la qualité du code pour prévenir les mauvaises pratiques de sécurité le plus tôt possible.

Détectez les vulnérabilités tôt et intégrez la qualité dans votre processus logiciel dès le début avec la solution DISA ASD STIG SAST de Parasoft.

Par Arthur Hicken

Arthur est impliqué dans la sécurité logicielle et l'automatisation des tests chez Parasoft depuis plus de 25 ans, aidant à la recherche de nouvelles méthodes et techniques (dont 5 brevets) tout en aidant les clients à améliorer leurs pratiques logicielles.

Recevez les dernières nouvelles et ressources sur les tests de logiciels dans votre boîte de réception.