Jeton CSRF nécessaire lors de l'utilisation de Apatrides(= Sessionless) d'Authentification?

Est-il nécessaire d'utiliser une Protection CSRF lorsque l'application s'appuie sur apatrides d'authentification (en utilisant quelque chose comme HMAC)?

Exemple:

  • Nous avons une page unique application (sinon il faut ajouter le jeton sur chaque lien: <a href="...?token=xyz">...</a>.

  • Que l'utilisateur s'authentifie lui-même à l'aide de POST /auth. Sur la réussite de l'authentification, le serveur sera de retour quelques jeton.

  • Le jeton sera stocké via JavaScript dans une variable à l'intérieur de la single page app.

  • Ce jeton sera utilisé pour restreindre l'accès des URLs comme /admin.

  • Le jeton sera toujours transmis à l'intérieur des en-Têtes HTTP.

  • Il n'y a PAS de Session Http, et PAS de Cookies.

Comme je le comprends, il devrait(?!) pas de possibilité d'utiliser de la croix des attaques du site, parce que le navigateur ne permet pas de stocker le jeton, et ne peut donc pas automatiquement de l'envoyer au serveur (c'est ce qui allait se passer lors de l'utilisation de Cookies de Session).

Suis-je raté quelque chose?

  • Soyez prudent à propos de l'Authentification Basique. De nombreux navigateurs enverra automatiquement le basic auth-têtes pour le reste de la session. Cela peut rendre l'authentification basique comme vulnérables à la CSRF comme cookie d'authentification.
InformationsquelleAutor Benjamin M | 2014-01-25