Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

App sec et owasp owasp qc 2019

134 views

Published on

Les applications Web sont des cibles prisées des pirates informatiques, très fréquemment ils s’y faufilent sans être détectés ou arrêtés. Parfois même, ces applications représentent un vecteur par lequel un pirate parvient à une compromission complète des systèmes de mission d’une organisation.
Vol d’informations confidentielles, fraude, bris de disponibilité, falsification des données, sabotage, atteinte à la réputation, sont tous des risques que les organisations doivent tenter de prévenir.
Voici quelques stratégies et outils gratuitement disponibles qui vous aideront à prendre en main efficacement le développement et l’exploitation d’applications sécuritaires.

Published in: Software
  • Be the first to comment

  • Be the first to like this

App sec et owasp owasp qc 2019

  1. 1. Portrait de la sécurité applicative et prise en charge avec les outils OWASP Patrick Leclerc Président du chapitre OWASP Ville de Québec patrick.leclerc@owasp.org OWASP Ville de Québec 19 mars 2019 The OWASP Foundation www.owasp.org
  2. 2. 2 WWW.OWASP.ORG Mondiale / Non-lucrative / Bénévole / « Open source » / Neutre / Indépendante Mission : rendre la sécurité applicative visible + vous permettre de prendre des décisions informées sur les risques de sécurité des applications
  3. 3. Patrick Leclerc 3 Leader du chapitre OWASP Ville de Québec Conseiller en sécurité des actifs informationnels à La Capitale 24 ans d’expérience TI Architecture logicielle et de sécurité  Conseiller en architecture logicielle désormais dédié à la sécurité des applications
  4. 4. Plan de la présentation 4
  5. 5. Qu’est ce que la sécurité applicative? 5
  6. 6. Qu’est ce que la sécurité applicative? 6* Traduit de ISO/CEI 27034-1 (2011) Section 6.1 Définition ISO 27034 (Guide ISO sur la sécurité applicative): « La sécurité applicative est un processus effectué pour appliquer des contrôles et des mesures aux applications d’une organisation afin de gérer le risque de leur utilisation ». « Les contrôles et les mesures peuvent être appliqués à l'application elle-même (ses processus, les composants, les logiciels et résultats), à ses données (données de configuration, les données de l'utilisateur, les données de l'organisation), et à toutes les technologies, les processus et acteurs impliqués dans le cycle de vie de l'application ». La sécurité applicative n’est pas seulement la sécurité de l’application, mais de tout ce qui contribue à son bon fonctionnement
  7. 7. 7 Les statistiques…
  8. 8. Statistiques sur la sécurité applicative 70% des applications comportent au moins une vulnérabilité OWASP top 10 – Veracode 2018 15% des applications Web ont une vulnérabilité critique ou élevée – Edgescan report 2018 96% des applications utilisent du code open source, et 2/3 comportent des vulnérabilités – Black Duck OSSRA Report 2017 55% d’augmentation de brèches causées par du code open source (Equifax avec Appache Struts, OpenSSL Heartbleed, etc) – Sonatype 2018 Le nombre total d'attaques Web a bondi de 25%, année après année – Akamai Q3 2017 Les applications Web sont responsables de plus de 21% des brèches confirmées (au 1ier rang des patterns de brèches) – Verizon DBIR 2018 8
  9. 9. 9 Les impacts…
  10. 10. https://www.ibm.com/security/data-breach • Pertes de confidentialité • Bris d’intégrité • Fraudes • Lourdes pertes financières • Secrets d’entreprises dévoilés Selon une étude de Ponemon Institute (2018) Au Canada:  Coût moyen d’une brèche : 5,78 millions  Coût moyen par identité volée: 255$ Impacts pour l’organisation 10
  11. 11. « Le coût de la cybercriminalité comprend beaucoup plus que la valeur de l'information volée, il comprend aussi : les coûts de l'interruption des activités, les occasions perdues, les frais juridiques, les coûts des rapports, les dommages à la réputation, et les efforts de rétablissement. » http://www.ponemon.org/local/upload/file/Consumer%20Study%20on%20Aftermath%20of%20a%20Breach%20FINAL%202.pdf Autres coûts… 11
  12. 12.  Les applications Web sont déjà au 1 rang des causes des brèches de sécurité…  Et la tendance s’intensifie: + d’applications! + de vulnérabilités dans les applications + d’attaques sur les applications Que retenir de tout ça?  Rappelez-vous: Votre budget de sécurité informatique doit correspondre aux priorités et aux risques de votre entreprise… 12
  13. 13. 13 Pourquoi les applications Web échappent-elles aux mesures de sécurité traditionnelles?
  14. 14. Sécurité du passé… Autrefois: • Sécurité physique et d’infrastructure autour des applications de missions (internes) • Utilisateurs internes, appareils internes sous le contrôle de l’organisation INTERNET + MONDIALISATION DES MARCHÉS 14 Hier: • Applications internes sur le Web avec +/- les mêmes mesures • Dorénavant accessibles à tous : usagers légitimes et pirates! • Souvent les applications ont été développées par des développeurs qui en connaissaient peu sur la sécurité  Perte d’étanchéité du périmètre de sécurité de l’infrastructure… par l’exposition sur Internet d’applications peu sécurisées
  15. 15. PRÉSENTATION WEB TRAITEMENT APPLICATIF DONNÉESCLIENT (fureteur) Protège le transport Chiffrement SSL/TLS Pare-feu Protège le réseau Pare-feu Protège le réseau Pare-feu Protège le réseau Protège le site Web Serveur Web et framework Protège le traitement Application Protège les données Base de données Le problème… 15https://securityintelligence.com/the-10-most-common-application-attacks-in-action/
  16. 16. Réalité d’aujourd’hui… • Ajout de code de sources externes { Code / Composants / Librairies / Scripts } • Déploiement d’applications mobiles ou connectées partout: voitures, « wearable computers », domotique, appareils électroniques et domestiques, etc. • Consommation et échanges de données avec divers partenaires de services • Et nos données circulent à travers toutes ces applications, appareils et partenaires 16  Vos données circulent plus que jamais, et les applications sont au cœur de tout ces échanges!  Le périmètre du passé est complètement explosé!
  17. 17. Autres défis de la sécurité applicative… 17 • Single Page Application (SPA) • Logique applicative déplacée vers le navigateur du client • Plusieurs portes d’accès… plusieurs services à sécuriser (API) • Développement Agile • Vue souvent partielle du système final, difficulté d’avoir une vue d’ensemble des risques de sécurité du(des) système(s) • Cycles de livraison accélérés (DevOps, CI/CD) • Les tests de sécurité doivent être automatisés pour suivre la cadence • Microservices (containers, serverless functions, etc.) • Architectures plus complexes à gérer d’un point de vue sécurité • Le Cloud • Protection des données, gestion des identités, etc.
  18. 18. 18
  19. 19. Les 10 risques les plus critiques des applications Web 19
  20. 20. OWASP Top 10 2017 : Fiches explicatives 20https://www.owasp.org/index.php/Category:OWASP_Top_Ten_Proje Vulnérabilités • Menaces et vecteurs d’attaque • Impacts Niveaux de risques: Explications: • Application vulnérable? • Comment prévenir • Exemples d’attaque • Références et compléments d’information
  21. 21. OWASP Top 10 : Risques des applications Web https://www.owasp.org/index.php/Category:OWASP_Top_Ten_Proje 21
  22. 22. OWASP Top 10 2017 22 A1 Injection A6 Mauvaise configuration de sécurité A2 Contournement des mécanismes de gestion d’authentification et de session A7 Cross-Site Scripting (XSS) A3 Exposition de données sensibles A8 Désérialisation non sécuritaire A4 Entités XML eXternes (XXE) A9 Utilisation de composants avec des vulnérabilités connues A5 Contournement des contrôles d’accès A10 Journalisation et surveillance insuffisantes https://www.owasp.org/index.php/Category:OWASP_Top_Ten_Proje
  23. 23. 2 semaines d’hacking éthique 10 années-personnes de développement Lacunes dans la logique d’affaire Lacunes dans le code Erreurs de sécurité 23
  24. 24. Intégrer la sécurité dans le cycle de développement 24
  25. 25. Évidence:  Prise en charge des enjeux de sécurité plus tôt et tout au long du cycle de développement Approche prônée par OWASP, NIST, Microsoft et plusieurs autres organisations Observation: Les coûts reliés aux corrections des vulnérabilités augmentent de façon exponentielle plus les vulnérabilités sont découvertes tardivement dans le cycle de développement… Sécurité dans le cycle de développement 25Source: Official (ISC)2 Guide to the CSSLP : NIST: The Economic Impacts of Inadequate Infrastructure for
  26. 26. Phases d’un cycle simplifié… 26
  27. 27. OWASP SAMM (Software Assurance Maturity Model) 27https://www.owasp.org/index.php/Category:Software_Assurance_Maturity_Model • Méthodologie aidant à définir une approche adaptée de prise en charge de la sécurité applicative en fonction du contexte particulier et des risques de l’organisation • Couvre le cycle de vie des applications • Modèles de prise en charge en fonction de votre industrie • Adaptable et mesurable • Approche logique et pragmatique 4 domaines
  28. 28. • 3 disciplines par domaine de sécurité, chaque discipline incorpore des activités de sécurité (environ de 5-7 chacune) • Les disciplines couvrent toute la surface de l’assurance sécurité des applications SAMM – Disciplines de sécurité 28https://www.owasp.org/index.php/Category:Software_Assurance_Maturity_Model
  29. 29. SAMM – Questionnaire de maturité 29https://www.owasp.org/index.php/Category:Software_Assurance_Maturity_Model
  30. 30. SAMM – Plan de prise en charge 30  Choisir le modèle d’industrie qui vous correspond  Comparer et définir votre cible  Plan : Amélioration sur plusieurs phases • Enchaînement logique en fonction des interrelations et dépendances des activités • Jusqu’à la maturité désirée https://www.owasp.org/index.php/Category:Software_Assurance_Maturity_Model
  31. 31. Intégration d’activités de sécurité Formation Programme assurance sécurité Catégorisation des données et applications Guide politiques et conformité Rôles et responsabilités Modélisation des menaces Exigences de sécurité Architecture de sécurité Revue de conception Vérifications du code Tests d’intrusion périodiques Guide sécurité opérationnelle Tests d’intrusion préproduction Gestion des vulnérabilités Durcissement environnement Analyse de risque 31
  32. 32. Autres outils OWASP 32
  33. 33. OWASP Pro Active Controls Techniques de base à implanter pour prévenir les vulnérabilités du OWASP Top 10 À utiliser complètement dans toutes les applications Écrit pour les développeurs par des développeurs 33https://www.owasp.org/index.php/OWASP_Proactive_Controls C1 Définir les requis de sécurité C2 Promouvoir les librairies et plateformes sécurisées C3 Sécuriser les bases de données C4 Encoder et échapper les données C5 Valider tous les intrants C6 Authentifier les identités C7 Contrôler les accès C8 Protéger partout les données sensibles C9 Implémenter et surveiller les journaux de sécurité C10 Gérer toutes les erreurs et exceptions  Utile pour tous les gens impliqués dans développement logiciel Exigences de sécurité Architecture de sécurité
  34. 34. OWASP Cheat Sheets (Aide-mémoire) 34https://www.owasp.org/index.php/Cheat_Sheets Modélisation des menaces Architecture de sécurité Tests d’intrusion Durcissement environnement Vérifications du code Revue de conception
  35. 35. OWASP Application Security Verification Standard 35https://www.owasp.org/index.php/Category:OWASP_Application_Security_Verification_Standard_Project Exigences de sécurité Revue de conception
  36. 36. OWASP Security Knowledge Framework 36https://www.owasp.org/index.php/OWASP_Security_Knowledge_Framework Base de connaissance de sécurité applicative • Descriptions et guides d’implémentation sur • Principes de développement sécuritaire • Fonctionnalités de sécurité • Vulnérabilités et problèmes communs • Exemples de code pour plusieurs fonctions de sécurité! • Génération de listes vérifications (ASVS/MASVS) • Selon votre niveau ASVS à atteindre • En fonction des fonctionnalités que vous devez développer Formation Exigences de sécurité
  37. 37. OWASP Dependency-Check Utilitaire permettant d’analyser les applications et les librairies externes et de vérifier si elles contiennent des vulnérabilités connues dans la base de données du NIST Java .NET Ruby Node.js Python C/C++ 37https://www.owasp.org/index.php/OWASP_Dependency_Check Gestion des vulnérabilités
  38. 38. OWASP Dependency-Track Utilitaire permettant de garder trace des composants tiers utilisés de toutes les applications qu’une organisation utilise (vision globale) Surveille toutes les applications de son portefeuille afin d'identifier proactivement les vulnérabilités des composants 38https://www.owasp.org/index.php/OWASP_Dependency_Track_Project Gestion des vulnérabilités • Conçu pour être utilisé dans un environnement DevOps automatisé • Offre une vue des projets à risque • Vulnérabilités / projet • Quelle vulnérabilité affecte quel(s) projet(s)
  39. 39. Guide pour implanter une activité de revue de code: • Explique la méthodologie et processus • Couvre le OWASP Top 10 (2013) en détail avec plusieurs exemples • Comprend une liste de vérification • Exemples de modélisation des menaces https://www.owasp.org/images/5/53/OWASP_Code_Review_Guide_v2.pdf OWASP Code Review Guide Vérifications du code Modélisation des menaces Rôles et responsabilités 39
  40. 40. OWASP ZAP 40https://www.owasp.org/index.php/OWASP_Zed_Attack_Proxy_Project Vérifications du code Tests d’intrusion
  41. 41. OWASP Security Shepherd & WebGoat 2 plateformes d’apprentissage de sécurité applicative • OWASP Security Shepherd new v3.1! • Applications Web et mobiles • Leçons et « challenges » • 70 niveaux (de novice à expert) • Parfait pour les classes et les tournois CTF • OWASP WebGoat new v8! • Application Java délibérément non sécurisée • Focus sur l’apprentissage « Find and Fix » • Leçons et indices • « Challenges » réalistes 41https://www.owasp.org/index.php/OWASP_Security_Shepherd https://www.owasp.org/index.php/Webgoat Tests d’intrusion Formation
  42. 42. OWASP Juice Shop  Application faite en JavaScript  Node.js, Express, Angular  60+ challenges (de simple à diabolique)  Possibilité de faire des CTF (custom)  Progrès sur un tableau de pointage  La BD se répare à chaque redémarrage  Moins orienté « leçons » que WebGoat et Security Shepherd  Communauté très active 42https://www.owasp.org/index.php/OWASP_Juice_Shop_Project Tests d’intrusion Formation
  43. 43. OWASP ModSecurity Core Rule Set 43https://www.owasp.org/index.php/Category:OWASP_ModSecurity_Core_Rule_Set_Project Règles de détection d'attaque génériques pour pare-feu applicatif (WAF) ModSecurity (open-source) ou compatibles • Protection OWASP Top 10 et + • Réputation IP malicieux • DoS pour les applications • Détection des scanners • Détection d’injection de commande OS • 4 niveaux de paranoïa • Réduction des faux positifs • Attention: Faux positifs augmentent avec le niveau de paranoïa  DevOps: intégrez-le dans les tests de votre le pipeline! Durcissement environnement
  44. 44. OWASP ModSecurity Core Rule Set 44https://www.owasp.org/index.php/Category:OWASP_ModSecurity_Core_Rule_Set_Project
  45. 45. OWASP ModSecurity Core Rule Set 45 INDICATIONS : Pour le soulagement rapide des symptômes de vos applications Web affectées par des vulnérabilités applicatives. Offre une couche de protection supplémentaire pour défendre les applications Web. POSOLOGIE : Incorporer le « Core Rule Set » à vos pare- feux. Réadministrer sans tarder à chaque mise à jour. INGRÉDIENTS ACTIFS: Ensemble de règles de détection d’attaques pour le pare-feu applicatif « open source » et multiplateforme « ModSecurity ». MISE EN GARDE : Peut procurer un faux sentiment de sécurité. Ne constitue pas un remède à la correction de vos applications. Durcissement environnement
  46. 46. Présentations gratuites: 2019 • Concevoir et implémenter un plan de formation / sensibilisation à la sécurité 2018 • Survol de la sécurité de Microsoft Azure • Pourquoi le SPA (Single Page Application) est faillible? • Introduction OAuth 2.0 et OpenId Connect 1.0 • La sécurité dans un environnement docker / kubernetes / cloud avec microservices • Explication des nouveaux risques "OWASP Top 10 2017« • La sécurité web pour les développeurs .NET 2017 • Comment intégrer la sécurité dans un cycle de développement logiciel rapide • Comprendre l'usage de la crypto pour les développeurs • Comment bien gérer les incidents de sécurité • Outils de modélisation des menaces • Les logiciels malveillants et les objets connectés (IoT) • Rétro-ingénierie de protocoles crypto • … Chapitre « OWASP Quebec City » 46 Partenariats : • SeQCure 2019 • Journée ISACA-Québec 2018 • Hackfest (2012-2018) • CTF OWASP (2014-2018) • Conférence Top 10 Web defenses (2012) • CQSI 2015 et 2018 • JSEC applicative Université Laval 2017 • Semaine Numériqc de Québec 2016 • 2014 International Conference on Corporate Espionage and Industrial Security (ICCE)… https://www.owasp.org/index.php/Quebec_City
  47. 47. 47 1.Budgéter et intégrer la sécurité tôt dans votre cycle de développement 2.Avec tout le matériel OWASP disponible gratuitement, vous n’avez aucune raison de ne pas savoir que faire!
  48. 48. Devenir membre pour un don annuel de: • Individuel $50 USD • Corporatif $5000 USD Permet à OWASP d’offrir tout le matériel gratuit et de continuer de supporter les initiatives: • Projets et outils • Conférences • Podcasts, videos, bourses et coordination des activités mondiales… Pour devenir membre ou contribuer 48https://www.owasp.org/index.php/Membership
  49. 49. Merci! patrick.leclerc@owasp.org OWASP Québec https://www.owasp.org/index.php/Quebec_City 49

×