cwe - 608: Struts ActionForm类私人领域
描述
ActionForm类包含一个字段没有宣布私人,可以不使用setter和getter访问。
的关系
模式的介绍
不同模式的引入提供了信息如何以及何时可以纳入这一弱点。生命周期的阶段识别点的介绍可能发生,而相关的报告提供了一个典型的场景介绍在给定的阶段。
常见的后果
这个表指定不同的个人相关后果的弱点。标识应用程序范围的安全领域侵犯,而影响了负面的技术影响,如果敌人成功利用这个弱点。可能提供的信息如何可能的具体结果预计将看到列表中相对于其它后果。例如,可能会有高可能性,缺点将被利用来实现一定的影响,但较低的可能性,它将被利用来实现不同的影响。
示范例子
示例1
在以下Java类RegistrationForm例子是Struts ActionForm Bean框架,将从注册网页维护用户输入数据的在线业务的网站。用户将进入注册数据和Struts框架RegistrationForm bean将维护用户数据。
公共类RegistrationForm org.apache.struts.validator延伸。ValidatorForm {
/ /注册表变量 公共字符串名称; 公共字符串邮件; …
公共RegistrationForm () {
超级(); } 公共ActionErrors验证(ActionMapping映射,HttpServletRequest请求){…} …
}
然而,在RegistrationForm注册表单输入数据的成员变量声明公共不是私有的。Struts框架中的所有成员变量ActionForm类必须声明私有防止成员变量被修改而不使用getter和setter方法。下面的例子显示了成员变量被声明的私人和getter和setter方法用于访问成员变量声明的。
公共类RegistrationForm org.apache.struts.validator延伸。ValidatorForm {
/ /私有变量登记表 私人字符串名称; 私人字符串邮件; …
公共RegistrationForm () {
超级(); }
公共ActionErrors验证(ActionMapping映射,HttpServletRequest请求){…}
/ /私有变量的getter和setter方法 … }
潜在的缓解措施
实施阶段:
让所有的私人领域。使用getter字段的值。应该使用Setter的框架;设置一个动作表单字段与其他行为是不好的做法,应该避免。 |
弱点Ordinalities
Ordinality |
描述 |
主 |
(其他弱点的弱点存在独立的) |
会员资格
这MemberOf关系表显示额外CWE类别和视图引用这个弱点作为成员。这些信息通常是有用的在理解一个弱点符合外部信息源的上下文中。
分类法映射
映射分类名称 |
节点ID |
适合 |
映射节点名 |
软件故障模式 |
SFP28 |
|
意外的访问点 |
|