以反馈形式使用令牌

时间:2013-04-08 13:46:44

标签: php forms security

要检查http://phpsec.org/projects/guide/2.html,以便提供更安全的反馈表单。凭借我非常有限的技能,想出了类似的东西:

假设有form.php(表单)和form-processing.php(用于发送它的脚本)。 在form.php的开头:

<?php
session_start();
$token = md5(uniqid(rand(), true));
$_SESSION['token'] = $token;

...并且在表单的开头本身将令牌回显到隐藏字段:

<form method="POST">    
<input type="hidden" name="token" value="<?php echo $token; ?>" />

在form-processing.php的开头:

<?php

session_start();

if (isset($_SESSION['token']) && $_POST['token'] == $_SESSION['token'])
    {
    }
else {
  die( "Invalid token" );
}

这会安全地完成工作吗?

0 个答案:

没有答案