2013 03-01 automatiser les tests sécurité
TRANSCRIPT
![Page 1: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/1.jpg)
Automa'ser les tests sécurité Web
Sébas'en GioriaOWASP France Leader OWASP Global Educa'on Commi<eeCONFOO-‐ 1 Mars 2013 -‐ Montréal -‐ Canada
Saturday, March 2, 13
![Page 2: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/2.jpg)
http://www.google.fr/#q=sebastien gioria
‣OWASP France Leader & Founder - Evangéliste
‣OWASP Global Education Comittee Member ([email protected])
‣Consultant Indépendant en Sécurité Applicative
Twitter :@SPoint
2Saturday, March 2, 13
![Page 3: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/3.jpg)
O-‐ou-‐a-‐ss-‐pe?
• OWASP = Open Web Applica6on Security Project–Il y a le mot “web” mais en fait …
• Mission:–Global, ouvert, non lucra6f, indépendant.
• Communauté OWASP:–30,000 abonnés aux listes de diffusion –200 sec6ons régionales ac6ves dans 70 pays–1’600 membres officiels, 56 entreprises partenaires–69 ins6tu6ons académiques
Saturday, March 2, 13
![Page 4: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/4.jpg)
Saturday, March 2, 13
![Page 5: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/5.jpg)
Saturday, March 2, 13
![Page 6: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/6.jpg)
Apprendre
Saturday, March 2, 13
![Page 7: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/7.jpg)
Apprendre
Saturday, March 2, 13
![Page 8: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/8.jpg)
Apprendre Contractualiser
Saturday, March 2, 13
![Page 9: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/9.jpg)
Apprendre Contractualiser
Saturday, March 2, 13
![Page 10: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/10.jpg)
Apprendre Contractualiser Concevoir
Saturday, March 2, 13
![Page 11: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/11.jpg)
Apprendre Contractualiser Concevoir
Saturday, March 2, 13
![Page 12: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/12.jpg)
Apprendre Contractualiser Concevoir
Vérifier
Saturday, March 2, 13
![Page 13: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/13.jpg)
Apprendre Contractualiser Concevoir
Vérifier
Saturday, March 2, 13
![Page 14: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/14.jpg)
Apprendre Contractualiser
Tester
Concevoir
Vérifier
Saturday, March 2, 13
![Page 15: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/15.jpg)
Apprendre Contractualiser
Tester
Concevoir
Vérifier
Saturday, March 2, 13
![Page 16: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/16.jpg)
Apprendre Contractualiser
Tester
Concevoir
Vérifier Améliorer
Saturday, March 2, 13
![Page 17: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/17.jpg)
OWASP Canada
• Sec6ons OWASP au Canada:–Alberta: Edmonton & Lethbridge–Bri6sh Columbia: Okanagan & Vancouver–Manitoba: Winnipeg–New Brunswick: New Brunswick–Ontario: Niagara, Toronto, Obawa–Quebec: Montréal, Quebec city
Saturday, March 2, 13
![Page 18: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/18.jpg)
Agenda
• Le développement et la sécurité• Les différents types de tests• Des ou6ls• Comment intégrer ses ou6ls dans sa chaine
6
Saturday, March 2, 13
![Page 19: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/19.jpg)
Contexte
7© VerizonDemandez a regarder la CVE....
Saturday, March 2, 13
![Page 20: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/20.jpg)
Contexte
• Les applica6ons Web sont fortement exposées
7© VerizonDemandez a regarder la CVE....
Saturday, March 2, 13
![Page 21: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/21.jpg)
Contexte
• Les applica6ons Web sont fortement exposées
7© VerizonDemandez a regarder la CVE....
Saturday, March 2, 13
![Page 22: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/22.jpg)
Contexte
• Les applica6ons Web sont fortement exposées
7
© Verizon
© VerizonDemandez a regarder la CVE....
Saturday, March 2, 13
![Page 23: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/23.jpg)
Contexte
• Les applica6ons Web sont fortement exposées
7
© Verizon
© Verizon
• Mais pas par des abaques complexes
Demandez a regarder la CVE....
Saturday, March 2, 13
![Page 24: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/24.jpg)
Contexte
• Les applica6ons Web sont fortement exposées
7
© Verizon
© Verizon
• Mais pas par des abaques complexes
Demandez a regarder la CVE....
Saturday, March 2, 13
![Page 25: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/25.jpg)
Sécurité & Le cycle de développement
• Corriger une vulnérabilité peut couter très cher
8Demandez à Microsoi
Saturday, March 2, 13
![Page 26: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/26.jpg)
Sécurité & Le cycle de développement
• Et demander du temps !
9Demandez à Oracle....
Saturday, March 2, 13
![Page 27: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/27.jpg)
Sécurité & Le cycle de développement
• Pourtant il existe des méthodes de sécurisa6on
10Ca parait compliqué, mais je l’ai présenté à confoo précédemment....
Saturday, March 2, 13
![Page 28: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/28.jpg)
Sécurité & Le cycle de développement
• Pourtant il existe des méthodes de sécurisa6on
10Ca parait compliqué, mais je l’ai présenté à confoo précédemment....
Saturday, March 2, 13
![Page 29: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/29.jpg)
Sécurité & Le cycle de développement
• Pourtant il existe des méthodes de sécurisa6on
10Ca parait compliqué, mais je l’ai présenté à confoo précédemment....
Saturday, March 2, 13
![Page 30: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/30.jpg)
Sécurité & cycle de développement
• Mais la sécurité est un processus par un produit ! (c) Bruce Schneier
11
Saturday, March 2, 13
![Page 31: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/31.jpg)
Sécurité & cycle de développement
• Mais la sécurité est un processus par un produit ! (c) Bruce Schneier
11
Saturday, March 2, 13
![Page 32: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/32.jpg)
Pourquoi chercher des vulnérabilités ?
12
Saturday, March 2, 13
![Page 33: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/33.jpg)
Pourquoi chercher des vulnérabilités ?
✓Juste pour les trouver ?
12
Saturday, March 2, 13
![Page 34: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/34.jpg)
Pourquoi chercher des vulnérabilités ?
✓Juste pour les trouver ?
✓Pour savoir ou elles se trouvent exactement dans le code ?
12
Saturday, March 2, 13
![Page 35: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/35.jpg)
Pourquoi chercher des vulnérabilités ?
✓Juste pour les trouver ?
✓Pour savoir ou elles se trouvent exactement dans le code ?
✓Pour s’assurer qu’elles ne sont pas dans notre applica6on
12
Saturday, March 2, 13
![Page 36: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/36.jpg)
Pourquoi chercher des vulnérabilités ?
✓Juste pour les trouver ?
✓Pour savoir ou elles se trouvent exactement dans le code ?
✓Pour s’assurer qu’elles ne sont pas dans notre applica6on
✓Pour se conformer à une exigence réglementaire ?
12
Saturday, March 2, 13
![Page 37: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/37.jpg)
Pourquoi chercher des vulnérabilités ?
✓Juste pour les trouver ?
✓Pour savoir ou elles se trouvent exactement dans le code ?
✓Pour s’assurer qu’elles ne sont pas dans notre applica6on
✓Pour se conformer à une exigence réglementaire ?
12
Quelle technique permet de répondre le mieux à l’une ou toutes ses ques6ons ?
➡Revue de code manuelle ?➡Test d’intrusion applica6f manuel ?
Saturday, March 2, 13
![Page 38: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/38.jpg)
De quoi parle-‐t-‐on ?
13
Saturday, March 2, 13
![Page 39: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/39.jpg)
De quoi parle-‐t-‐on ?
• Revue de code : –Accès au code source–Accès à la documenta6on fonc6onnelle–Accès à la configura6on
13
Saturday, March 2, 13
![Page 40: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/40.jpg)
De quoi parle-‐t-‐on ?
• Revue de code : –Accès au code source–Accès à la documenta6on fonc6onnelle–Accès à la configura6on
• Test d’intrusion applica6f : –Accès via le réseau à l’applica6on (protégée ou non par des éléments d’infrastructure)
– Temps limité– Compétence du testeur limitée
13
Saturday, March 2, 13
![Page 41: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/41.jpg)
De quoi parle-‐t-‐on ?
• Revue de code : –Accès au code source–Accès à la documenta6on fonc6onnelle–Accès à la configura6on
• Test d’intrusion applica6f : –Accès via le réseau à l’applica6on (protégée ou non par des éléments d’infrastructure)
– Temps limité– Compétence du testeur limitée
13
L’u6lisa6on d’ou6ls permet d’aider la réalisa6on de la revue ou du test
Saturday, March 2, 13
![Page 42: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/42.jpg)
Evaluer le niveau de sécurité d’une applica6on ?
• Référen'el :–OWASP Top10 ?
• L’un des plus connu, orienté Risques–SANS Top25 ?
• Plus orienté Code–CWE ?
•Un peu trop complexe ?
–OWASP ASVS ?• Plus orienté exigences fonc6onnelles
14
Saturday, March 2, 13
![Page 43: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/43.jpg)
15
Saturday, March 2, 13
![Page 44: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/44.jpg)
• Avantages– Permet de voir des failles non détectées par un test de type test d’intrusion
– Permet de découvrir des problèmes de type qualité de code qui conduiraient à des abaques DOS.
– Les ou6ls commerciaux sont matures
• Inconvénients– Les ou6ls open-‐source sont très immatures– Peut être long– Nécessite des compétences pointues en développement dans le langage de développement couplées à des compétences sécurité.
– Dans le cas d’une externalisa6on de l’analyse, cebe dernière doit être fortement encadrée
Analyse du code
16
Saturday, March 2, 13
![Page 45: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/45.jpg)
17
Saturday, March 2, 13
![Page 46: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/46.jpg)
• Avantages–Les compétences sur ce type de démarche sont faciles a trouver
– Il existe des ou6ls open-‐sources matures–Cela permet de tester l’ensemble de la chaine de produc6on; infrastructure et logiciel
• Inconvénients–Le temps impar6 est souvent trop faible pour tout découvrir–Le test peut mener à une destruc6on de données; il ne doit pas être effectuer directement sur la produc'on.
– Il ne permet pas de s’assurer d’un niveau de sécurité.
Tests d intrusions
18
Saturday, March 2, 13
![Page 47: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/47.jpg)
• Buts : –Améliorer l’efficacité des tests –Permebre l’industrialisa6on des tests
• Différentes catégories : –Scanners Web ; arachni, w3af, ...–Proxy de sécurité ; Burp Suite, Zap, Vega–Modules navigateurs ; Firecat, –Ou6ls spécifiques ; sqlmap, ...
Les ou6ls
19
Saturday, March 2, 13
![Page 48: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/48.jpg)
L’automa6sa6on
• Pour automa6ser les tests sécurité, il est nécessaire d’avoir un ou6l : –disposant d’une base importante de tests (ou vulnérabilités)
–permebant de gérer différents points d’entrée, voire de découverte de ces points
–permebant de générer un rapport “compréhensible”–intégrable et scriptable dans un environnement de “build”
20
Saturday, March 2, 13
![Page 50: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/50.jpg)
Arachni
22
hbp://arachni-‐scanner.com/
Saturday, March 2, 13
![Page 52: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/52.jpg)
Démos
24
Saturday, March 2, 13
![Page 53: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/53.jpg)
• @SPoint
Saturday, March 2, 13
![Page 54: 2013 03-01 automatiser les tests sécurité](https://reader033.vdocument.in/reader033/viewer/2022052214/55757060d8b42a2e248b50f5/html5/thumbnails/54.jpg)
• @SPoint
Il n'y a qu'une façon d'échouer, c'est d'abandonner avant d'avoir réussi [Olivier Lockert]
Saturday, March 2, 13