Skip to main content
← All vulnerabilities
CVE-2026-56740GHSA-47QP-HQVX-6R3F

JLine: Unauthenticated Remote Memory Exhaustion via Unbounded Telnet NEW-ENVIRON Variables

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 3.30.14, 4.0.16, 4.2.1
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: poc
  • Automatable: yes
  • Technical impact: partial

Summary

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 limit the number of environment variables a client may inject via the Telnet NEW-ENVIRON option, and TelnetIO.readNEVariables() in TelnetIO.java:1127-1180 stores each variable pair in a HashMap held by ConnectionData, allowing an unauthenticated attacker to flood unique variable pairs before the terminating IAC SE byte and exhaust JVM heap memory with an OutOfMemoryError. This issue is fixed in versions 3.30.14, 4.0.16, and 4.2.1.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: poc · Automatable: yes · Technical impact: partial

  3. Record last updated

Affected versions

  • jline jline3

    fixed in 3.30.14; From 4.0.0 · fixed in 4.0.16; From 4.1.0 · fixed in 4.2.1

  • org.jline:jline-remote-telnetMaven

    From 4.1.0 · fixed in 4.2.1

  • org.jline:jline-remote-telnetMaven

    From 4.0.0 · fixed in 4.0.16

  • org.jline:jline-remote-telnetMaven

    fixed in 3.30.14

References 9

GitHub · jline/jline3