CVE-2026-63317

MEDIUMPre-NVD 5.65.6
EchelonGraph scoreHIGH confidence

Score 5.6 from GitHub Security Advisory published 2026-07-24. CISA-ADP (Vulnrichment) CVSS v3.1 baseline 5.6; sources differ by 0.0.

Triggered by: GitHub Security Advisory CVSS
Sources: cisa-adp, epss, ghsa
Trending — 5 sources updated this week
5.6EG
EchelonGraph verdictMonitorLow exploitation likelihood right now — keep watching.
  • Lower severity and no public exploit yet
CISA-KEV: Not listedEPSS PROB: 0%CVSS: 5.6Exploit: None knownExposed: 0

No vendor fix yet — apply a workaround or compensating control (WAF / firewall / segmentation) and watch for a patch.

Arbitrary Class Instantiation via XML Feature Generator Descriptor and Format Name in Apache OpenNLP

Versions Affected:

  • before 2.5.10
  • before 3.0.0-M5

Description:

Three code paths in Apache OpenNLP load a class by its fully-qualified name via Class.forName() and invoke its no-arg constructor without any prior validation of the class name or its type. 

The affected paths are:

(1) GeneratorFactory, which reads the class attribute of generator elements in an XML feature generator descriptor; such descriptors are embedded as artifacts in model archives (e.g. TokenNameFinder and POSTagger models) and are parsed during model loading, so an attacker who can supply a crafted model archive controls the class name directly.

(2) StreamFactoryRegistry.getFactory(Class, String), which falls back to interpreting an unregistered format name as the fully-qualified class name of an ObjectStreamFactory; this is exploitable in applications that pass untrusted format names (e.g. exposing the -format parameter of the command-line tooling to external input).

(3) StringInterners, which instantiates the interner implementation named by the opennlp.interner.class system property; this value is normally deployer-controlled, so it is hardened as defense in depth rather than being independently attacker-reachable.

Exploitation requires a class with attacker-useful side effects in its static initializer or no-arg constructor (JNDI lookup, outbound network I/O, filesystem access) to be present on the classpath, so this is not drop-in remote code execution. T

Mitigation:

Upgrade to a fixed release.

The fix routes all three paths through ExtensionLoader.instantiateExtension(...), which consults a package-prefix allowlist before Class.forName() is invoked, so a disallowed class is never loaded, initialized, or constructed. Classes under the opennlp. prefix remain permitted by default. Deployments that load models referencing feature generator factories, object stream factories, or string interners outside opennlp.* must opt those packages in, either programmatically via ExtensionLoader.registerAllowedPackage(String) before the first model load, or by setting the OPENNLP_EXT_ALLOWED_PACKAGES system property to a comma-separated list of allowed package prefixes.

Users who cannot upgrade immediately should ensure all model files and format names are sourced from trusted origins and should audit their classpath for classes with side-effecting static initializers or constructors.

CVSS v3
5.6
EG Score
5.6(high)
EG Risk
25(Track)
EG Risk 25/100SSVC: Track

EG Risk is EchelonGraph's 0–100 priority score: it fuses intrinsic severity with real-world exploitation and automatability so you can rank equal-severity CVEs and fix the most dangerous first. Higher = act sooner. Distinct from the 0–10 EG Score (severity).

How it’s computed
Severity56% × 45%
Exploitation0% × 40%
Automatability0% × 15%
Action: Routine — remediate on your standard cadence.
EPSS PROB
0%
EPSS %ILE
20%
KEV
Not listed

Published

July 24, 2026

Last Modified

July 24, 2026

Advisory Details (1)

Auto-updated Jul 24, 2026
No patch confirmed yet.

Vendor Advisories for CVE-2026-63317(1)

These vendors published their own advisory mentioning this CVE — often with vendor-specific remediation steps + affected product lists not in NVD.

Weakness Classification(1)

MITRE Common Weakness Enumeration — the root-cause categories this CVE belongs to.

Data Freshness Timeline

(refreshed 18× in last 7d / 18× in last 30d)

Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.

  1. 2026-07-27 02:40 UTCEG score recompute
  2. 2026-07-27 02:40 UTCGHSA enrichment
  3. 2026-07-26 14:54 UTCEPSS rescore
  4. 2026-07-26 14:54 UTCEPSS rescore
  5. 2026-07-26 03:04 UTCEG score recompute
  6. 2026-07-26 03:03 UTCGHSA enrichment
  7. 2026-07-25 14:18 UTCEPSS rescore
  8. 2026-07-25 14:18 UTCEPSS rescore
  9. 2026-07-24 18:33 UTCEG score recompute 5.60
  10. 2026-07-24 18:32 UTCGHSA enrichment
  11. 2026-07-24 18:31 UTCMITRE cvelistV5CVSS v3 → 5.6 · severity → MEDIUM
  12. 2026-07-24 16:11 UTCNVD update
  13. 2026-07-24 15:13 UTCMITRE cvelistV5
  14. 2026-07-24 14:18 UTCEPSS rescore
  15. 2026-07-24 14:18 UTCEPSS rescore
  16. 2026-07-24 10:12 UTCNVD update
  17. 2026-07-24 08:17 UTCEG score recompute
  18. 2026-07-24 08:16 UTCMITRE cvelistV5first tracked

Frequently asked(5)

What is CVE-2026-63317?
CVE-2026-63317 is a medium vulnerability published on July 24, 2026. Arbitrary Class Instantiation via XML Feature Generator Descriptor and Format Name in Apache OpenNLP Versions Affected: before 2.5.10 before 3.0.0-M5 Description: Three code paths in Apache OpenNLP load a class by its fully-qualified name via Class.forName() and invoke its no-arg constructor…
When was CVE-2026-63317 disclosed?
CVE-2026-63317 was first published in the National Vulnerability Database on July 24, 2026. EchelonGraph re-ingests CVE updates from NVD on a 2-hour cycle, so this page reflects the latest published state.
Is CVE-2026-63317 actively exploited?
CVE-2026-63317 is not currently on CISA's Known Exploited Vulnerabilities catalog. FIRST EPSS estimates a 0% probability of exploitation in the next 30 days, which ranks it in the top 80.5% of all scored CVEs.
What is the CVSS score of CVE-2026-63317?
CVE-2026-63317 has a CVSS v3.1 base score of 5.6 (CISA-ADP / Vulnrichment enrichment; NVD's own analysis pending).
How do I remediate CVE-2026-63317?
Patch to the fixed version published by the affected vendor. Where vendor advisories exist for CVE-2026-63317, EchelonGraph cross-links them in the Vendor Advisories panel below — those typically contain the canonical remediation steps, fixed version numbers, and any vendor-specific mitigations.

Dependency Blast Radius

Explore the affected products and dependency analysis for CVE-2026-63317

Explore →

Is Your Infrastructure Affected by CVE-2026-63317?

EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.