v2.5.2
Giriş yap

Tekrar post edildiğinde geçersiz CSRF Token Hatası

fuatogur
835 defa görüntülendi

CSRF Açığı için token oluşturdum ancak oluşturduğum token formu f5'leyerek tekrar post ettiğimde hata veriyor geçersiz diye. Bunu nasıl çözebilirim ? Test etmek için yeniden form göndermek daha kolay olabiliyor.

if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    if (!post('_token') or post('_token') != session('_token')) {
        die('Geçersiz CSRF Token!');
    }
}
$_SESSION['_token'] = bin2hex(random_bytes(20));

Kullandığım csrf doğrulaması bu.

makifgokce
1442 gün önce

token atarken böyle yaparsan sorunun çözülür.

if(!isset($_POST['_token'])){
    $_SESSION['_token'] = bin2hex(random_bytes(20));
}
PHP