Cours 3 : Securite web Flashcards
Quelles sont les composantes impliquees dans l’authentification web?
Serveur web, serveur d’application, serveur BD, serveur d’authentificaiton
Quelles sont les differentes types d’attaque web?
§ Injection SQL (SQL Injection) § Cross Site Scripting (XSS) • Non-persistent • Persistent § Cross Site Request Forgery (XSRF) § Remote File Inclusion § Variable tampering § Interface redressing (clickjacking)
Decrire les etapes de valider les donnes de l’usager.
Ou ? Ø sur le serveur Web Ø et/ou sur le serveur d’applications Ø Comment ? Ø Exact Match (exemple : seulement “true” et “false” permis) Ø Whitelisting (exemple : seulement (a-zA-Z)+ permis) Ø Blacklisting (exemple: “SELECT” “JOIN” pas permis) Ø Encoding (exemple: addshashes() htmlentities() ) Ø Quoi d’autre ? Ø limiter la taille de l’entrée Ø Utiliser les SQL Stored Procedures Ø Gérer les permissions sur la basé de données Ø usagers, rôles, permissions Ø Messages d’erreur Ø Pare-feu applicatif Ø Software Ø ModSecurity Ø Microsoft ISA Server (\$\$$) Ø Appliance Ø Cisco, Fortinet, Checkpoint, etc. Ø Vérifications
Ø Comment vérifier si un site est vulnérable ?
Ø Rien fait pour se protéger -> probablement vulnérable
Ø Développé sans gestion de projet -> probablement vulnérable
Ø Outils automatiques
Ø Nikto
Ø Acunetix ($$$$ mais gratuit pour test de XSS)
Ø WebScarab
Ø Autres (http://sectools.org/web-scanners.html)
Comment se proteger des cross site request forgery?
Token aléatoire
Ø Envoyé au moment du login
Ø Stocké dans les variables de session du coté serveur
Ø Ne pas stocké dans un cookie du coté client, mais
Ø Présent dans les liens des toutes les autres pages
Ø Vérifié par le serveur pour chaque page