Assurance qualité manuelleTesteur, QA

Comment effectuer un test de sécurité manuel d'une application web ? Quelles vulnérabilités doivent être vérifiées et comment documenter les problèmes trouvés ?

Réussissez les entretiens avec l'assistant IA Hintsage

Réponse.

Historique de la question

Avec la hausse du nombre d'attaques cybernétiques, l'accent sur le test de sécurité s'est accentué. Même pour les testeurs manuels, il est important de savoir trouver des vulnérabilités standard.

Problème

Souvent, les testeurs manuels considèrent les questions de sécurité comme étant uniquement de la responsabilité des automateurs ou des spécialistes de la sécurité. Cela conduit à manquer des bogues élémentaires, fatals pour l'entreprise.

Solution

Le test manuel de sécurité consiste à essayer de reproduire des attaques potentielles du point de vue d'un utilisateur ordinaire :

  • Vérification de XSS, SQL Injection, CSRF.
  • Manipulations de cookies et de sessions.
  • Tentatives de contournement des autorisations et des restrictions d'accès.

Tous les problèmes trouvés doivent absolument être documentés selon le modèle "Rapport de bogue" avec une description détaillée de l'étape, le résultat attendu et effectif, ainsi que le niveau de criticité.

Caractéristiques clés :

  • Utilisation de techniques manuelles simples (modification des paramètres dans l'URL, tentatives d'insertion de valeurs dangereuses).
  • Vérification des vulnérabilités standard du OWASP Top 10.
  • Nécessité de communiquer avec DevOps/Backend pour clarifier comment les erreurs sont gérées et quels journaux sont générés.

Questions pièges.

Peut-on découvrir manuellement toutes les vulnérabilités critiques d'une application ?

Non. L'approche manuelle permet de trouver des vulnérabilités évidentes, mais une couverture complète nécessite des scanners automatisés et un pentest.

Est-il suffisant de vérifier uniquement le formulaire de connexion et de mot de passe pour le test de sécurité ?

Non. Tous les modules fonctionnels doivent être vérifiés, en particulier ceux qui modifient/enregistrent des données, les interactions avec l'API, les téléchargements de fichiers et les opérations sur les droits d'accès.

Le testeur doit-il comprendre les requêtes et réponses HTTP lorsqu'il s'agit d'un test de sécurité manuel ?

Oui. Travailler avec des outils comme DevTools, Postman ou Fiddler est la clé pour détecter manuellement les problèmes de sécurité.

Erreurs typiques et anti-patterns

  • La vérification de la sécurité se limite à la connexion et à l'inscription.
  • Ignorer les vulnérabilités si elles n'ont pas pu être exploitées immédiatement.
  • Ne pas documenter les vulnérabilités trouvées en violant les normes des rapports de bogues.

Exemple de la vie réelle

Cas négatif

Le testeur a vérifié uniquement la connexion au système pour des XSS, sans tester les autres formulaires utilisateurs et paramètres URL.

Avantages :

  • Test d'urgence effectué rapidement.

Inconvénient :

  • Vulnérabilité critique manquée dans le profil utilisateur, où une injection SQL pouvait être exécutée.

Cas positif

Le testeur a vérifié systématiquement tous les formulaires d'entrée, a modifié les paramètres dans les requêtes, a décrit en détail les découvertes dans le rapport de bogue, et a contacté DevOps pour des conseils sur la gestion des erreurs.

Avantages :

  • XSS non évidente et vulnérabilité d'accès aux données détectées.
  • Transparence totale du problème pour l'équipe.

Inconvénients :

  • Plus de temps consacré à ce test, mais confiance accrue dans la qualité.