描述
PHP应用程序不正确防止变量的修改从外部来源,如查询参数或饼干。这可以使应用程序很多原本不存在的弱点。
的关系
模式的介绍
不同模式的引入提供了信息如何以及何时可以纳入这一弱点。生命周期的阶段识别点的介绍可能发生,而相关的报告提供了一个典型的场景介绍在给定的阶段。
阶段 |
请注意 |
实现 |
实现:造成这一弱点在建筑安全策略的实施。 |
常见的后果
这个表指定不同的个人相关后果的弱点。标识应用程序范围的安全领域侵犯,而影响了负面的技术影响,如果敌人成功利用这个弱点。可能提供的信息如何可能的具体结果预计将看到列表中相对于其它后果。例如,可能会有高可能性,缺点将被利用来实现一定的影响,但较低的可能性,它将被利用来实现不同的影响。
观察到的例子
参考 |
描述 |
|
文件上传允许任意文件读取通过设置隐藏表单变量匹配内部变量名。 |
|
错误地相信$ PHP_SELF变量来确定包括脚本被称为母公司。 |
|
通过修改PHP远程文件包含assumed-immutable变量。 |
|
修改关键变量在调用脚本时不加载库,初始化它。 |
|
认证绕过通过修改数组用于身份验证。 |
潜在的缓解措施
阶段:要求;实现
仔细确定哪些变量可以控制或受到外部用户的影响,并考虑采用一种命名约定来强调外部修改变量时使用。应用程序应该不愿意信任变量被初始化外部的信任边界。确保足够的执行检查时依靠从外部输入信任边界。不允许应用程序启用了register_globals的运行。如果你实现一个register_globals模拟器,非常小心的变量提取、动态评估,和类似的问题,因为你的弱点仿真可以允许外部变量修改即使没有register_globals。 |
会员资格
这MemberOf关系表显示额外CWE类别和视图引用这个弱点作为成员。这些信息通常是有用的在理解一个弱点符合外部信息源的上下文中。
笔记
的关系
这是一个特定于语言的实例修改Assumed-Immutable数据(服务员)。这可以从请求直接合成(备用路径)的问题。它可以主要弱点如PHP文件包含SQL注入,XSS,认证绕过等等。
分类法映射
映射分类名称 |
节点ID |
适合 |
映射节点名 |
千鸟 |
|
|
PHP外部变量修改 |
|