描述
产品声明一个数组,决赛,和静态,不足以防止数组的内容修改。
扩展描述
因为数组是可变的对象,最后约束要求指定数组对象本身只有一次,但不保证数组元素的值。因为数组是公共的,恶意程序可以改变的值存储在数组中。因此,在大多数情况下,数组声明,最终和静态是一个错误。
的关系
背景细节
移动代码,在这种情况下,一个Java Applet,代码通过网络传播,并在远程机器上执行。因为移动代码开发人员几乎没有如果任何控制他们的代码将执行的环境,特殊的安全问题成为有关。一个最大的环境威胁的风险结果移动代码将与其他一起运行,潜在的恶意移动代码。因为所有流行的web浏览器执行代码来自多个源在相同的JVM中,许多移动代码安全指导方针的重点是防止操纵对象的状态和行为的对手获得相同的虚拟机运行你的产品。
模式的介绍
不同模式的引入提供了信息如何以及何时可以纳入这一弱点。生命周期的阶段识别点的介绍可能发生,而相关的报告提供了一个典型的场景介绍在给定的阶段。
常见的后果
这个表指定不同的个人相关后果的弱点。标识应用程序范围的安全领域侵犯,而影响了负面的技术影响,如果敌人成功利用这个弱点。可能提供的信息如何可能的具体结果预计将看到列表中相对于其它后果。例如,可能会有高可能性,缺点将被利用来实现一定的影响,但较低的可能性,它将被利用来实现不同的影响。
示范例子
示例1
下面的Java小程序代码错误地声明了一个数组,最终和静态。
最后公共类urlTool延伸Applet {
最后公共静态URL[]的URL; … }
潜在的缓解措施
弱点Ordinalities
Ordinality |
描述 |
主 |
(其他弱点的弱点存在独立的) |
会员资格
这MemberOf关系表显示额外CWE类别和视图引用这个弱点作为成员。这些信息通常是有用的在理解一个弱点符合外部信息源的上下文中。
分类法映射
映射分类名称 |
节点ID |
适合 |
映射节点名 |
CERT甲骨文安全Java编码标准(2011) |
OBJ10-J |
|
不要使用公共静态非最终变量 |
软件故障模式 |
SFP28 |
|
意外的访问点 |
更多的信息是可用的,请编辑自定义过滤器或选择一个不同的过滤器。
|