Maison >développement back-end >tutoriel php >Comment puis-je prévenir les attaques CSRF en PHP, en particulier en utilisant le framework Kohana ?
Question : Pouvez-vous expliquer comment appliquer les techniques mentionnées dans l'article Wikipédia pour empêcher CSRF en PHP, en particulier dans le Kohana framework ?
Réponse :
Pour empêcher CSRF en PHP, vous pouvez mettre en œuvre les mesures suivantes :
// On the page requesting to delete a record session_start(); $token = isset($_SESSION['delete_customer_token']) ? $_SESSION['delete_customer_token'] : ""; if (!$token) { // Generate and persist a new token $token = md5(uniqid()); $_SESSION['delete_customer_token']= $token; } session_write_close();
// When actually performing the deletion session_start(); // Validate the token $token = isset($_SESSION['delete_customer_token']) ? $_SESSION['delete_customer_token'] : ""; if ($token && $_POST['token'] === $token) { // Delete the record ... // Remove the token after successful deletion unset($_SESSION['delete_customer_token']); } else { // Log a potential CSRF attack } session_write_close();
Dans Kohana, vous pouvez récupérer l'URL du référent à l'aide de la méthode Request::referrer(). Pour vous assurer que l'URL de référence est légitime, vous pouvez la comparer à une liste de domaines de confiance autorisés à faire référence à votre site.
En mettant en œuvre ces mesures, vous pouvez contribuer à protéger vos applications PHP contre les attaques CSRF.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!