Skip to main content

CWE-108: Struts: Unvalidated Action Form

VariantIncomplete

Every Action Form must have a corresponding validation form.

View on MITRE
Back to CWE Lookup

Extended Description

If a Struts Action Form Mapping specifies a form, it must have a validation form defined under the Struts Validator.

Technical Details

Structure
Simple

Applicable To

Languages
Java
Platforms

Frequently Asked Questions

What is CWE-108: Struts: Unvalidated Action Form?+

CWE-108: Struts: Unvalidated Action Form is a Common Weakness Enumeration (CWE) entry maintained by MITRE. Every Action Form must have a corresponding validation form. If a Struts Action Form Mapping specifies a form, it must have a validation form defined under the Struts Validator.

What are the security consequences of Struts: Unvalidated Action Form?+

If exploited, CWE-108 (Struts: Unvalidated Action Form) it can compromise Other, Confidentiality, Integrity and Availability, leading to outcomes such as Other.

How do you prevent or mitigate Struts: Unvalidated Action Form?+

Recommended mitigations for CWE-108 include: Map every Action Form to a corresponding validation form. An action or a form may perform validation in other ways, but the Struts Validator provides an excellent way to verify that all input receives at least a basic level of validation. Without this approach, it is difficult, and often impossible, to establish with a high level of confidence that all input is validated.

Which programming languages are affected by Struts: Unvalidated Action Form?+

CWE-108 commonly affects Java. Note that weaknesses are often language-agnostic patterns, so secure coding practices apply broadly.

What is the difference between a CWE and a CVE?+

A CWE (Common Weakness Enumeration) like CWE-108 describes a category of software weakness — the underlying flaw type. A CVE (Common Vulnerabilities and Exposures) identifies a specific, real-world vulnerability in a particular product. In short, a CWE is the kind of mistake, and a CVE is an instance of that mistake being found in software.

Learn More