SlideShare une entreprise Scribd logo
1  sur  44
Télécharger pour lire hors ligne
Security Stories
Comment intégrer la sécurité dans
un cycle de développement logiciel
rapide
Plan de la présentation
• Qui suis-je?
• Qu’est-ce que Bentley Systems?
• Introduction
• «Security Stories»
– L’approche de Bentley Systems
• Comment intégrer les «Security Stories»
– L’approche de Bentley Systems
• Conclusion
Qui suis-je?
• Guillaume Croteau Ing. Jr.
• Bac. Génie Logiciel, Université Laval
• GIAC-GWEB
• Travail dans l’équipe de sécurité
applicative chez Bentley Systems
depuis presque 2 ans
Qu’est-ce que Bentley Systems?
Qu’est-ce que Bentley Systems?
Introduction
Introduction
• La plupart des organisations se contentent de
faire un «pentest» une fois de temps en temps
alors que le produit est prêt à être déployé.
• Réaction des développeurs:
Introduction
• Résultat: introduction de dettes techniques
par rapport à la sécurité.
Introduction
• Effectuer la sécurité plus tôt est un
investissement.
Introduction
• Une solution: envoyer la sécurité le plus à
gauche possible dans le cycle de
développement.
– Non seulement pour le design, mais aussi pour le
développement continu.
– DevOps parle de «Shift-Left»
• Mais comment?
Security Stories
Security Stories
• Les «Security Stories» proviennent d’une
publication de SAFECode: «Practical Security
Stories and Security Tasks for Agile
Development Environments»
Security Stories
• Intégrer la sécurité dans le processus utilisé par les
développeurs: Agile
• Ajouter des tâches et/ou des fonctionnalités par
rapport à la sécurité dans le «backlog»
– Prioriser la sécurité comme le reste du «backlog»
• Standardise l’implémentation
• Sauver du temps: faire la recherche une seule fois
• Sauver de l’argent: faire la sécurité plus tôt dans le
cycle de développement
– «Story» tôt au lieu d’un bogue plus tard
Security Stories
• Sécurité «baked in» vs «bolted on»
Security Stories
• La structure proposée par SAFECode:
Security Stories – L’approche de
Bentley Systems
Security Stories – L’approche de
Bentley Systems
• Au lieu de spécifier des rôles, les tâches sont
séparées par type.
– Architecture
– Implémentation
– Vérification
• Raisons:
– Une personne peut couvrir plusieurs rôles dans une
équipe.
– Plus facile de savoir quand exécuter une tâche.
Security Stories – L’approche de
Bentley Systems
• Les développeurs se sont plaints que les
«stories» proposées par SAFECode sont trop
générales.
– Ex: «Use one of the many available librairies and
frameworks that takes CSRF into account.»
Security Stories – L’approche de
Bentley Systems
• Amélioration des tâches:
– Ajout de tâches qui sont spécifiques à certaines
technologies.
• Ex: Protection contre le CSRF avec ASP.NET
– Ajout de détails
• Ex: Lien vers une ressource externe
– Ajout de notes
• Ex: Cette tâche ne s’applique pas si votre contexte est
[contexte]
– Ajout d’exemples
• Ex: Voici un exemple de «whitelist» [la «whitelist»]
Security Stories – L’approche de
Bentley Systems
• Système de «tag» adapté à la structure de nos
«backlog» pour bien identifier les tâches.
– Métriques
– Identification rapide des tâches liées à la sécurité
– Etc.
• Ne pas limiter les références aux CWE:
– SANS Top 25
– OWASP Top 10
– CAPEC
– RFC
– Etc.
Security Stories – L’approche de
Bentley Systems
• SAFECode ne propose que seulement 36
«stories»
– Ajout de «stories» manquantes et d’autres qui
sont spécifiques à notre contexte.
• Ex: CORS (manquante)
• Ex: OpenID et OAuth 2.0 (spécifique)
– Bentley Systems à maintenant plus de 70
«stories», et ce nombre continu à augmenter.
Security Stories – L’approche de
Bentley Systems
• Il est possible d’organiser les «stories» par groupe:
– Par concept:
• Cryptographie
• Web
• Autorisation
• Authentification
• Etc.
– Par OWASP Top 10
• 2013
• 2017
– Par SANS Top 25
– Etc.
Security Stories – L’approche de
Bentley Systems
• Exemple personnalisé:
• [Security Story] I want to verify graceful handling of all
exceptions.
• [Security Task] Ensure there is no information exposure
through error messages
– Note: Do not use the client to hide server-side error details
– ASP.NET
• Enable customErrors in Web.config
– Java Servlet
• Error handling in Java web.xml
Security Stories – L’approche de
Bentley Systems
Comment intégrer les «Security Stories»
Comment intégrer les «Security
Stories»
• Accès publique aux «Security Stories»
– Base de données
– Intranet
– SharePoint
– Etc.
• Automatiser l’intégration des tâches dans le
«backlog».
– Éviter le copier-coller à partir de la source
d’information.
Comment intégrer les «Security
Stories»
• Si la compagnie est petite:
– Un membre de l’équipe de sécurité applicative peut
guider l’équipe à choisir les tâches appropriées à
chaque sprint.
• Le «Threat Modeling» peut aider à identifier les
dangers potentiels, pour ensuite sélectionner les
bonnes tâches.
– «Threat model» au niveau de la fonctionnalité
• Par contre, si la compagnie est grande…?
Intégrer les «Security Stories» -
L’approche de Bentley Systems
Intégrer les «Security Stories» -
L’approche de Bentley Systems
• Bentley Systems:
– > 3000 employés
– Compagnie internationale
– +/- 500 produits actifs
– Centaines de champions de sécurité
– 10 membres permanent dans l’équipe de sécurité
applicative
Intégrer les «Security Stories» -
L’approche de Bentley Systems
• Approche «Security as a Service»
– Développent d’une application web interne. Cette
application s’inspire fortement des produits IriusRisk
et SD Elements.
– «Threat model» (du produit ou de la fonctionnalité)
basé sur un questionnaire interne.
– Avoir 80% des résultats d’un «threat model» complet
en 20% du temps.
– Accessible à tous les champions de sécurité de la
compagnie («scalable»)
– Niveau de connaissance requis en sécurité minimal
Intégrer les «Security Stories» -
L’approche de Bentley Systems
• Une fois le questionnaire rempli, il est analysé
et un rapport est généré.
– Ce rapport dirige le champion de sécurité vers les
«security stories» qui sont pertinentes selon les
réponses fournies.
Intégrer les «Security Stories» -
L’approche de Bentley Systems
Intégrer les «Security Stories» -
L’approche de Bentley Systems
Intégrer les «Security Stories» -
L’approche de Bentley Systems
Intégrer les «Security Stories» -
L’approche de Bentley Systems
Intégrer les «Security Stories» -
L’approche de Bentley Systems
Intégrer les «Security Stories» -
L’approche de Bentley Systems
Intégrer les «Security Stories» -
L’approche de Bentley Systems
Intégrer les «Security Stories» -
L’approche de Bentley Systems
Intégrer les «Security Stories» -
L’approche de Bentley Systems
Conclusion
Conclusion
• Avec l’avènement du DevOps, il faut penser au
DevSecOps
– Les «security stories» sont probablement une
partie de solution pour intégrer la sécurité dans
un cycle de développement rapide.
Pour me contacter
• @gcsofteng
• https://ca.linkedin.com/in/guillaumecroteau
• https://github.com/gctse
• https://www.gcthesoftwareengineer.com
Merci!

Contenu connexe

Tendances

La Quete du code source fiable et sécurisé - GSDAYS 2015
La Quete du code source fiable et sécurisé - GSDAYS 2015La Quete du code source fiable et sécurisé - GSDAYS 2015
La Quete du code source fiable et sécurisé - GSDAYS 2015Sebastien Gioria
 
Securing your API and mobile application - API Connection FR
Securing your API and mobile application - API Connection FRSecuring your API and mobile application - API Connection FR
Securing your API and mobile application - API Connection FRSebastien Gioria
 
Durcissement de code - Sécurité Applicative Web
Durcissement de code - Sécurité Applicative WebDurcissement de code - Sécurité Applicative Web
Durcissement de code - Sécurité Applicative WebCyrille Grandval
 
Sécurité des applications web: attaque et défense
Sécurité des applications web: attaque et défenseSécurité des applications web: attaque et défense
Sécurité des applications web: attaque et défenseAntonio Fontes
 
2013 03-01 automatiser les tests sécurité
2013 03-01 automatiser les tests sécurité2013 03-01 automatiser les tests sécurité
2013 03-01 automatiser les tests sécuritéSébastien GIORIA
 
Comment securiser votre annuaire Active Directory contre les attaques de malw...
Comment securiser votre annuaire Active Directory contre les attaques de malw...Comment securiser votre annuaire Active Directory contre les attaques de malw...
Comment securiser votre annuaire Active Directory contre les attaques de malw...Sylvain Cortes
 
OWASP Top10 2013 - Présentation aux RSSIA 2013
OWASP Top10 2013 - Présentation aux RSSIA 2013OWASP Top10 2013 - Présentation aux RSSIA 2013
OWASP Top10 2013 - Présentation aux RSSIA 2013Sébastien GIORIA
 
Les menaces applicatives
Les menaces applicativesLes menaces applicatives
Les menaces applicativesBee_Ware
 
Présentation Top10 CEGID Lyon
Présentation Top10 CEGID LyonPrésentation Top10 CEGID Lyon
Présentation Top10 CEGID LyonSébastien GIORIA
 
ASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan Marcil
ASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan MarcilASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan Marcil
ASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan MarcilCyber Security Alliance
 
Sécurité des applications Web
Sécurité des applications WebSécurité des applications Web
Sécurité des applications WebSylvain Maret
 
Sophia conf securite microservices - 2017
Sophia conf   securite microservices - 2017Sophia conf   securite microservices - 2017
Sophia conf securite microservices - 2017SecludIT
 
Le Darwinisme Digital
Le Darwinisme DigitalLe Darwinisme Digital
Le Darwinisme DigitalNBS System
 
Monitoring avec Zabbix
Monitoring avec ZabbixMonitoring avec Zabbix
Monitoring avec ZabbixFourat Zouari
 
Sécurité des Applications WEB -LEVEL1
 Sécurité des Applications WEB-LEVEL1 Sécurité des Applications WEB-LEVEL1
Sécurité des Applications WEB -LEVEL1Tarek MOHAMED
 
Evaluer et contrôler la sécurité de ses prestataires Cloud, PaaS ou SaaS
Evaluer et contrôler la sécurité de ses prestataires Cloud, PaaS ou SaaSEvaluer et contrôler la sécurité de ses prestataires Cloud, PaaS ou SaaS
Evaluer et contrôler la sécurité de ses prestataires Cloud, PaaS ou SaaSNBS System
 
Analyser la sécurité de son code source avec SonarSource
Analyser la sécurité de son code source avec SonarSourceAnalyser la sécurité de son code source avec SonarSource
Analyser la sécurité de son code source avec SonarSourceSébastien GIORIA
 

Tendances (20)

La Quete du code source fiable et sécurisé - GSDAYS 2015
La Quete du code source fiable et sécurisé - GSDAYS 2015La Quete du code source fiable et sécurisé - GSDAYS 2015
La Quete du code source fiable et sécurisé - GSDAYS 2015
 
Securing your API and mobile application - API Connection FR
Securing your API and mobile application - API Connection FRSecuring your API and mobile application - API Connection FR
Securing your API and mobile application - API Connection FR
 
OWASP TOP 10 Proactive
OWASP TOP 10 ProactiveOWASP TOP 10 Proactive
OWASP TOP 10 Proactive
 
Durcissement de code - Sécurité Applicative Web
Durcissement de code - Sécurité Applicative WebDurcissement de code - Sécurité Applicative Web
Durcissement de code - Sécurité Applicative Web
 
Sécurité des applications web: attaque et défense
Sécurité des applications web: attaque et défenseSécurité des applications web: attaque et défense
Sécurité des applications web: attaque et défense
 
2013 03-01 automatiser les tests sécurité
2013 03-01 automatiser les tests sécurité2013 03-01 automatiser les tests sécurité
2013 03-01 automatiser les tests sécurité
 
Comment securiser votre annuaire Active Directory contre les attaques de malw...
Comment securiser votre annuaire Active Directory contre les attaques de malw...Comment securiser votre annuaire Active Directory contre les attaques de malw...
Comment securiser votre annuaire Active Directory contre les attaques de malw...
 
OWASP Top10 2013 - Présentation aux RSSIA 2013
OWASP Top10 2013 - Présentation aux RSSIA 2013OWASP Top10 2013 - Présentation aux RSSIA 2013
OWASP Top10 2013 - Présentation aux RSSIA 2013
 
Les menaces applicatives
Les menaces applicativesLes menaces applicatives
Les menaces applicatives
 
Présentation Top10 CEGID Lyon
Présentation Top10 CEGID LyonPrésentation Top10 CEGID Lyon
Présentation Top10 CEGID Lyon
 
ASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan Marcil
ASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan MarcilASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan Marcil
ASFWS 2012 - Les utilités d’un pare-feu applicatif Web (WAF) par Jonathan Marcil
 
SonarQube et la Sécurité
SonarQube et la SécuritéSonarQube et la Sécurité
SonarQube et la Sécurité
 
Sécurité des applications Web
Sécurité des applications WebSécurité des applications Web
Sécurité des applications Web
 
Sophia conf securite microservices - 2017
Sophia conf   securite microservices - 2017Sophia conf   securite microservices - 2017
Sophia conf securite microservices - 2017
 
Le Darwinisme Digital
Le Darwinisme DigitalLe Darwinisme Digital
Le Darwinisme Digital
 
Monitoring avec Zabbix
Monitoring avec ZabbixMonitoring avec Zabbix
Monitoring avec Zabbix
 
Sécurité des réseaux
Sécurité des réseauxSécurité des réseaux
Sécurité des réseaux
 
Sécurité des Applications WEB -LEVEL1
 Sécurité des Applications WEB-LEVEL1 Sécurité des Applications WEB-LEVEL1
Sécurité des Applications WEB -LEVEL1
 
Evaluer et contrôler la sécurité de ses prestataires Cloud, PaaS ou SaaS
Evaluer et contrôler la sécurité de ses prestataires Cloud, PaaS ou SaaSEvaluer et contrôler la sécurité de ses prestataires Cloud, PaaS ou SaaS
Evaluer et contrôler la sécurité de ses prestataires Cloud, PaaS ou SaaS
 
Analyser la sécurité de son code source avec SonarSource
Analyser la sécurité de son code source avec SonarSourceAnalyser la sécurité de son code source avec SonarSource
Analyser la sécurité de son code source avec SonarSource
 

Similaire à OWASP Quebec: "Security Stories" par Guillaume Croteau

Comment Microsoft IT a transféré certaines responsabilités liées à la sécurit...
Comment Microsoft IT a transféré certaines responsabilités liées à la sécurit...Comment Microsoft IT a transféré certaines responsabilités liées à la sécurit...
Comment Microsoft IT a transféré certaines responsabilités liées à la sécurit...Philippe Beraud
 
Comment securiser votre usage ou migration vers Office 365 [2018 12-04]
Comment securiser votre usage ou migration vers Office 365 [2018 12-04]Comment securiser votre usage ou migration vers Office 365 [2018 12-04]
Comment securiser votre usage ou migration vers Office 365 [2018 12-04]Sylvain Cortes
 
Azure IaaS : concevoir en architecture sécurisée en tirant bénéfice des nouve...
Azure IaaS : concevoir en architecture sécurisée en tirant bénéfice des nouve...Azure IaaS : concevoir en architecture sécurisée en tirant bénéfice des nouve...
Azure IaaS : concevoir en architecture sécurisée en tirant bénéfice des nouve...Microsoft Décideurs IT
 
Azure IaaS : concevoir en architecture sécurisée en tirant bénéfice des nouve...
Azure IaaS : concevoir en architecture sécurisée en tirant bénéfice des nouve...Azure IaaS : concevoir en architecture sécurisée en tirant bénéfice des nouve...
Azure IaaS : concevoir en architecture sécurisée en tirant bénéfice des nouve...Microsoft Technet France
 
Modèle de sécurité AWS
Modèle de sécurité AWSModèle de sécurité AWS
Modèle de sécurité AWSJulien SIMON
 
La gouvernance, ou comment rapprocher les équipes de développement et d'infra...
La gouvernance, ou comment rapprocher les équipes de développement et d'infra...La gouvernance, ou comment rapprocher les équipes de développement et d'infra...
La gouvernance, ou comment rapprocher les équipes de développement et d'infra...PimpMySharePoint
 
Déploiement de Modèles Machine Learning avec Kubernetes
Déploiement de Modèles Machine Learning avec KubernetesDéploiement de Modèles Machine Learning avec Kubernetes
Déploiement de Modèles Machine Learning avec KubernetesIbrahima Mbodji
 
Modern Monitoring dans Azure
Modern Monitoring dans AzureModern Monitoring dans Azure
Modern Monitoring dans AzureManon PERNIN
 
AWS Paris Summit 2014 - T2 - Déployer des environnements entreprises hybrides
AWS Paris Summit 2014 - T2 - Déployer des environnements entreprises hybridesAWS Paris Summit 2014 - T2 - Déployer des environnements entreprises hybrides
AWS Paris Summit 2014 - T2 - Déployer des environnements entreprises hybridesAmazon Web Services
 
Joseph Glorieux & Mathieu Brun Maintenant que mon delivery pipeline est en pl...
Joseph Glorieux & Mathieu Brun Maintenant que mon delivery pipeline est en pl...Joseph Glorieux & Mathieu Brun Maintenant que mon delivery pipeline est en pl...
Joseph Glorieux & Mathieu Brun Maintenant que mon delivery pipeline est en pl...matteo mazzeri
 
TechDays 2012 - Windows Azure
TechDays 2012 - Windows AzureTechDays 2012 - Windows Azure
TechDays 2012 - Windows AzureJason De Oliveira
 
Agile lille 2015 devops etapres
Agile lille 2015 devops etapresAgile lille 2015 devops etapres
Agile lille 2015 devops etapresLaurent Tardif
 
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement MicrosoftChristophe HERAL
 
Comment integrer les applications de votre Systeme Information entre elles ?
Comment integrer les applications de votre Systeme Information entre elles ?Comment integrer les applications de votre Systeme Information entre elles ?
Comment integrer les applications de votre Systeme Information entre elles ?Stéphane Traumat
 
SplunkLive! Paris 2016 - Customer Presentation - Natixis
SplunkLive! Paris 2016 - Customer Presentation - NatixisSplunkLive! Paris 2016 - Customer Presentation - Natixis
SplunkLive! Paris 2016 - Customer Presentation - NatixisSplunk
 
Cloud Security Assessment Matrix: une offre Microsoft Consulting pour l’analy...
Cloud Security Assessment Matrix: une offre Microsoft Consulting pour l’analy...Cloud Security Assessment Matrix: une offre Microsoft Consulting pour l’analy...
Cloud Security Assessment Matrix: une offre Microsoft Consulting pour l’analy...Microsoft Technet France
 
Mise en œuvre d’une démarche DevOps dans Windows Azure
Mise en œuvre d’une démarche DevOps dans Windows AzureMise en œuvre d’une démarche DevOps dans Windows Azure
Mise en œuvre d’une démarche DevOps dans Windows AzureMicrosoft Technet France
 
Gouvernance azure - rex du studio Cellenza
Gouvernance azure -  rex du studio CellenzaGouvernance azure -  rex du studio Cellenza
Gouvernance azure - rex du studio CellenzaBenoît SAUTIERE
 
Introduction à l'agilité numélink - 24 mai 2012 - #10 convergen
Introduction à l'agilité   numélink - 24 mai 2012 - #10 convergenIntroduction à l'agilité   numélink - 24 mai 2012 - #10 convergen
Introduction à l'agilité numélink - 24 mai 2012 - #10 convergenagnes_crepet
 

Similaire à OWASP Quebec: "Security Stories" par Guillaume Croteau (20)

Comment Microsoft IT a transféré certaines responsabilités liées à la sécurit...
Comment Microsoft IT a transféré certaines responsabilités liées à la sécurit...Comment Microsoft IT a transféré certaines responsabilités liées à la sécurit...
Comment Microsoft IT a transféré certaines responsabilités liées à la sécurit...
 
Comment securiser votre usage ou migration vers Office 365 [2018 12-04]
Comment securiser votre usage ou migration vers Office 365 [2018 12-04]Comment securiser votre usage ou migration vers Office 365 [2018 12-04]
Comment securiser votre usage ou migration vers Office 365 [2018 12-04]
 
Azure IaaS : concevoir en architecture sécurisée en tirant bénéfice des nouve...
Azure IaaS : concevoir en architecture sécurisée en tirant bénéfice des nouve...Azure IaaS : concevoir en architecture sécurisée en tirant bénéfice des nouve...
Azure IaaS : concevoir en architecture sécurisée en tirant bénéfice des nouve...
 
Azure IaaS : concevoir en architecture sécurisée en tirant bénéfice des nouve...
Azure IaaS : concevoir en architecture sécurisée en tirant bénéfice des nouve...Azure IaaS : concevoir en architecture sécurisée en tirant bénéfice des nouve...
Azure IaaS : concevoir en architecture sécurisée en tirant bénéfice des nouve...
 
Modèle de sécurité AWS
Modèle de sécurité AWSModèle de sécurité AWS
Modèle de sécurité AWS
 
Sécurite Amazon Web Services
Sécurite Amazon Web ServicesSécurite Amazon Web Services
Sécurite Amazon Web Services
 
La gouvernance, ou comment rapprocher les équipes de développement et d'infra...
La gouvernance, ou comment rapprocher les équipes de développement et d'infra...La gouvernance, ou comment rapprocher les équipes de développement et d'infra...
La gouvernance, ou comment rapprocher les équipes de développement et d'infra...
 
Déploiement de Modèles Machine Learning avec Kubernetes
Déploiement de Modèles Machine Learning avec KubernetesDéploiement de Modèles Machine Learning avec Kubernetes
Déploiement de Modèles Machine Learning avec Kubernetes
 
Modern Monitoring dans Azure
Modern Monitoring dans AzureModern Monitoring dans Azure
Modern Monitoring dans Azure
 
AWS Paris Summit 2014 - T2 - Déployer des environnements entreprises hybrides
AWS Paris Summit 2014 - T2 - Déployer des environnements entreprises hybridesAWS Paris Summit 2014 - T2 - Déployer des environnements entreprises hybrides
AWS Paris Summit 2014 - T2 - Déployer des environnements entreprises hybrides
 
Joseph Glorieux & Mathieu Brun Maintenant que mon delivery pipeline est en pl...
Joseph Glorieux & Mathieu Brun Maintenant que mon delivery pipeline est en pl...Joseph Glorieux & Mathieu Brun Maintenant que mon delivery pipeline est en pl...
Joseph Glorieux & Mathieu Brun Maintenant que mon delivery pipeline est en pl...
 
TechDays 2012 - Windows Azure
TechDays 2012 - Windows AzureTechDays 2012 - Windows Azure
TechDays 2012 - Windows Azure
 
Agile lille 2015 devops etapres
Agile lille 2015 devops etapresAgile lille 2015 devops etapres
Agile lille 2015 devops etapres
 
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
 
Comment integrer les applications de votre Systeme Information entre elles ?
Comment integrer les applications de votre Systeme Information entre elles ?Comment integrer les applications de votre Systeme Information entre elles ?
Comment integrer les applications de votre Systeme Information entre elles ?
 
SplunkLive! Paris 2016 - Customer Presentation - Natixis
SplunkLive! Paris 2016 - Customer Presentation - NatixisSplunkLive! Paris 2016 - Customer Presentation - Natixis
SplunkLive! Paris 2016 - Customer Presentation - Natixis
 
Cloud Security Assessment Matrix: une offre Microsoft Consulting pour l’analy...
Cloud Security Assessment Matrix: une offre Microsoft Consulting pour l’analy...Cloud Security Assessment Matrix: une offre Microsoft Consulting pour l’analy...
Cloud Security Assessment Matrix: une offre Microsoft Consulting pour l’analy...
 
Mise en œuvre d’une démarche DevOps dans Windows Azure
Mise en œuvre d’une démarche DevOps dans Windows AzureMise en œuvre d’une démarche DevOps dans Windows Azure
Mise en œuvre d’une démarche DevOps dans Windows Azure
 
Gouvernance azure - rex du studio Cellenza
Gouvernance azure -  rex du studio CellenzaGouvernance azure -  rex du studio Cellenza
Gouvernance azure - rex du studio Cellenza
 
Introduction à l'agilité numélink - 24 mai 2012 - #10 convergen
Introduction à l'agilité   numélink - 24 mai 2012 - #10 convergenIntroduction à l'agilité   numélink - 24 mai 2012 - #10 convergen
Introduction à l'agilité numélink - 24 mai 2012 - #10 convergen
 

OWASP Quebec: "Security Stories" par Guillaume Croteau

  • 1. Security Stories Comment intégrer la sécurité dans un cycle de développement logiciel rapide
  • 2. Plan de la présentation • Qui suis-je? • Qu’est-ce que Bentley Systems? • Introduction • «Security Stories» – L’approche de Bentley Systems • Comment intégrer les «Security Stories» – L’approche de Bentley Systems • Conclusion
  • 3. Qui suis-je? • Guillaume Croteau Ing. Jr. • Bac. Génie Logiciel, Université Laval • GIAC-GWEB • Travail dans l’équipe de sécurité applicative chez Bentley Systems depuis presque 2 ans
  • 7. Introduction • La plupart des organisations se contentent de faire un «pentest» une fois de temps en temps alors que le produit est prêt à être déployé. • Réaction des développeurs:
  • 8. Introduction • Résultat: introduction de dettes techniques par rapport à la sécurité.
  • 9. Introduction • Effectuer la sécurité plus tôt est un investissement.
  • 10. Introduction • Une solution: envoyer la sécurité le plus à gauche possible dans le cycle de développement. – Non seulement pour le design, mais aussi pour le développement continu. – DevOps parle de «Shift-Left» • Mais comment?
  • 12. Security Stories • Les «Security Stories» proviennent d’une publication de SAFECode: «Practical Security Stories and Security Tasks for Agile Development Environments»
  • 13. Security Stories • Intégrer la sécurité dans le processus utilisé par les développeurs: Agile • Ajouter des tâches et/ou des fonctionnalités par rapport à la sécurité dans le «backlog» – Prioriser la sécurité comme le reste du «backlog» • Standardise l’implémentation • Sauver du temps: faire la recherche une seule fois • Sauver de l’argent: faire la sécurité plus tôt dans le cycle de développement – «Story» tôt au lieu d’un bogue plus tard
  • 14. Security Stories • Sécurité «baked in» vs «bolted on»
  • 15. Security Stories • La structure proposée par SAFECode:
  • 16. Security Stories – L’approche de Bentley Systems
  • 17. Security Stories – L’approche de Bentley Systems • Au lieu de spécifier des rôles, les tâches sont séparées par type. – Architecture – Implémentation – Vérification • Raisons: – Une personne peut couvrir plusieurs rôles dans une équipe. – Plus facile de savoir quand exécuter une tâche.
  • 18. Security Stories – L’approche de Bentley Systems • Les développeurs se sont plaints que les «stories» proposées par SAFECode sont trop générales. – Ex: «Use one of the many available librairies and frameworks that takes CSRF into account.»
  • 19. Security Stories – L’approche de Bentley Systems • Amélioration des tâches: – Ajout de tâches qui sont spécifiques à certaines technologies. • Ex: Protection contre le CSRF avec ASP.NET – Ajout de détails • Ex: Lien vers une ressource externe – Ajout de notes • Ex: Cette tâche ne s’applique pas si votre contexte est [contexte] – Ajout d’exemples • Ex: Voici un exemple de «whitelist» [la «whitelist»]
  • 20. Security Stories – L’approche de Bentley Systems • Système de «tag» adapté à la structure de nos «backlog» pour bien identifier les tâches. – Métriques – Identification rapide des tâches liées à la sécurité – Etc. • Ne pas limiter les références aux CWE: – SANS Top 25 – OWASP Top 10 – CAPEC – RFC – Etc.
  • 21. Security Stories – L’approche de Bentley Systems • SAFECode ne propose que seulement 36 «stories» – Ajout de «stories» manquantes et d’autres qui sont spécifiques à notre contexte. • Ex: CORS (manquante) • Ex: OpenID et OAuth 2.0 (spécifique) – Bentley Systems à maintenant plus de 70 «stories», et ce nombre continu à augmenter.
  • 22. Security Stories – L’approche de Bentley Systems • Il est possible d’organiser les «stories» par groupe: – Par concept: • Cryptographie • Web • Autorisation • Authentification • Etc. – Par OWASP Top 10 • 2013 • 2017 – Par SANS Top 25 – Etc.
  • 23. Security Stories – L’approche de Bentley Systems • Exemple personnalisé: • [Security Story] I want to verify graceful handling of all exceptions. • [Security Task] Ensure there is no information exposure through error messages – Note: Do not use the client to hide server-side error details – ASP.NET • Enable customErrors in Web.config – Java Servlet • Error handling in Java web.xml
  • 24. Security Stories – L’approche de Bentley Systems
  • 25. Comment intégrer les «Security Stories»
  • 26. Comment intégrer les «Security Stories» • Accès publique aux «Security Stories» – Base de données – Intranet – SharePoint – Etc. • Automatiser l’intégration des tâches dans le «backlog». – Éviter le copier-coller à partir de la source d’information.
  • 27. Comment intégrer les «Security Stories» • Si la compagnie est petite: – Un membre de l’équipe de sécurité applicative peut guider l’équipe à choisir les tâches appropriées à chaque sprint. • Le «Threat Modeling» peut aider à identifier les dangers potentiels, pour ensuite sélectionner les bonnes tâches. – «Threat model» au niveau de la fonctionnalité • Par contre, si la compagnie est grande…?
  • 28. Intégrer les «Security Stories» - L’approche de Bentley Systems
  • 29. Intégrer les «Security Stories» - L’approche de Bentley Systems • Bentley Systems: – > 3000 employés – Compagnie internationale – +/- 500 produits actifs – Centaines de champions de sécurité – 10 membres permanent dans l’équipe de sécurité applicative
  • 30. Intégrer les «Security Stories» - L’approche de Bentley Systems • Approche «Security as a Service» – Développent d’une application web interne. Cette application s’inspire fortement des produits IriusRisk et SD Elements. – «Threat model» (du produit ou de la fonctionnalité) basé sur un questionnaire interne. – Avoir 80% des résultats d’un «threat model» complet en 20% du temps. – Accessible à tous les champions de sécurité de la compagnie («scalable») – Niveau de connaissance requis en sécurité minimal
  • 31. Intégrer les «Security Stories» - L’approche de Bentley Systems • Une fois le questionnaire rempli, il est analysé et un rapport est généré. – Ce rapport dirige le champion de sécurité vers les «security stories» qui sont pertinentes selon les réponses fournies.
  • 32. Intégrer les «Security Stories» - L’approche de Bentley Systems
  • 33. Intégrer les «Security Stories» - L’approche de Bentley Systems
  • 34. Intégrer les «Security Stories» - L’approche de Bentley Systems
  • 35. Intégrer les «Security Stories» - L’approche de Bentley Systems
  • 36. Intégrer les «Security Stories» - L’approche de Bentley Systems
  • 37. Intégrer les «Security Stories» - L’approche de Bentley Systems
  • 38. Intégrer les «Security Stories» - L’approche de Bentley Systems
  • 39. Intégrer les «Security Stories» - L’approche de Bentley Systems
  • 40. Intégrer les «Security Stories» - L’approche de Bentley Systems
  • 42. Conclusion • Avec l’avènement du DevOps, il faut penser au DevSecOps – Les «security stories» sont probablement une partie de solution pour intégrer la sécurité dans un cycle de développement rapide.
  • 43. Pour me contacter • @gcsofteng • https://ca.linkedin.com/in/guillaumecroteau • https://github.com/gctse • https://www.gcthesoftwareengineer.com