Nouvelles Du Monde

L’état des outils de test de sécurité logicielle en 2022

L’état des outils de test de sécurité logicielle en 2022

Attaques de la chaîne d’approvisionnement, attaques par injection, attaques par falsification de requête côté serveur – toutes ces menaces, et bien d’autres, exploitent les vulnérabilités logicielles. Les vulnérabilités peuvent aller de mauvaises configurations à des problèmes de conception et d’intégrité logicielle. Dans l’ensemble, les applications sont les vecteur d’attaque le plus courantavec 35 % des attaques exploitant un type de vulnérabilité logicielle, selon Forrester Research.

L’accent mis sur la sécurité des logiciels, ainsi que la prolifération des outils de test de sécurité logicielle, s’est développé au cours des dernières années, en partie grâce aux attaques de la chaîne d’approvisionnement comme celles sur Stuxnet et SolarWinds. Et à mesure que les organisations étendent leur présence sur le Web, les risques sont plus grands que jamais. Enfin, l’évolution vers DevSecOps a encouragé davantage d’organisations à inclure des tests de sécurité dans la phase de développement logiciel.

Garder les attaques logicielles à distance nécessite des efforts accrus autour des tests, et pas seulement à la fin du développement. Pour ceux qui développent des logiciels en interne, les logiciels doivent être testés tôt et souvent. Cela peut réduire les retards et les dépenses supplémentaires qui surviennent lorsque le logiciel doit être réécrit vers la fin d’un cycle de production.

Dans le cas d’un logiciel développé en externe, l’approche la plus sage est de tester via plusieurs méthodes avant de le mettre en production à grande échelle.

“Il est toujours plus facile de prévenir les problèmes que de les détecter en cours de production, donc intégrer les tests de sécurité dès le début est tout à fait logique”, a déclaré Janet Worthington, analyste senior pour la sécurité et les risques chez Forrester.

Des montagnes d’outils de test de sécurité logicielle

L’un des outils de test les plus importants pour prévenir l’escalade des menaces est le test d’analyse statique.

Également appelé test de sécurité statique des applications (SAST), ce type de test analyse soit le code du logiciel, soit ses binaires d’application pour modéliser les applications pour les faiblesses de sécurité du code. Il est particulièrement efficace pour éliminer les attaques par injection. Injection SQL Les attaques sont un vecteur d’attaque courant qui insère une requête SQL dans les données d’entrée du client à l’application. Il est souvent utilisé pour accéder ou supprimer des informations sensibles.

Les outils SAST peuvent également aider à identifier les vulnérabilités de falsification de requête côté serveur (SSRF), où les attaquants peuvent forcer les serveurs à envoyer des requêtes HTTP falsifiées à un système ou un appareil tiers. Les outils SAST peuvent aider à détecter ces vulnérabilités avant qu’elles n’atteignent la production.

Lire aussi  La fin des échos de Netflix expliquée (en détail)

Un autre outil de test critique est l’analyse de la composition des logiciels. Ces outils aident à empêcher complètement les composants malveillants d’entrer dans le pipeline. Ils recherchent les vulnérabilités connues dans tous les composants, y compris ceux des bibliothèques open source et tierces. Des vulnérabilités comme Log4J ont contribué à la popularité de ce type d’outil de test. Selon Forrester, 46 % des développeurs utilisent désormais des outils d’analyse de la composition logicielle pour les tests.

D’autres types importants d’outils de test de sécurité logicielle incluent :

  • Analyse de vulnérabilité: Bien que ces outils se concentrent sur la recherche sécurité des applications vulnérabilités à tous les niveaux, il existe également des versions spécialisées pour trouver les faiblesses des applications Web. Ils sont particulièrement utiles pour trouver des menaces telles que les injections SQL, la traversée de chemin, la configuration de serveur non sécurisée, l’injection de commandes et les scripts intersites.
  • Tests dynamiques de sécurité des applications (DAST): Ce type de test adopte une approche “boîte noire” en simulant des attaques sur la version d’exécution d’une application. DAST est généralement exécuté pendant les tests d’intégration ou d’automatisation de bout en bout. Forrester a constaté que 44 % des équipes de développement prévoient d’utiliser DAST avant les versions logicielles.
  • Test d’API: Les API sont partout aujourd’hui. Bien que les API ne soient pas toujours une préoccupation majeure, elles ne sont pas à l’abri des menaces de sécurité. Pourtant, Gartner constate que les API non gérées et non sécurisées créent de nombreuses vulnérabilités, gérées uniquement par Sécurité des API tests et contrôle d’accès à l’API.
  • Tests interactifs de sécurité des applications (IAST): Cette méthode teste les vulnérabilités du logiciel pendant l’exécution, en utilisant des modules de détection pour surveiller le comportement du logiciel pendant la phase de test. Si IAST détecte un problème tel qu’une injection SQL ou une injection de script intersite, il envoie une alerte. En tant que type de test plus récent, l’IAST est souvent effectué par des équipes qui effectuent déjà des tests statiques et dynamiques. Il a tendance à avoir des taux de faux positifs inférieurs à ceux des autres types de tests.
  • Tests de pénétration. Également connu sous le nom de piratage éthique, test de stylo implique de tester les applications pour les vulnérabilités et la sensibilité aux menaces, généralement par une partie externe. Les tests d’intrusion peuvent révéler de nombreuses choses, des bogues logiciels et des erreurs de configuration aux attaques de la chaîne d’approvisionnement.
Lire aussi  Rocket Report : Une fusée lourde financée par crypto ; Falcon 9 endommagé pendant le transport

Selon le type de menace, la plate-forme et d’autres facteurs, les organisations peuvent choisir d’utiliser différents types d’outils de test. Certaines applications peuvent également nécessiter des outils de test qui ne figurent pas dans la liste ci-dessus. Par exemple, une application incluant une signature cryptographique nécessitera probablement un outil d’analyse cryptographique. C’est pourquoi aujourd’hui, plus que jamais, il est important d’utiliser plus d’un type d’outil de test logiciel.

“Si vous voulez être aussi approfondi que possible, vous voudrez effectuer des tests SAST pour une couverture complète, des tests DAST pour les composants open source et d’autres types de tests pour les applications mobiles. [and] applications Web, en fonction de ce sur quoi vous travaillez », a déclaré Ray Kelly, membre de Synopsys, qui fournit des outils de sécurité et de test des logiciels. “Il s’agit vraiment de trouver les bons outils pour votre situation spécifique.”

Comment choisir les outils de test de sécurité des logiciels

Les outils ne manquent pas et il peut être déroutant de passer au crible les options. Dans l’ensemble, il existe des outils open source, les meilleurs outils de fournisseurs et des plates-formes de test de logiciels propriétaires.

Les outils open source ont tendance à être de nature très tactique, concentrés sur une chose. Les exemples incluent OWASP ZAP, un scanner de sécurité d’application Web gratuit ; Le vérificateur gratuit de qualité et de vulnérabilité du code de Snyk ; SQLmap ou Metasploit pour les tests d’intrusion ; SonarQube pour la sécurité du code ; et FOSSA pour les tests de dépendance open source.

Il existe, bien sûr, de nombreux outils de pointe disponibles moyennant des frais auprès de divers fournisseurs.

Et puis il existe des plateformes de test de logiciels propriétaires, comme HCL AppScan et HP Fortify, ainsi que des plateformes de fournisseurs comme Veracode, Checkmarx, Synopsys, Palo Alto Networks et Aqua Security.

Dans la plupart des cas, les organisations feraient mieux de combiner différents types d’outils provenant de différentes sources, a déclaré Aaron Turner, vice-président de Vectra AI, un fournisseur de détection et de réponse aux menaces. “Si vous combinez une plate-forme de test de logiciels avec une sélection d’outils de test de pointe, qu’ils soient open source ou propriétaires, vous pouvez être sûr d’atteindre tous vos objectifs, car il n’y a pas une seule plate-forme qui puisse tout faire.”

Lire aussi  WhatsApp déploie la suppression de l'administrateur sur la version bêta d'iOS

Si le budget est un problème, Worthington recommande de commencer par la version gratuite d’un outil de test, que de nombreux fournisseurs proposent désormais. Par exemple, Snyk, qui est connu pour son outil d’analyse de la composition logicielle, dispose d’une version open source gratuite. Une fois que l’outil s’est avéré utile, l’organisation peut décider de payer pour la version complète.

Conseils d’experts

Connaissez votre équipe et ses capacités avant de plonger dans les tests de sécurité logicielle, a conseillé Kelly.

“Dans de nombreux cas, le développement de logiciels [or evaluation] les équipes sont submergées par les fonctionnalités, les demandes de produits et les méthodologies de déploiement agiles », a expliqué Kelly. “Souvent, ils expédient un nouveau produit chaque semaine, voire chaque jour, et parfois la sécurité passe au second plan. Il vaut la peine de prendre le temps d’analyser réellement quelles applications s’exécutent réellement dans votre environnement aujourd’hui, quels sont leurs risques et quel est le paysage des menaces. Prenez le temps de faire cet inventaire et d’obtenir une base de référence.

Et avant de vous engager dans un outil ou une méthodologie de test, assurez-vous que vous tenez compte de l’importance relative du logiciel dans votre environnement. “Si vous êtes un exploitant de gazoduc et que vous comptez sur un logiciel spécifique pour faire fonctionner le pipeline, vous passerez probablement beaucoup plus de temps et d’efforts à tester ce logiciel de contrôle industriel que vous ne le feriez à tester WordPress, qui gère votre site Web », dit Turner.

Enfin, il est important de suivre l’évolution de la sécurité logicielle. Cela signifie non seulement s’abonner aux blogs et aux podcasts pertinents, mais aussi rester au courant des avis gouvernementaux (par exemple, via l’Agence de sécurité de la cybersécurité et des infrastructures) et Base de données nationale des vulnérabilités du NIST.

A propos de l’auteur

Karen D. Schwartz est une rédactrice spécialisée dans les technologies et les affaires avec plus de 20 ans d’expérience. Elle a écrit sur un large éventail de sujets technologiques pour des publications telles que CIO, InformationWeek, GCN, FCW, FedTech, BizTech, eWeek et Government Executive.

Facebook
Twitter
LinkedIn
Pinterest

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.

ADVERTISEMENT