CVE-2021-3312 json
XML External Entity Reference in org.opencms:opencms-core
published 2021-10-08 5 y ago modified 2026-06-17 4 mo ago also GHSA-g6v7-vqhx-6v6c , EUVD-2021-2202
- cvss
- 6.5
- version 3.1, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 1.3%
- EPSS 1.3% chance of exploitation in 30 days, percentile 70%
- public exploits
- 0
- none known
Summary
An XML external entity (XXE) vulnerability in Alkacon OpenCms 11.0, 11.0.1 and 11.0.2 allows remote authenticated users with edit privileges to exfiltrate files from the server's file system by uploading a crafted SVG document.
Patch / fix
Exploit prediction
1.29% chance of exploitation in the next 30 days, higher than 70% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- github.com https://github.com/alkacon/opencms-core/issues/725 referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| NVD | 3.1 | 6.5 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N |
| NVD | 2.0 | 4.0 | AV:N/AC:L/Au:S/C:P/I:N/A:N |
| GitHub | 3.1 | 6.5 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| maven | org.opencms:opencms-core | >=11.0.0, <12.0.0 |
12.0.0 |
Classification
- Weakness
-
- CWE-611 Improper Restriction of XML External Entity Reference
References
-
github.com
/alkacon/opencms-core/commit/92e035423aa6967822d343e54392d4291648c0ee
web
-
github.com
/alkacon/opencms-core/issues/725
web, exploit, issue-tracking, third-party-advisory
-
github.com
/alkacon/opencms-core/releases
web, release-notes, third-party-advisory
-
nvd.nist.gov
/vuln/detail/CVE-2021-3312
advisory
-
github.com
/alkacon/opencms-core/issues/721
web
-
github.com
/alkacon/opencms-core
package
Sources
- CVE List CVE-2021-3312
- GitHub Advisory GHSA-g6v7-vqhx-6v6c
- NVD CVE-2021-3312
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.