260
Phase: Implementation
Remove the unused Validation Form from the validation.xml file.
Demonstrative Examples
Example 1:
In the following example the class RegistrationForm is a Struts framework ActionForm Bean that
will maintain user input data from a registration webpage for an online business site. The user
will enter registration data and, through the Struts framework, the RegistrationForm bean will
maintain the user data in the form fields using the private member variables. The RegistrationForm
class uses the Struts validation capability by extending the ValidatorForm class and including the
validation for the form fields within the validator XML file, validator.xml.
Example Language: Java (Bad)
public class RegistrationForm extends org.apache.struts.validator.ValidatorForm {
// private variables for registration form
private String name;
private String address;
private String city;
private String state;
private String zipcode;
// no longer using the phone form field
// private String phone;
private String email;
public RegistrationForm() {
super();
}
// getter and setter methods for private variables
...
}
Example Language: XML (Bad)
<form-validation>
<formset>
<form name="RegistrationForm">
<field property="name" depends="required">
<arg position="0" key="prompt.name"/>
</field>
<field property="address" depends="required">
<arg position="0" key="prompt.address"/>
</field>
<field property="city" depends="required">
<arg position="0" key="prompt.city"/>
</field>
<field property="state" depends="required,mask">
<arg position="0" key="prompt.state"/>
<var>
<var-name>mask</var-name>
<var-value>[a-zA-Z]{2}</var-value>
</var>
</field>
<field property="zipcode" depends="required,mask">
<arg position="0" key="prompt.zipcode"/>
<var>
<var-name>mask</var-name>
<var-value>\d{5}</var-value>
</var>
</field>
<field property="phone" depends="required,mask">
<arg position="0" key="prompt.phone"/>
<var>
<var-name>mask</var-name>
<var-value>^([0-9]{3})(-)([0-9]{4}|[0-9]{4})$</var-value>
</var>
CWE Version 4.14
CWE-108: Struts: Unvalidated Action Form
CWE-108: Struts: Unvalidated Action Form