Impact
The flaw arises because AbstractModelReader reads a signed integer from a binary model file and passes it directly to an array allocation without checking for negative or excessively large values. An attacker can craft a model file that sets the count fields to Integer.MAX_VALUE or another large value, causing an OutOfMemoryError during the early stages of deserialization. The vulnerability is an example of unchecked resource consumption, classified as CWE-789, and leads to a denial-of-service condition when a vulnerable JVM attempts to load the malicious model.
Affected Systems
The vulnerability affects Apache OpenNLP prior to versions 2.5.9 and 3.0.0-M3. Any component that loads a .bin model file—such as GenericModelReader or higher‑level utilities— is impacted if it processes models from untrusted or semi‑trusted origins.
Risk and Exploitability
The risk is high in environments where user or third‑party supplied model files are accepted, because an attacker can trigger a crash with a single, lightweight file. No CVSS score is publicly provided, but the potential for automated exploitation is significant. The EPSS score is not available, and the vulnerability is not listed in CISA’s KEV catalog, though the lack of these metrics does not reduce the likelihood of a successful denial‑of‑service attack. The attack vector is local or remote, depending on whether the application accepts model files over a network or from untrusted users.
OpenCVE Enrichment