Description
JLine is a Java library for handling console input. Prior to 3.30.14, 4.0.16, and 4.2.1, the JLine3 Telnet server remote-telnet module does not apply an upper bound to terminal dimensions received via the Telnet NAWS option, and TelnetIO.handleNAWS() in TelnetIO.java:856-879 reads client-supplied width and height as 16-bit unsigned integers and passes values such as 65535x65535 to setTerminalGeometry(), allowing an unauthenticated remote attacker to repeatedly alternate values and trigger continuous expensive rendering work that causes CPU exhaustion and denial of service. This issue is fixed in versions 3.30.14, 4.0.16, and 4.2.1.
Affected products
jline: jline
References8
- github.com/jline/jline3/security/advisories/GHSA-2r2c-cx56-8933 Vendor AdvisoryExploit
- github.com/jline/jline3/security/advisories/GHSA-2r2c-cx56-8933 Vendor AdvisoryExploit
- github.com/jline/jline3/commit/3ea9cad8699714dc072fade29d36be0d… Patch
- github.com/jline/jline3/commit/733eb353dca7b0ea0252e724445b6def… Patch
- github.com/jline/jline3/commit/86b7ba7801988aadb1a67555629522a7… Patch
- github.com/jline/jline3/pull/2000 Issue Tracking
- github.com/jline/jline3/releases/tag/4.0.16 Release Notes
- github.com/jline/jline3/releases/tag/4.2.1 Release Notes
Metrics
- CVSS 3.1
-
7.5
HIGH
Score source: CNA
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - EPSS — exploit probability
- 1% percentile: 49 · as of 14 November 2026
- CWE
- CWE-400
Could this be exploited in your environment?
A patch closes the known hole. A penetration test shows what an attacker can still reach — with proof.