Open Web Application Security Project
Open Web Application Security Project (OWASP), désormais Open Worldwide Application Security Project, est une communauté en ligne travaillant sur la sécurité des applications Web. Sa philosophie est d'être à la fois libre et ouverte à tous. Elle a pour vocation de publier des recommandations de sécurisation Web et de proposer aux internautes, administrateurs et entreprises des méthodes et outils de référence permettant de contrôler le niveau de sécurisation de ses applications Web.
La fondation OWASP est une organisation caritative enregistrée 501(c)(3) aux États-Unis depuis 2004 et enregistrée en Europe depuis en tant qu’Organisation à but non lucratif qui supporte les infrastructures et projets OWASP. OWASP est aujourd'hui reconnue dans le monde de la sécurité des systèmes d'information pour ses travaux et recommandations liées aux applications Web.
Historique
OWASP a été créé par Mark Curphey le . Jeff Williams a été nommé président bénévole à partir de fin 2003 et a été remplacé par Tobias Gondrom en .
Quatre mois avant la publication du mémo de Bill Gates « trustworthy computing » (qui traitait de la nécessité avec la plus haute priorité d’avoir des systèmes informatiques sécurisés et fiables) la communauté OWASP a été créée en avec pour objectif de donner des éléments, informations et solutions, aux développeurs pour prendre des décisions en matières de sécurisation de leur applications Web[1].
Projets
Les projets les plus connus sont :
Top Ten OWASP
Le but de ce projet est de fournir une liste des dix risques de sécurité les plus critiques dans les applications web, afin d'y sensibiliser les développeurs web. Ce classement fait référence aujourd'hui dans le domaine de la sécurité : il est cité par de nombreux organismes d’audits et de sécurisation des systèmes d’information (DoD, PCI Security Standard). La majorité des audits de sécurité informatique Web est basée sur ce Top Ten.
L'OWASP a renouvelé cette liste en 2010, 2013, 2017 et 2021. La dernière mise à jour publiée est disponible sur le site de l'Owasp Top Ten[2].
Version de 2017
En 2017, les dix failles les plus dangereuses identifiées par OWASP étaient les suivantes[3]:
- Injection : Correspond à l'injection de code dans les applications web (injection SQL, ou dans l'interface système...). Les attaquants cherchent à entrer des données de façon qu'elles soient interprétées comme une commande, leur permettant ainsi d'effectuer des actions non désirées.
- Broken Authentification : Correspond à une mauvaise gestion de l’authentification et de la session, que les attaquants peuvent exploiter pour récupérer mots de passe, clés, jetons de session, ou pour usurper l'identité d'un autre utilisateur.
- Sensitive Data Exposure : Correspond à une mauvaise protection des données sensibles (comme les données personnelles). Ces dernières sont collectées par les attaquants pour effectuer des usurpations d'identité, des vols de cartes de paiement ou autres méfaits.
- XML External Entities (en) ; Les interpréteurs XML obsolètes ou mal configurés évaluent les entités externes déclarées dans un fichier XML, or ces entités peuvent être utilisées pour accéder à des fichiers, scanner des ports ou exécuter du code à distance.
- Broken Access Control ; Il s'agit de défauts dans la gestion des droits d'accès, permettant aux attaquants d'activer des fonctionnalités qui ne sont pas prévues pour eux.
- Security Misconfiguration : Correspond aux failles de configuration liées aux serveurs Web, applications, base de données ou framework.
- Cross-site scripting : Aussi appelée XSS, cette faille concerne les sites où du contenu est produit par les utilisateurs (médias sociaux notamment). Si le site ne vérifie pas les ajouts des utilisateurs, des attaquants peuvent écrire du code malveillant dans une publication, qui sera exécutée par un autre utilisateur à son insu, permettant ainsi le vol de sa session ou sa redirection vers un site frauduleux.
- Insecure Data Deserialization : Une déserialisation (conversion d'une chaîne de caractères en objets) non sécurisée peut permettre à un attaquant d'insérer ses propres objets, et parfois son propre code malveillant, dans une application.
- Using Components with Known Vulnerabilities : Correspond aux failles liées à l’utilisation de composants tiers.
- Insufficient Logging & Monitoring : La plupart des études de brèches de sécurité indiquent que ces brèches ont mis plus de 200 jours à être découvertes, laissant ainsi aux attaquants le temps de l'exploiter pour perfectionner leur emprise sur le système. Les systèmes de surveillance informatique et de logging devraient être capables de détecter des activités suspectes pour alerter au plus tôt.
WebGoat[4]
Il s'agit d'une plateforme de formation permettant à un utilisateur d'apprendre à exploiter les vulnérabilités les plus courantes sur une application Web.
WebScarab[5]
Il s'agit d'un proxy disposant de nombreuses fonctionnalités utiles lors de la réalisation d'audits de sécurité. En plus de proposer à l'utilisateur de visualiser les requêtes échangées avec un serveur Web, il est possible de modifier ces requêtes, d'analyser les session ID, etc.
OWASP Testing Guide[6]
Il s'agit d'un document de plusieurs centaines de pages destiné à aider une personne à évaluer le niveau de sécurité d'une application Web.
OWASP Code Review Guide[7]
Il s'agit d'un document de plusieurs centaines de pages présentant une méthode de revue de code sécurité.
Par ailleurs, OWASP organise régulièrement des meetings un peu partout dans le monde. Durant ces rendez-vous, des intervenants issus du monde de la sécurité présentent un produit, une faille, un projet OWASP, etc.
Notes et références
- « The Start of OWASP – A True Story »
- (en) « OWASP Top Ten Web Application Security Risks | OWASP », sur owasp.org (consulté le )
- « OWASP Top Ten 2017 | Table of Contents | OWASP Foundation », Version web du document de OWASP présentant le Top Ten de 2017 (Voir section "2017 Top Ten" pour une description brève des vulnérabilités), sur owasp.org (consulté le )
- « OWASP WebGoat »
- « OWASP WebScarab »
- « OWASP Testing Guide »
- « OWASP Code Review »