多年来,我遇到了一些情形,其中一些(尽管不是全部)漏洞本身不会损害系统的完整性,但是漏洞组合可以轻松做到这一点。 (显然应该解决所有漏洞)。尽管主要问题在底部以粗体显示,但我仍在寻找一些小问题/说明。这个问题的背景是关于在考虑性能是重要的次要因素的同时最大化安全性。
我一直在进行一些压力测试,并且其中一种工具设法产生了此错误:
session_start():会话ID太长或包含非法字符,有效字符为a-z,A-Z,0-9和'-'
太好了,我有三个选择:
ini_get('session.save_path')
之类的东西)。为了避免使用正则表达式,并使用一些基本逻辑和时间顺序,请在缺少某些内容时纠正我(这不是问题本身):
在这一点上,可以做一个假设,尽管可能无法通过同行评审:只需检查文件是否存在以及字符串长度可能是所需的最低限度验证。但是,我仍在考虑以下情况:
现在,如果服务器中其他地方存在某种漏洞,该漏洞以某种方式允许访问PHP会话目录,则一个小问题是该会话目录应设置为什么CHMOD权限?
在PHP中验证会话cookie有效性的最便宜的方法是什么?
有些人可能不关心“费用”或抛出另一个数据库查询或另一个正则表达式,因为在这些情况下的态度是“足够快”,但是它也避免了迫使开发人员扩大对语言的理解他们正在一起工作。有想法吗?