php中的会话安全性和需要注意的事项
这已经被问了很多次了。我只是好奇,是否相信下面的代码提供了相当重要的安全级别。还有其他我应该考虑的if吗 一些假设:php中的会话安全性和需要注意的事项,php,security,session,Php,Security,Session,这已经被问了很多次了。我只是好奇,是否相信下面的代码提供了相当重要的安全级别。还有其他我应该考虑的if吗 一些假设: 如果用户在5秒内什么也不做,请将其注销 如果用户不是来自somePage.php,请将其注销 如果用户的ip地址发生变化,请将其注销 代码如下: <?php session_start(); $time = time(); $ip = $_SERVER['REMOTE_ADDR']; if ($time - $_SESSION['time'] > 5) {
<?php
session_start();
$time = time();
$ip = $_SERVER['REMOTE_ADDR'];
if ($time - $_SESSION['time'] > 5)
{
//function to log out user...//echo "logged Out,Time";
}
elseif ($ip !== $_SESSION['ip'])
{
//function to log out user...//echo "logged out,IP";
}
elseif ($_SERVER['HTTP_REFERER'] !== "http://server.com/somePage.php")
{
//function to log out user...//echo "logged out,Refer";
}
else
{
//do sensitive stuff
}
$_SESSION['time'] = $time;
$_SESSION['ip'] = $_SERVER['REMOTE_ADDR'];
?>
编辑:
这只是“敏感”领域的一些基本内容。在facebook的层面上。我不想让任何人进入不该进入的领域。但如果他们这样做了,将会有一些问题,但核导弹将不会发射
5秒是我测试的例子,显然它会更长
布莱恩
如果可以欺骗$u服务器,是否有更好的方法来确定用户的源ip
一些假设:
根据应用程序类型、应用程序收集的信息类型以及与此相关的任何法律等因素,安全性要求随上下文而变化。因此,如果没有您的上下文,几乎不可能告诉您您的安全措施对于您的应用程序是必要的还是足够的。此外,仅供参考,几乎任何$\u服务器变量都可能被攻击者欺骗。是的,“敏感内容”毫无意义——记录访客信息和发射核导弹都属于这一类。你必须更具体地说明你将要做什么,这样我们才能告诉你什么级别的安全性是合适的。“如果用户在5秒钟内什么也不做,请将他注销”——是的,那些讨厌的家伙可能会试图阅读超过5秒钟的内容……这些人在我们现代多动症社会中没有一席之地,所以踢他们!(抱歉,太长了,读不下去了),即使是谷歌,也可以让你切换IPs,让你的会话活跃起来。考虑将会话ID与每个请求一起旋转,这样你就不用担心这么多了。