Miggo Logo

CVE-2016-8738: Apache Struts vulnerable to possible DoS attack when using URLValidator

5.9

CVSS Score
3.0

Basic Information

EPSS Score
0.68475%
Published
5/14/2022
Updated
1/4/2024
KEV Status
No
Technology
TechnologyJava

Technical Details

CVSS Vector
CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
Package NameEcosystemVulnerable VersionsFirst Patched Version
org.apache.struts:struts2-coremaven>= 2.5.0, < 2.5.132.5.13

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability stems from improper input validation in the URLValidator's validate method. The patch explicitly adds .trim() to the input value before regex matching, addressing a lack of input sanitization. The CWE-20 (Improper Input Validation) classification and the commit diff directly point to this function as the vulnerable component. The absence of input trimming prior to regex execution created a vector for ReDoS-style attacks via maliciously padded URLs.

Vulnerable functions

Only Mi**o us*rs **n s** t*is s**tion

WAF Protection Rules

WAF Rule

I* *n *ppli**tion *llows *nt*r *n URL in * *orm *i*l* *n* *uilt-in URLV*li**tor is us**, it is possi*l* to pr*p*r* * sp**i*l URL w*i** will ** us** to ov*rlo** s*rv*r pro**ss w**n p*r*ormin* v*li**tion o* t** URL.

Reasoning

T** vuln*r**ility st*ms *rom improp*r input v*li**tion in t** URLV*li**tor's `v*li**t*` m*t*o*. T** p*t** *xpli*itly ***s `.trim()` to t** input v*lu* ***or* r***x m*t**in*, ***r*ssin* * l**k o* input s*nitiz*tion. T** *W*-** (Improp*r Input V*li**ti