Miggo Logo

CVE-2023-0871: OpenNMS Horizon XXE Injection Vulnerability

8.8

CVSS Score
3.1

Basic Information

EPSS Score
0.09705%
Published
8/11/2023
Updated
11/11/2023
KEV Status
No
Technology
TechnologyJava

Technical Details

CVSS Vector
CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:C/C:H/I:L/A:L
Package NameEcosystemVulnerable VersionsFirst Patched Version
org.opennms.core:org.opennms.core.xmlmaven>= 31.0.8, < 32.0.232.0.2

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability stems from improper XML parsing configuration in JaxbUtils.java. The commit diff shows the vulnerable version had SAX feature flags for external entities (external-general-entities and external-parameter-entities) set to false ONLY when disableDOCTYPE=true. This meant when disableDOCTYPE=false (the default in some contexts), external entities could be processed. The patch moved these security-critical feature disables outside the conditional block, ensuring they're always disabled regardless of doctype handling - directly addressing the XXE vulnerability through proper feature configuration.

Vulnerable functions

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

WAF Protection Rules

WAF Rule

XX* inj**tion in `/rt*/post/ *n*point` in Op*nNMS *orizon **.*.* *n* v*rsions **rli*r t**n **.*.* on multipl* pl*t*orms is vuln*r**l* to XML *xt*rn*l *ntity (XX*) inj**tion, w*i** **n ** us** *or inst*n** to *or** *orizon to m*k* *r*itr*ry *TTP r*qu*

Reasoning

T** vuln*r**ility st*ms *rom improp*r XML p*rsin* *on*i*ur*tion in `J*x*Utils.j*v*`. T** *ommit *i** s*ows t** vuln*r**l* v*rsion *** S*X ***tur* *l**s *or *xt*rn*l *ntiti*s (*xt*rn*l-**n*r*l-*ntiti*s *n* *xt*rn*l-p*r*m*t*r-*ntiti*s) s*t to **ls* ONL