Entrando nell'amministrazione di OpenCart, trovo un token nel suo URL:
http://localhost/opencart/admin/index.php?route=common/dashboard&token=xOHq2UzQ0YwKTubXgxNpGFySmAA9W90z
Il modello di token del sincronizzatore è implementato in OpenCart per motivi di sicurezza, la rimozione della sua funzionalità potrebbe lasciare l'archivio vulnerabile agli attacchi CSRF.
Volevo qualcosa di simile a quello sopra e ho provato questo:
index.php
<?php
session_start();
$time = time();
$token = md5(uniqid(mt_rand($time), true));
$_SESSION['token']=$token;
?>
<html>
<head>
</head>
<body>
<a href= "contact.php?token=<?php echo $_SESSION['token']; ?>">Contact</a>
</body>
</html>
contact.php
<?php
session_start();
if($_SESSION['token']!=$_GET['token']) {
echo 'hi';
} else {
die('not valid');
}
?>
Facendo clic sul link "contatto" nel index.php , il valore del token cambia e la pagina dei contatti muore e dice "non valido".
Come posso correggere questo?