Date post: | 10-Jul-2015 |
Category: |
Technology |
Upload: | application-security-forum-western-switzerland |
View: | 161 times |
Download: | 0 times |
Application Security Forum West Switzerland 6 Novembre 2014
Yverdon les bains Sébas&en Gioria [email protected] Chapter Leader & Evangelist OWASP France
U6liser SonarQube pour la Sécurité
2
http://www.google.fr/#q=sebastien gioria
‣ OWASP France Leader & Founder & Evangelist, ‣ OWASP ISO Project & OWASP SonarQube Project Leader
‣ Innovation and Technology @Advens && Application Security Expert
Twitter :@SPoint/@OWASP_France
2
‣ Application Security group leader for the CLUSIF
‣ Proud father of youngs kids trying to hack my digital life.
Agenda
• L’analyse de code source • Qualité/Sécurité • SonarQube
• Le projet OWASP SonarQube
3
L’analyse de code source résumée
L’analyse de code source
• Iden6fier toutes les occurrences d’une faille
• Évaluer des facteurs contribuant à la sécurité
• Étudier l’applica6on dans le détail
• Détecter les erreurs d’implémenta6on sournoises
Analyse du code vs Test d’intrusion applica6f (pour un
CISO)
Top10 Web Tests d’intrusion Analyse du code A1 -‐ Injec6on ++ +++
A2 – Viola6on de Session / Authen6fica6on
++ +
A3 – Cross Site Scrip6ng +++ +++ A4 – Référence Directes + +++
A5 – Mauvaise configura6on + ++ A6 – Exposi6on de données ++ + A7 – Probleme d’habilita6on
fonc6onnelle + +
A8 -‐ CSRF ++ + A9 – U6lisa6on de Composants
vulnérables +++
A10 – Redirec6on et transferts + +
L’ analyse de code ou le test d’intrusion pour un développeur
L’évolu6on du développement logiciel
Makefile" Intégration continue" Tests unitaires" Inspection continue"Gestionnaire de code source"
Les 7 péchés capitaux du développeur
Duplica6on de code....
1x30 ou 10x3 ?
Mauvais Design
Super l’objet...
Non Respect des standards
Commentaire
Les tests unitaires ?
• En programma6on informa6que, le test unitaire (ou "T.U.") est une procédure permejant de vérifier le bon fonc6onnement d'une par6e précise d'un logiciel ou d'une por6on d'un programme (appelée « unité » ou « module »). (c) Wikipedia
7 axes pour couvrir la qualité d’un code
Code Source
Architecture et Concep6on
Code dupliqué
Test unitaires
Complexité Bugs
Règle de codage
Commentaires
• Bugs • Non respect des standards
de codage • Duplica6on de code • Manque de tests unitaires • Code trop complexe • Concep6on spagheq
( mauvais design) • Trop ou pas assez de code
commenté.
SonarQube
• Plateforme centralisé de ges6on de la qualité : – Profils de qualité – Intégrable dans la chaine de build – Support de nombreux languages (C/C++, java, php, javascript, ...)
– Plugins/extensions disponibles – Ges6on de rapports et visualisa6on de l’évolu6on – Existe en version Open-‐Source
SonarQube pour la sécurité applica6ve
• S’intègre dans le SDLC – liens possible avec Jenkins/Hudson – Repor6ng sur les viola6ons – Possibilité d’ajouter des règles
• Dispose de règles permejant de couvrir – non respect des regles de codage – découverte de bugs sécurité(XSS, SQl-‐Injec6on)
SonarQube pour la sécurité applica6ve
• Ce n’est pas un ou6l de revue de code ! – Il fonc6onne sur la viola6on de règles; détec6on de pajerns uniquement
• Il 6re toute sa puissance – si vous disposez d’une poli6que de Secure Coding – si vous démarrer un nouveau projet
• Il n’est pas “tres” orienté sécurité actuellement – peu de plugins de sécurité – pas de profils type pour les viola6ons de secure coding.
Le projet OWASP SonarQube
• Collabora6on OWASP / SonarSource – Mejre a disposi6on de la communauté un ensemble de règles, profils,
et plugins pour analyser la sécurité avec SonarQube.
• Plusieurs buts prévus – Livraison d’un profil OWASP Top10 supporté et maintenu par le projet
début Octobre 2014 vis a vis du langage Java. – Livraison d’autres profils (probablement en 2015):
• ASVS • ISO 27034-‐5 • CERT Secure Coding
– Développement de plugins spécifiques OWASP • pour les autres langages
Démo