Vulnérabilités les plus courantes des applications Web

Selon les statistiques de l’organisation OpenWeb Application Security Projectde l’OWASP, qui s’occupe de la sécurité des applications Web, dix des failles de sécurité les plus courantes peuvent être mis en évidence. Les graphiques ci-dessous montrent la fréquence de détection de ces vulnérabilités lors de l’évaluation initiale des risques par l’organisation d’étude de sécurité des applications Web Veracode.

Fréquence de détection des vulnérabilités de la liste OWASP Top 10 lors de l’évaluation initiale des risques par Veracode Fréquence de détection des vulnérabilités dans le Top 10 de l’OWASP lors de l’évaluation initiale des risques par Veracode. Source: [Veracode]

Les vulnérabilités les plus courantes citées ci-dessus selon l’OWASP sont les suivantes:

  1. Vulnérabilités consistant à injecter des données non fiables dans un interpréteur de code dans le cadre d’une commande ou d’une requête (SQLi, OS, XXE, . Un attaquant peut déjouer un interprète pour exécuter des commandes imprévues ou accéder à des données sans autorisation appropriée.
  2. Mécanismes d’authentification et de gestion de session mal mis en œuvre. Cela permet à un attaquant de compromettre les mots de passe, les clés, les jetons de session ou de prendre en charge l’identité d’un autre utilisateur de l’application.
  3. Cross-site scripting (XSS), c’est-à-dire une attaque consistant à injecter du code JavaScriptattaqué dans le contenu d’une page . Il peut être utilisé pour prendre en charge des sessions utilisateur, rediriger vers un site web dangereux ou des attaques sociotechniques.
  4. Des mécanismes de contrôle d’accès défectueux concernant les autorisations et les ressources auxquelles un utilisateur du système a accès. Un attaquant peut exploiter ce type de vulnérabilité pour accéder à des fonctionnalités non autorisées ou à des données sensibles, ainsi que pour accéder aux comptes d’autres utilisateurs.
  5. Paramètres de sécurité incorrects – pour sécuriser correctement le système, les paramètres appropriés sont définis et mis en œuvre pour l’application, l’infrastructure, le serveur d’applications, le serveur de base de données, la plate-forme, etc. En outre, le logiciel doit être régulièrement mis à jour.
  6. Partage de données sensibles – de nombreuses applications Web et API ne protègent pas correctement les données sensibles telles que les données financières, médicales ou personnelles. Un attaquant peut voler ou modifier des informations aussi mal protégées et les utiliser pour frauduler une carte de crédit, voler son identité ou commettre d’autres crimes. Les données sensibles devraient être protégées par cryptage lors du transfert et du stockage.
  7. Protection inadéquate contre les attaques – de nombreux systèmes ne disposent pas de capacités de base pour détecter, prévenir et réagir aux attaques manuelles et automatisées. Des mécanismes doivent être mis en place qui vont au-delà des mécanismes de validation des entrées de base et qui comprennent également la détection automatique, l’enregistrement et même le blocage des tentatives d’attaques. En outre, les propriétaires d’applications doivent pouvoir facilement utiliser des correctifs de sécurité.
  8. Cross-Site Request Forgery (CSRF)– consiste à forcer le navigateur de l’utilisateur à envoyer une requête au serveur dans le contexte de cet utilisateur. Il permet ainsi de contraindre la victime à effectuer une action non autorisée, par exemple en changeant de mot de passe, en édant un virement.
  9. Utilisation de composants dont la vulnérabilité est connue : des composants tels que les bibliothèques, les cadres et d’autres modules utilisés dans le logiciel fonctionnent avec les mêmes autorisations que l’application elle-même. Si un composant vulnérable est compromis, une telle attaque peut entraîner une grave menace pour les données ou pour l’ensemble du système. Les applications qui utilisent des composants avec des vulnérabilités connues peuvent supprimer la couche de protection de l’application en l’ouvrant à toutes sortes d’attaques.
  10. API non sécurisées : en plus des fonctionnalités de base, les applications modernes fournissent souvent des API pour communiquer avec elles (SOAP/CV, REST/JSON, RPC, GWT, etc.). Ces interfaces ne sont souvent pas sécurisées et contiennent de nombreuses vulnérabilités.

Chcesz wiedzieć więcej?

Zapisz się i bądź informowany o nowych postach (zero spamu!). <br> Dodatkowo otrzymasz, moją prywatną listę 15 najbardziej przydatnych narzędzi (wraz z krótkim opisem), których używam przy testach penetracyjnych.

Nigdy nie podam, nie wymienię ani nie sprzedam Twojego adresu e-mail. W każdej chwili możesz zrezygnować z subskrypcji.

Pour marque-pages : Permaliens.

Podziel się swoją opinią na temat artykułu