Sécurité web Flashcards

1
Q

Composantes impliquées durant l’authentification

A
  • Client légitime
  • Client malicieux
  • server Web
  • Server d’authentification
  • Server d’application
  • Server BD
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Authentification du serveur : Caractéristiques

A
  • Canal de communication sécurisé (https)
  • Challenge - Response (NTLM, kerberos)
  • Réhautentification à des intervalles régulières
  • Permission des usagers
  • tester
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Authentification du serveur : Authentifier le client

A
  • Nom d’utilisateur + Mot de ass
  • Certificat X509 sur le porte client
  • Carte à use (smartcard)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Authentification du serveur : Authentifier le server

A
  • Certificat X509
  • Certificat SSL
  • Image personnalisée
  • Autres
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

De quel coté fait on la vérification des données usager (Input Validation)

A

Client légitime

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

De quel coté devrait on faire de l’input validation?

A
  • Client légitime
  • Pare-feu
  • serveur web
  • serveur d’aplication
  • server BD
  • Serveur d’authentification
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Attaques sur l’input Validation

A
  • injection SQL
  • Cross Site Scripting (XSS) (non-persistent et persistent)
  • Cross Site Request Forgery (XSRT)
  • Remote File Inclusion
  • Variable Tampering
  • Interface redressing (clickjacking)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Exemple d’injection SQL dans le champ password

A

’ or ‘1’ = ‘1
résultat dans la page web :
*’ ‘ or ‘1’=’1 *’

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Exemple XSS non persistent (qui reste pas)

A

<u>Super</u>

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Exemle XSS persistent

A

document.location.href=“http://boteanu.com”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Où valider les données de l’usager?

A

Sur le serveur Web et/ou sur le serveur d’applications

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Comment valider les données de l’uager?

A
  • Exact Match (juste true or false)
  • Whitelisting (i.e. juste (a-zA-Z)+ permis, regex)
  • Blacklisting (i.e. “SELECT” “JOINT” pas permis)
  • Encoding (i.e. addshashes(), htmlentities() )

autre : Limiter la taille de l’entrée

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Comment valider les données de l’uager (autre)?

A
  • Utiliser les SQL stored procedures
  • Gérer les permissions sur la base de données (usagers, rôles, permissions)
  • Messages d’erreur
  • Pare-feu applicatif (software : ModSecurity, Microsoft ISA Server $$$); Appliance : Cisco, Fortinet, Checkpoint, etc.)
  • Verifications
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Comment vérifier si un site est vulnérable?

A
  • 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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Cross-Site Request Forgery: Comment se protéger

A

Token aléatoire :
- Envoyé au moment du login
- Stocké dans les varaibles de session du côté 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 poue chaque page
( vérification de la variable secureToken échouée –> Session fermée)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Hameçonnage (physhing) : description

A

Client maliceus envoi un message avec un faux lien (ressemblait à un lien légitime), le client légitime clique et le renvoie sur un faux server web

17
Q

Hameçonnage (physhing) : Comment se protéger?

A
  • filtrer le spam
  • Authentifcation du serveur
  • Eduquer les utilisateurs
18
Q

Logique de l’application

A
  • Chaque attaque est différente
  • Exploite la logique de l’application
  • Difficile (impossible) à détecter par des outils automatiques
  • Code review
  • Exemples : faire un donc de 100$, créer un million d’usagers et écrire des messages dans un forum, enlever le câble réseau au milieu d’une partie d’échec)
19
Q

Conclusion

A
  • Attaque Web très populaires
  • Facile de créer une application vulnérable
  • Validation des données usager
  • Éducation des usagers
  • Princie de sécurité de l’oignon (layered security)