Test de sécurité - Service Web

Dans les applications Web modernes, l'utilisation des services Web est inévitable et ils sont également sujets aux attaques. Étant donné que les services Web demandent à être récupérés auprès de plusieurs sites Web, les développeurs doivent prendre quelques mesures supplémentaires afin d'éviter tout type de pénétration par des pirates.

Mains allumées

Step 1- Accédez à la zone des services Web de Webgoat et accédez à Analyse WSDL. Nous devons maintenant obtenir les détails de la carte de crédit d'un autre numéro de compte. Un instantané du scénario est indiqué ci-dessous.

Step 2 - Si nous sélectionnons le prénom, l'appel de la fonction 'getFirstName' est effectué via la requête SOAP xml.

Step 3- En ouvrant le WSDL, nous pouvons voir qu'il existe une méthode pour récupérer les informations de carte de crédit ainsi que «getCreditCard». Maintenant, laissez-nous trafiquer les entrées en utilisant la suite Burp comme indiqué ci-dessous -

Step 4 - Modifions maintenant les entrées en utilisant la suite Burp comme indiqué ci-dessous -

Step 5 - Nous pouvons obtenir les informations de carte de crédit d'autres utilisateurs.

Mécanismes préventifs

  • Étant donné que les messages SOAP sont basés sur XML, toutes les informations d'identification transmises doivent être converties au format texte. Il faut donc être très prudent en transmettant les informations sensibles qui doivent toujours être cryptées.

  • Protéger l'intégrité des messages en mettant en œuvre des mécanismes tels que la somme de contrôle appliquée pour garantir l'intégrité du paquet.

  • Protection de la confidentialité des messages - Un cryptage asymétrique est appliqué pour protéger les clés de session symétriques, qui dans de nombreuses implémentations ne sont valides que pour une seule communication et sont ensuite rejetées.