存储例如用户权限是否安全
$_SESSION['username']='vputin';
$_SESSION['ip']=$_SERVER['REMOTE_ADDR'];
$_SESSION['canlaunchnuclearstrike']=true;
Run Code Online (Sandbox Code Playgroud)
这有什么安全问题吗?是否足以在每个页面加载时检查这个并基于重定向到登录页面(并退出;)或继续?
这完全取决于你所说的"安全".没有"安全"的抽象概念.您只能抵御特定威胁.(这被称为您的"威胁模型".)如果您没有说出您想要保护的内容,那么就不可能说出您的解决方案是否良好.当然不能保证僵尸在登录你的网站时不会来吃你的网站用户!
也就是说,会话变量无法通过Web服务器访问,因此它们构成了Web应用程序的不透明状态的一部分,用户无法直接看到或利用它们.
另一方面,有许多攻击途径允许泄露,盗窃或滥用:如果会话cookie被盗,其他人可以接管会议(并可能启动核武器); 这是一个完全常见的星巴克式场景.另一个漏洞在于服务器本身:如果会话数据存储在其他用户可读的文件中,比如在共享主机上,那么其他人可能会获得会话ID 和背后的会话数据,直接从服务器的磁盘读取它们.
这完全取决于!可能最好不要在共享主机上用PHP编写你的nuke strike管理应用程序......
| 归档时间: |
|
| 查看次数: |
642 次 |
| 最近记录: |