Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/291.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 会话令牌-它是如何工作的?_Php - Fatal编程技术网

Php 会话令牌-它是如何工作的?

Php 会话令牌-它是如何工作的?,php,Php,我想知道你怎样才能最好地保护会话。我搜索了一下,找到了很多答案,但其中很多都太令人困惑了 如何防止会话被劫持?我读过很多关于表单中生成的“会话令牌”的书,但我真的不明白它们的用途是什么。这如何防止会话劫持 我知道你不会在会话中保存密码之类的东西,但是你能在会话中安全地存储什么呢?权限(如跟踪用户级别的会话变量。每次打开页面时,都会检查会话变量。如果不是某个数字,则会显示“拒绝访问”消息)?或者你是如何处理这件事的 谢谢大家! 您基本上可以在会话中存储您想要的任何内容,这被认为是“最佳”做法,不包

我想知道你怎样才能最好地保护会话。我搜索了一下,找到了很多答案,但其中很多都太令人困惑了

如何防止会话被劫持?我读过很多关于表单中生成的“会话令牌”的书,但我真的不明白它们的用途是什么。这如何防止会话劫持

我知道你不会在会话中保存密码之类的东西,但是你能在会话中安全地存储什么呢?权限(如跟踪用户级别的会话变量。每次打开页面时,都会检查会话变量。如果不是某个数字,则会显示“拒绝访问”消息)?或者你是如何处理这件事的


谢谢大家!

您基本上可以在会话中存储您想要的任何内容,这被认为是“最佳”做法,不包括任何安全敏感信息,例如密码,以防安全层受到破坏

防止会话劫持的第一步是不要通过url传递会话id()。用户很愚蠢,他们会在博客上发布带有会话id的链接,这基本上会让点击该链接的人访问他们的会话。因此,建议将会话id存储在用户cookie中

话虽如此,您希望过滤并转义所有用户输入。如果您有XSS注入,并且用户能够注入javascript,那么他们将能够毫无问题地读取您的cookie

从这里开始,您通常希望在网站上的任何主要操作上重新生成_session_id(),以防止


这很简单,这就是总结。

可能重复的Hi,谢谢您的回复。我现在正在读更多关于会话固定的内容。但是我经常读到的会话令牌呢?这不是必需的吗?您可能指的是CSRF(请参阅),它实际上与会话劫持无关。正确的PHP函数名是session\u regenate\u id()