Al iniciar sesión en el administrador de OpenCart, encuentro un token en su URL:
http://localhost/opencart/admin/index.php?route=common/dashboard&token=xOHq2UzQ0YwKTubXgxNpGFySmAA9W90z
El patrón de token del sincronizador se implementa en OpenCart por razones de seguridad, al eliminar su funcionalidad podría dejar a la tienda vulnerable a los ataques CSRF.
Quería algo similar al anterior y probé esto:
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');
}
?>
Al hacer clic en el enlace "contacto" en index.php , el valor del token cambia y la página de contacto muere y dice "no es válido".
¿Cómo corrijo esto?