web-dev-qa-db-fra.com

Prévention du CSRF pour des services reposants

Est-ce que je suis juste si je prétends qu'il n'existe aucune protection fiable contre le CSRF pour un environnement de Stateteles aujourd'hui? J'ai un service reposant (construit avec repose) qui doit être sécurisé contre les attaques du CSRF. J'ai googlé pour la prévention de la CSRF STATless, mais ce que j'ai trouvé, c'était seulement this article qui concerne le double soumission. Selon les commentaires sur cet article, cette approche n'est pas une contre-mesure sécurisée.

Alors, y a-t-il d'autres contre-mesures fiables contre cette attaque?

8
My-Name-Is

Les services reposants sont "apatrides", sauf en ce qui concerne l'authentification.

L'authentification est un état qui ne peut pas être évité et il est donc autorisé dans une conception reposante. Dans des services reposants, cet état est souvent mis en œuvre en tant que jeton d'authentification ou dans le cas de OAuth: un jeton au porteur d'authentification. Ce jeton devrait être inconnu de l'attaquant et est donc: un jeton approprié jeton de synchronisation CSRF .

Après tout, si l'attaquant connaissait le jeton d'authentification, il n'aurait pas besoin de la CSRF pour accéder à l'API, mais il pourrait.

12
rook