PHP Session和受限制的mysql Access

时间:2012-02-23 23:31:54

标签: php mysql security session cookies

我使用带有会话的用户管理脚本

会话对象$ loggedInUser包含以下属性:

$loggedInUser->email
$loggedInUser->user_id 
$loggedInUser->hash_pw 
$loggedInUser->clean_username

用户可以通过POST从'form.php'数据提交 处理脚本'process.php '

'form.php'可以访问前面提到的Session对象。 这是Cookie,目前通过发送表单提交:

PHPSESSID=7ec81164c9fb2cdc4c6f47a00bc2ae50 

问题:

如何保护'process.php'以保存仅允许登录用户提交数据?

*据我所知,'process.php'只能由我的服务器而不是用户访问,因此我必须通过Cookie,Get或Post提交会话对象一切都容易被篡改,是吗?*

如果合适,您会使用提交的Cookie或检查验证吗?

ATM很容易,知道'process.php'的路径,“伪造”没有登录状态的提交。

感谢有经验的程序员提供的一些智慧:)。

1 个答案:

答案 0 :(得分:2)

在会话中存储$loggedInUser并在process.php中检查$_SESSION['loggedInUser']->isLoggedIn()(或者您通常确定用户是否已登录)。

攻击者可以欺骗session_id,但不能欺骗其内容。 https://www.owasp.org/index.php/Session_fixation