Buenas noches,
estaba haciendo el siguiente sistema que la idea sería evitar los ataques CSRF en mi aplicación web...
$Token_CSRF = Create_Code();
// La función "Create_Code()" lo que hace es crear un token de 22 caracteres entre ellas números y letras
Luego en el formulario tengo un input de tipo hidden
<input type="hidden" name="token_csrf" value="<?php echo($Token_CSRF); ?>">
Luego al enviar el formulario lo que hago es comparar si $_POST['token_csrf'] es igual a $Token_CSRF
if($_POST['token_csrf'] == $Token_CSRF)
{
echo "Función ejecutada correctamente";
}
else
{
echo "Un posible ataque CSRF fue detectado, vuelva a intentarlo.";
}
El problema es que el valor $Token_CSRF y el $_POST nunca van a ser iguales ya que al enviar el formulario no entiendo por qué razón se cambia o se "recrea" el valor de la variable $Token_CSRF ¿Como podría hacer algo para solucionar esto?