Token nelle modifiche URL al clic [chiuso]

-1

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?

    
posta Manish 29.12.2015 - 16:33
fonte

1 risposta

0
$_SESSION['token']!=$_GET['token']

! = significa non è uguale. Quindi "hi" verrà visualizzato quando i valori non sono uguali e morirà quando è uguale e la convalida passa. La prossima volta tieni d'occhio questi semplici errori tipografici!

    
risposta data 29.12.2015 - 16:58
fonte

Leggi altre domande sui tag