2008-10-20 113 views
3

php会话有多安全?我计划使用本机PHP会话来验证用户。用户可以像修改$ _POST和$ _GET数据一样修改会话数据吗?PHP - 会话 - 安全

回答

6

数据只进入一个会话,当你作为开发让用户把它放到会议通过你写的代码。因此,会话与您允许的数据一样安全,以及您如何信任和使用该数据。此外,会话基于客户端用来识别会话用户的会话ID。如果有人劫持会话ID,那么他们可以仿效是他们偷取的会话ID的用户。这可能发生在非SSH通信中。所以,不要相信用于识别用户的会话ID(对于重要的东西),除非他们已经登录并且会话ID仅在安全模式下传输。

下一个安全问题将是您发送给用户的sessionID的“可猜测性”。如果你处理上面提到的东西,那么当你通过它和文档的时候,你会明白PHP会话ID是多么“可猜测”的。

最后小心XSS攻击。互联网上有几篇文章解释了如何最小化XSS的发生率。

3

PHP会话与给予用户的会话cookie一样安全。会话中的所有数据都存储在服务器端,因此用户不能随意修改它们,除非通过您网站提供的任何功能。但是,PHP会话cookie是跨站点脚本(XSS)和跨站点请求伪造(CSRF)攻击的常见目标。同样,只要您意识到潜在的风险,会话就是进行用户认证的好方法。

一些维基百科链接:

CSRF

XSS

+0

你还能怎么做认证? $ _SESSION是任何人谈论的唯一方式。 – 2008-10-20 21:26:33