会话注入?

Lui*_*uis 7 php security session

我应该如何在会话中托管用户的ID?只是为了插入id?我的意思是(例如):

$_SESSION['id'] = 1;
Run Code Online (Sandbox Code Playgroud)

用户自己没有办法改变它(作为cookie ..)?因为如果是这样,他可以改为任何身份证.

还有一个问题 - 如何检查用户是否已登录(使用会话)?我创建了一个会话:

$_SESSION['is_logged_in'] = true;
Run Code Online (Sandbox Code Playgroud)

同样,用户不能只创建一个名为'is_logged_in'且其值为true的会话吗?或者只是服务器控制服务器的价值?

xth*_*der 14

PHP中的所有会话变量都存储在服务器端.客户端存储一个cookie,该cookie引用应该使用的会话,然后服务器查找会话的值.在会话中存储is_logged_in以及用户ID是安全的.

您应该注意的是,如果另一个用户获得另一个用户的会话cookie,他们将能够模仿该用户,直到会话超时.一个简单的解决方案是将会话链接到IP.