Qu'est-ce que les tests de sécurité? Types avec exemple

Table des matières:

Anonim

Qu'est-ce que les tests de sécurité?

LE TEST DE SÉCURITÉ est un type de test de logiciel qui découvre les vulnérabilités, les menaces, les risques dans une application logicielle et empêche les attaques malveillantes des intrus. Le but des tests de sécurité est d'identifier toutes les lacunes et faiblesses possibles du système logiciel qui pourraient entraîner une perte d'informations, de revenus, de réputation de la part des employés ou des personnes extérieures à l'Organisation.

Pourquoi les tests de sécurité sont-ils importants?

L'objectif principal des tests de sécurité est d'identifier les menaces dans le système et de mesurer ses vulnérabilités potentielles, afin que les menaces puissent être rencontrées et que le système n'arrête pas de fonctionner ou ne puisse pas être exploité. Il aide également à détecter tous les risques de sécurité possibles dans le système et aide les développeurs à résoudre les problèmes grâce au codage.

Dans ce didacticiel, vous apprendrez-

  • Qu'est-ce que les tests de sécurité?
  • Types de tests de sécurité
  • Comment faire des tests de sécurité
  • Exemples de scénarios de test pour les tests de sécurité
  • Méthodologies / approche / techniques pour les tests de sécurité
  • Rôles de test de sécurité
  • Outil de test de sécurité
  • Mythes et faits des tests de sécurité

Types de tests de sécurité:

Il existe sept principaux types de tests de sécurité selon le manuel de méthodologie de test de sécurité Open Source. Ils sont expliqués comme suit:

  • Analyse des vulnérabilités : cette opération est effectuée via un logiciel automatisé pour analyser un système par rapport aux signatures de vulnérabilité connues.
  • Analyse de sécurité: elle consiste à identifier les faiblesses du réseau et du système, puis fournit des solutions pour réduire ces risques. Cette analyse peut être effectuée à la fois pour une analyse manuelle et automatisée.
  • Test de pénétration : ce type de test simule une attaque d'un pirate informatique malveillant. Ce test implique l'analyse d'un système particulier pour vérifier les vulnérabilités potentielles à une tentative de piratage externe.
  • Évaluation des risques: ce test implique l'analyse des risques de sécurité observés dans l'organisation. Les risques sont classés comme faibles, moyens et élevés. Ce test recommande des contrôles et des mesures pour réduire le risque.
  • Audit de sécurité: il s'agit d'une inspection interne des applications et des systèmes d'exploitation pour détecter les failles de sécurité. Un audit peut également être réalisé via l'inspection ligne par ligne du code
  • Piratage éthique: il s'agit de pirater les systèmes d'un logiciel d'organisation. Contrairement aux pirates malveillants, qui volent pour leurs propres gains, l'intention est d'exposer les failles de sécurité du système.
  • Évaluation de la posture: Cela combine l'analyse de sécurité, le piratage éthique et les évaluations des risques pour montrer la position de sécurité globale d'une organisation.

Comment faire des tests de sécurité

Il est toujours convenu que ce coût sera plus élevé si nous reportons les tests de sécurité après la phase de mise en œuvre du logiciel ou après le déploiement. Il est donc nécessaire d'impliquer des tests de sécurité dans le cycle de vie du SDLC dans les phases précédentes.

Examinons les processus de sécurité correspondants à adopter pour chaque phase de SDLC

Phases SDLC Processus de sécurité
Conditions Analyse de sécurité pour les exigences et vérification des cas d'abus / utilisation abusive
Conception Analyse des risques de sécurité pour la conception. Développement d'un plan de test comprenant des tests de sécurité
Codage et tests unitaires Tests statiques et dynamiques et tests de sécurité en boîte blanche
Test d'intégration Test de la boîte noire
Test du système Test de la boîte noire et analyse des vulnérabilités
Mise en œuvre Test de pénétration, analyse de vulnérabilité
Soutien Analyse d'impact des patchs

Le plan de test doit inclure

  • Cas de test ou scénarios liés à la sécurité
  • Données de test liées aux tests de sécurité
  • Outils de test requis pour les tests de sécurité
  • Analyse des différents résultats de tests de différents outils de sécurité

Exemples de scénarios de test pour les tests de sécurité:

Exemples de scénarios de test pour vous donner un aperçu des cas de test de sécurité -

  • Un mot de passe doit être au format crypté
  • L'application ou le système ne doit pas autoriser les utilisateurs non valides
  • Vérifiez les cookies et le temps de session pour l'application
  • Pour les sites financiers, le bouton de retour du navigateur ne devrait pas fonctionner.

Méthodologies / approche / techniques pour les tests de sécurité

Dans les tests de sécurité, différentes méthodologies sont suivies, et elles sont les suivantes:

  • Tiger Box : Ce piratage est généralement effectué sur un ordinateur portable doté d'une collection de systèmes d'exploitation et d'outils de piratage. Ces tests aident les testeurs d'intrusion et les testeurs de sécurité à mener des évaluations de vulnérabilités et d'attaques.
  • Black Box : Tester est autorisé à faire des tests sur tout ce qui concerne la topologie du réseau et la technologie.
  • Gray Box : Des informations partielles sont données au testeur sur le système, et il s'agit d'un hybride de modèles de boîtes blanches et noires.

Rôles de test de sécurité

  • Hackers - Accéder au système informatique ou au réseau sans autorisation
  • Crackers - Pénétrez dans les systèmes pour voler ou détruire des données
  • Ethical Hacker - Effectue la plupart des activités de rupture mais avec la permission du propriétaire
  • Script Kiddies ou packet monkeys - Hackers inexpérimentés avec des compétences en langage de programmation

Outil de test de sécurité

1) intrus

Intruder est un scanner de vulnérabilité de niveau entreprise facile à utiliser. Il exécute plus de 10000 contrôles de sécurité de haute qualité sur votre infrastructure informatique, qui incluent, mais sans s'y limiter: les faiblesses de configuration, les faiblesses des applications (telles que l'injection SQL et les scripts intersites) et les correctifs manquants. Fournissant des résultats hiérarchisés intelligemment ainsi que des analyses proactives des dernières menaces, Intruder permet de gagner du temps et de protéger les entreprises de toutes tailles contre les pirates.

Caractéristiques:

  • Connecteurs AWS, Azure et Google Cloud
  • Résultats spécifiques au périmètre pour réduire votre surface d'attaque externe
  • Rapports de haute qualité
  • Intégrations Slack, Microsoft Teams, Jira, Zapier
  • Intégration d'API avec votre pipeline CI / CD

2) Chouette

L'Open Web Application Security Project (OWASP) est une organisation mondiale à but non lucratif qui se concentre sur l'amélioration de la sécurité des logiciels. Le projet dispose de plusieurs outils pour tester au stylet divers environnements et protocoles logiciels. Les outils phares du projet comprennent

  1. Zed Attack Proxy (ZAP - un outil de test de pénétration intégré)
  2. OWASP Dependency Check (il analyse les dépendances du projet et vérifie les vulnérabilités connues)
  3. Projet d'environnement de test Web OWASP (collection d'outils de sécurité et de documentation)

3) WireShark

Wireshark est un outil d'analyse de réseau anciennement connu sous le nom d'Ethereal. Il capture les paquets en temps réel et les affiche dans un format lisible par l'homme. Fondamentalement, il s'agit d'un analyseur de paquets réseau - qui fournit les détails minutieux sur vos protocoles réseau, le décryptage, les informations sur les paquets, etc. C'est une source ouverte et peut être utilisé sous Linux, Windows, OS X, Solaris, NetBSD, FreeBSD et bien d'autres. d'autres systèmes. Les informations récupérées via cet outil peuvent être visualisées via une interface graphique ou l'utilitaire TShark en mode TTY.

4) W3af

w3af est un framework d'attaque et d'audit d'application Web. Il a trois types de plugins; découverte, audit et attaque qui communiquent entre eux pour toute vulnérabilité du site, par exemple un plugin de découverte dans w3af recherche différentes URL pour tester les vulnérabilités et les transmet au plugin d'audit qui utilise ensuite ces URL pour rechercher des vulnérabilités.

Mythes et faits des tests de sécurité:

Parlons d'un sujet intéressant sur les mythes et les faits des tests de sécurité:

Mythe n ° 1 Nous n'avons pas besoin d'une politique de sécurité car nous avons une petite entreprise

Réalité: tout le monde et chaque entreprise ont besoin d'une politique de sécurité

Mythe n ° 2 Il n'y a pas de retour sur investissement dans les tests de sécurité

Réalité: Les tests de sécurité peuvent identifier les domaines à améliorer qui peuvent améliorer l'efficacité et réduire les temps d'arrêt, permettant un débit maximal.

Mythe n ° 3 : Le seul moyen de sécuriser est de le débrancher.

Réalité: La seule et la meilleure façon de sécuriser une organisation est de trouver «Perfect Security». Une sécurité parfaite peut être obtenue en effectuant une évaluation de la posture et en la comparant aux justifications commerciales, juridiques et industrielles.

Mythe n ° 4 : Internet n'est pas sûr. J'achèterai des logiciels ou du matériel pour protéger le système et sauver l'entreprise.

Réalité: L'un des plus gros problèmes est d'acheter des logiciels et du matériel pour la sécurité. Au lieu de cela, l'organisation doit d'abord comprendre la sécurité, puis l'appliquer.

Conclusion:

Les tests de sécurité sont les tests les plus importants pour une application et vérifient si les données confidentielles restent confidentielles. Dans ce type de test, le testeur joue le rôle de l'attaquant et joue autour du système pour trouver des bogues liés à la sécurité. Les tests de sécurité sont très importants en génie logiciel pour protéger les données par tous les moyens.