php会话变量的安全性如何[重复]

Posted

技术标签:

【中文标题】php会话变量的安全性如何[重复]【英文标题】:How secure are php session variables [duplicate] 【发布时间】:2015-12-17 13:13:15 【问题描述】:

我在我的网站中有一个管理面板,我可以从中登录以管理我的网站,对于登录身份验证,我使用了一个代码来检查用户名和密码是否存在于 dB 中,如果存在,我将一个变量设置为 true,如下所示: $_SESSION['admin_logged']= true ;

我想知道这种方式是否安全。因为我在某处听说会话变量可以被窃取或嗅探或类似的东西。但是,我真的不知道那是什么意思。当变量保存在服务器端时,如何窃取变量?如果可能的话,我怎样才能防止这种情况发生。 非常感谢您。

【问题讨论】:

认为这与 security.stackexchange 更相关。他们已经有一个问题了,security.stackexchange.com/questions/81519/… 我倾向于认为,除非您经营一家银行,否则开箱即用的会话就可以了 一个月前我确实回答了一个非常相似的问题:Are Laravel 4 session variables secure? 【参考方案1】:

php 会话变量存储在服务器上。客户或劫持者将无法直接访问存储的信息,因此如果没有对客户计算机的物理访问,劫持并不是那么容易。 此方法应该足够安全,但为了更安全,您还可以验证会话和 IP 地址 Find out more here

【讨论】:

这不一定是真的。您可以将它们存储在数据库或通过不安全连接连接的文件系统中;到那时,任何可以嗅探网络流量的人都可能会弄乱您的系统。

以上是关于php会话变量的安全性如何[重复]的主要内容,如果未能解决你的问题,请参考以下文章

PHP 会话的安全性如何?

从 sql 数据库设置会话 id 变量;这安全吗?

php文件之间的变量

PHP 登录和处理会话安全

PHP + socket.io(会话、授权和安全问题)

servlet会话,注销后,按下浏览器的后退按钮时,再次显示安全页面[重复]