PHP客户端可以设置$ _SESSION变量吗?

Ben*_*Ben 21 php security

是否存在客户端/用户/黑客$_SESSION自己设置变量的情况(不包括在服务器计算机上运行的恶意软件.我主要是通过浏览器来表示)?

我问的原因是因为几天前我问过这个问题.从那以后,我对这个问题变得非常困惑,但我对会话固定和劫持有了更好的了解.

尽可能简单地说,如果我用类似的东西验证每个页面isset($_SESSION['validated']),它是否安全?

Jac*_*kin 20

如果您将$_SESSION变量直接分配给未过滤的用户输入,请单击是.

这让我想到了我的观点:绝不信任用户的输入.EVER

如果您确实要过滤输入,那么我看不出它是如何完成的.

  • 实际上,(假设代表网络程序员有敏感性)它不可能."$ _SESSION"的数据保存在服务器本身上,并通过存储为cookie的密钥进行查找.实际上无法在$ _SESSION本身中置换数据,但是用户可能猜测另一个会话的会话ID并发送相应的会话cookie.但是对于所有意图和目的,对于您(网络程序员)来说,他们与其他用户完全相同,因此无论如何都不负责保护他们.Firesheep(http://codebutler.github.com/firesheep/)就是这么做的. (10认同)