Dovresti usare i token per prevenire alcuni "rapidi" spamming dei tuoi moduli e richieste in generale. Ma in realtà l'hacker può vedere la richiesta con l'intera query e notare che c'è un token utilizzato. Una volta ottenuto, può creare un bot antispam utilizzando il token casuale utilizzato dal modulo.
Un modo migliore per essere sicuri sarebbe utilizzare, diciamo 3 (o più) token e un valore di sessione con un numero casuale tra la quantità di token che usi. Quindi puoi usare il valore della sessione come scelta casuale per il token e convalidarlo ovunque tu voglia. Quindi è imprevedibile perché i dati $ _SESSION sono nascosti nel frontend.
Qualcosa come:
// Setting tokens
$_SESSION['token_1'] = "ocdja45d6"; // Any random value
$_SESSION['token_2'] = "62d5sas9f";
$_SESSION['token_3'] = "d8o9fhd5ds";
$_SESSION['random_token'] = mt_rand(1, 3);
// Getting Token
$randToken = 'token_' . $_SESSION['random_token'];
$token = $_SESSION[$randToken];
// Validating Token
if($token == $postTokenFromHackerOrUser)
{
// Is okay or not?
}
HTH