CWE-496: Public Data Assigned to Private Array-Typed Field(将公有数据赋值给私有数组)

 ID: 496

类型:变量
结构:简单

状态:未完成

描述

将公有数据赋值给私有数组相当于可以公开访问这个数组。

相关视图

与“研究层面”视图(CWE-1000)相关

与“开发层面”视图(CWE-699)相关

引入模式

阶段

说明

实现

 

应用平台

语言

C (出现的可能性不确定)

C++ (出现的可能性不确定)

Java (出现的可能性不确定)

C# (出现的可能性不确定)

后果

范围

冲击

可能性

完整性

技术冲击: 修改应用数据

数组内容可能在预计的范围之外被修改。

 

示例

例1

在下面的示例中,SETROLSER()方法将一个公开可控的数组分配给一个私有字段,从而允许调用方直接通过Java中的数组是可变的来修改私有数组。

(问题代码)

Example Language: Java 

private String[] userRoles;
public void setUserRoles(String[] userRoles) {

this.userRoles = userRoles;

}

应对措施

阶段: 实现

不要允许对象修改类的私有成员。

种属

关系

类型

ID

名称

属于

485

7PK - Encapsulation

属于

884

CWE Cross-section

属于

994

SFP Secondary Cluster: Tainted Input to Variable

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值