6. Notions basics
✔
Rappel des risques (W3C, Spam...)
✔
Front-end sur les entrées (formulaire, url...)
✔
Back-end avec un Framework
✔
La base de données
✔
Tester votre code
✔
Méthodologie
nAcademy – 28 Février 2013
7. Les Vulnérabilités reconnues
✔
Insuffisance des tests de sécurité
✔
Configuration par défaut
✔
Pas de cryptage des données sensibles
✔
Pas de mises à jour du système
✔
La sécurité apparaît lors des catastrophes
✔
Surveillance inefficace
✔
Contrôle insuffisant de l'accès par des tiers
nAcademy – 28 Février 2013
8. TOP 10 OWASP (Web)
2007 2010 2013 Version RC1
✔
Cross Site Scripting (XSS) ✔ Failles d'injection ✔ Failles d'injection
✔
Failles d'injection ✔ Cross-Site Scripting (XSS) ✔ Violation d'authentification et de Session
✔
Exécution de Fichier Malicieux ✔ Violation d'authentification et de Session ✔ Cross-Site Scripting (XSS)
✔
Référence directe non Sécurisée à un
✔ Référence directe non sécurisée à un ✔ Référence directe non sécurisée à un
Objet objet objet
✔ Falsification de requête (CSRF) ✔ Mauvaise configuration de sécurité
✔
Falsification de requête (CSRF)
✔
Fuite d'information et Traitement d'erreur
✔
N Mauvaise configuration de sécurité ✔
Z Données sensibles accessible
Incorrect ✔ Stockage cryptographique non sécurisé ✔
Z Manque de sécurité au niveau des rôles
✔
Violation d'authentification et de Session ✔ Manque de restriction d'accès URL ✔ Falsification de requête (CSRF)
✔
Stockage Cryptographique non Sécurisé ✔ Communications non sécurisées ✔
N Utilisation de composants connus
vulnérables
✔
Communications non sécurisées ✔
N Redirections non validées
✔ Redirections non validées
✔
Manque de Restriction d’Accès URL
✔ Fuite d'information et Traitement d'erreur
X Incorrect
X
✔ Communications non sécurisées
✔
X Exécution de Fichier Malicieux
Hausse Baisse Identique
nAcademy – 28 Février 2013 N Nouveau Z Renommé X Sortie
18. STEGANOGRAPHIE
L'art de cacher les Q Trouver la courbe la
choses à la vue de tous plus longue dans
l'image
nAcademy – 28 Février 2013
19. Code sécurisé
3 points à connaître
✔ Défense en profondeur
✔ Limité les accès de données à l'extérieur
✔ Maximiser les droits
nAcademy – 28 Février 2013
20. Mais... Quoi affiché !!!
Un minimum d'informations lors d'un crash
✔
Erreur 404 ✔ Erreur 500
✔ Fichier Log
nAcademy – 28 Février 2013
21. Minimum de sécurité... 1 / 3
Le contrôle : Authentification
✔
Mettre une bonne stratégie de mot de passe (Jpassword)
✔
Ne pas le stocker en clair
✔
Pensez au captcha ou au jeton
✔
Force le mode SSL / TLS
✔
Limité le délais pour modifier son profil utilisateur
✔
Identification session
✔
Authentification coté serveur
✔
Pas d'authentification en JS / Ajax
nAcademy – 28 Février 2013
22. Minimum de sécurité... 2 / 3
Le contrôle des accès
✔
Gestion des sessions aléatoire
(JSESSIONID / $_SESSION)
✔
Minimum d'informations visibles (ex URL)
✔
Eviter les données sensibles sur le réseau
(VS scanner de réseau)
✔
Cookie sécurisé (onglets des navigateurs)
✔
Limiter la fin de session pour les projets sensibles (ex 5 minutes)
✔
Bloquer les doubles logins / accès
✔
1 Authentification = 1 utilisateur = 1 connexion BDD
nAcademy – 28 Février 2013
23. Minimum de sécurité... 3 / 3
Logique de code... Pas sûr
✔
Contrôler le cache
✔
Penser à vider le cache
✔
Fermer fenêtre
✔
Fermer Navigateur
✔
Fermer Application
nAcademy – 28 Février 2013