php session防url攻击方法_PHP教程
程序员文章站
2022-04-23 23:42:33
...
session 跟踪,可以很方便地避免上述情况的发生:
session_start();
$clean = array();
$email_pattern = '/^[^@s]+@([-a-z0-9]+.)+[a-z]{2,}$/i';
if (preg_match($email_pattern, $_POST['email']))
{
$clean['email'] = $_POST['email'];
$user = $_SESSION['user'];
$new_password = md5(uniqid(rand(), TRUE));
if ($_SESSION['verified'])
{
/* Update Password */
mail($clean['email'], 'Your New Password', $new_password);
}
}
?>
http://example.org/reset.php?user=php&email=chris%40example.org
如果reset.php 信任了用户提供的这些信息,这就是一个语义URL 攻击漏洞。在此情况下,系统将会为php 帐号产生一个新密码并发送至chris@example.org,这样chris 成功地窃取了php 帐号。
推荐阅读
-
destoon之URL Rewrite(伪静态)设置方法详解_PHP教程
-
使用无限生命期Session的方法(_PHP教程
-
php中session定期自动清理的方法,phpsession清理_PHP教程
-
php中使用url传递数组的方法,phpurl传递数组_PHP教程
-
php中设置session过期时间方法_PHP教程
-
Fatal error: session_start(): Failed to initialize storage module: files问题解决方法_PHP教程
-
php获得url参数中具有&的值的方法_PHP教程
-
使用无限生命期Session的方法(_PHP教程
-
关于Iframe如何跨域访问Cookie和Session的解决方法_PHP教程
-
php中使用session防止用户非法登录后台的方法,phpsession_PHP教程