Existe-t-il une bibliothèque transparente que je peux utiliser ou quelque chose de facile pour éviter la falsification de requêtes intersites avec Perl et Apache? Comment puis-je générer des jetons pour les formulaires et les valider côté serveur?
Pour vous protéger contre la “falsification de requêtes inter-sites” côté serveur, il est préférable de:
Faire cela est spécifique au cadre mais simple.
Regardez ce que fait CGI :: Application :: Plugin :: ProtectCSRF . Ce module est pour le framework CGI :: Application.
Il ne devrait pas être trop difficile de modifier le module pour d’autres frameworks. Fondamentalement, les formulaires utilisateur obtiennent un champ HTML masqué avec le jeton généré et l’object de session reçoit le même jeton. Lorsque le formulaire est soumis, le jeton soumis au formulaire est comparé au jeton dans l’object de session (qui se trouve sur le serveur). S’ils ne correspondent pas, un CSRF s’est probablement produit.
Il y a aussi un plugin Catalyst : Catalyst :: Controller :: RequestToken
Ces modules utilisent des gestionnaires d’atsortingbuts, de sorte qu’il y a très peu de modifications à apporter à votre application existante.