php通过session防url攻击方法

yipeiwu_com7年前PHP代码库

本文实例讲述了php通过session防url攻击方法。分享给大家供大家参考。具体实现方法如下:

通过session跟踪,可以很方便地避免url攻击的发生,php采用session防url攻击方法代码如下:

复制代码 代码如下:
<?php
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); 


?>

使用时URL可设置如下:
http://example.org/reset.php?user=php&email=chris%40example.org

如果reset.php信任了用户提供的这些信息,这就是一个语义URL 攻击漏洞,在此情况下,系统将会为php 帐号产生一个新密码并发送至chris@example.org,这样chris 成功地窃取了php 帐号.

希望本文所述对大家的PHP程序设计有所帮助。

相关文章

php中session垃圾回收机制

在PHP中,没有任何变量指向这个对象时,这个对象就成为垃圾。PHP会将其在内存中销毁;这是PHP的GC垃圾处理机制,防止内存溢出。 GC的工作就是扫描所有的Session信息,用当前时间...

php实现的ping端口函数实例

本文实例讲述了php实现的ping端口函数。分享给大家供大家参考。 具体实现代码如下: 复制代码 代码如下: <?php /*  * @author &...

php通过递归方式复制目录和子目录的方法

本文实例讲述了php通过递归方式复制目录和子目录的方法。分享给大家供大家参考。具体实现方法如下: <?php function recurse_copy($src,$...

PHP实现的最大正向匹配算法示例

本文实例讲述了PHP实现的最大正向匹配算法。分享给大家供大家参考,具体如下: 正向最大匹配算法:从左到右将待分词文本中的几个连续字符与词表匹配,如果匹配上,则切分出一个词。但这里有一个问...

PHP常用字符串操作函数实例总结(trim、nl2br、addcslashes、uudecode、md5等)

本文实例总结了PHP常用字符串操作函数。分享给大家供大家参考,具体如下: /*常用的字符串输出函数 * * echo() 输出字符串 * print() 输出一个或多个字符串 * d...