Remédiations

Préambule

D’une manière générale, l’OWASP fourni d’excellentes ressources pour remédier aux principales vulnérabilités Web. Celles-ci sont disponibles via le lien suivant : [OWASP Cheatsheet]

Remédier aux CSRF

Il existe trois principaux leviers afin de remédier aux attaques par Cross Site Request Forgery :

Token CSRF

Le moyen le plus commun est d’utiliser des tokens CSRF. Afin qu’ils soient efficaces, ils doivent respecter plusieurs conditions :

  • Être unique et imprévisibles ;
  • Être liés à la session de l’utilisateur.

Il est par exemple possible de les insérer dans des champs cachés dans une page, au sein d’un formulaire HTML.

<input type="hidden" name="csrf" value="CpeF6Fzkz268CsafW">

La génération de ces valeurs doit être faite avec une haute entropie afin de les rendre imprévisible. Il est par exemple possible d’utiliser le générateur CSPRNG [Lien].

Same-Site Cookies

L’attribut SameSite permet de déclarer si les cookies doivent être restreints au site visité, sous-domaines ou sites tiers, il accepte trois valeurs :

  • None : Les cookies sont envoyés dans tous les contextes, sans restriction ;
  • Lax (Valeur par défaut) : Les cookies peuvent être envoyés si :
    • La requête est en GET ;
    • La requête provient d’un domaine supérieur (ex. nym0x.com vers api.nym0x.com) et est initiée par l’utilisateur (ex. clic de l’utilisateur sur un lien).
  • Strict : Le cookie ne circule que sur le domaine courant et jamais à des sites tiers.

User-interaction based protection

TODO