SUSE-SU-2026:23989-1 Security update for jline3
Not scored
Published
Check this codebase for SUSE-SU-2026:23989-1 and fix it if it is affected.
What it is: SUSE-SU-2026:23989-1 is a memory corruption vulnerability in jline3, published on 1 Oct 2026. Any signed-in user can exploit it over the network, with no action from the victim.
Exploitation: There is no known exploitation of SUSE-SU-2026:23989-1 in the wild and no public exploit code.
Affected product: jline3. No package-level version data is available, so check the vendor advisory linked from the reference page.
Task:
1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.
2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.
3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.
4. Run the tests and summarise what changed and why.
5. If nothing in the project is affected, say so and change nothing.
Reference: https://insights.sbomify.com/SUSE-SU-2026-23989-1/ (Markdown: https://insights.sbomify.com/SUSE-SU-2026-23989-1/index.md)
An attacker can execute arbitrary code or cause denial of service via memory corruption and resource leaks in the jline3 library.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is SUSE-SU-2026:23989-1?
SUSE-SU-2026:23989-1 is a memory corruption vulnerability in jline3, published on 1 Oct 2026. Any signed-in user can exploit it over the network, with no action from the victim.
Official description
This update for jline3 fixes the following issue:
Update to upstream version 3.30.17:
- Security Fixes
- Native Stack Buffer Overflow in Public INPUT_RECORD.memmove JNI Method (Windows) (GHSA-6r3w-6jpj-x5w6)
- Authenticated SSH Shell Channel Resource Leak via Null or Non-Numeric PTY Dimensions (GHSA-7h86-pjwh-gpqj)
- Authenticated SSH DoS via Unbounded Window-Change Terminal Geometry (GHSA-m935-wqpj-pvp3)
- TCP Socket File Descriptor Leak When Maximum Connections Reached (GHSA-c87g-867h-cqr6)
- Bug Fixes
- strip control characters from file names in posix builtins
- bound !# history expansion to prevent exponential blowup
- verify server host keys in the ssh client builtin
- address remaining security vulnerabilities reported by AFINE/CERT.PL
- backport security fixes from master
- backport security fixes to 3.x (path traversal + DSR plain text)
- strip control characters from ssh banner and prompts
- Dependency updates
- bump com.diffplug.spotless:spotless-maven-plugin from 3.8.0 to 3.10.2
- bump slf4j.version from 2.0.18 to 2.0.19
- bump org.apache.maven.plugins:maven-surefire-plugin from 3.5.6 to 3.6.0
- bump org.apache.maven.plugins:maven-compiler-plugin from 3.15.0 to 3.16.0
- bump org.apache.felix:maven-bundle-plugin from 6.0.2 to 6.1.2
- bump actions/setup-java from 5 to 6.0.0
- bump org.graalvm.sdk:graal-sdk from 25.1.3 to 25.3.4.1
- bump com.mycila:license-maven-plugin from 5.0.0 to 5.1.2
- bump org.easymock:easymock from 5.6.0 to 5.7.0
- bump com.google.jimfs:jimfs from 1.3.1 to 1.3.2
- bump org.apache.maven.wrapper:maven-wrapper from 3.3.2 to 3.3.4
- bump org.apache.maven:apache-maven from 4.0.0-rc-3 to 4.0.0-rc-6
- bump eu.maveniverse.maven.njord:extension3 from 0.9.9 to 0.9.10
- bump com.palantir.javaformat:palantir-java-format from 2.96.0 to 2.97.0
- bump release-drafter/release-drafter from 7.6.0 to 7.7.0
- bump groovy.version from 4.0.32 to 4.0.33
- bump release-drafter/release-drafter from 7 to 7.6.0
- bump org.apache.maven.plugins:maven-jar-plugin from 3.5.0 to 3.5.1
- Update to upstream version 3.30.16
- bugfix release with security hardening, SSH agent forwarding fix, and terminal compatibility improvements.
- Breaking Changes
- SSH agent forwarding is no longer enabled by default; pass -A to explicitly request it
- reject overlong hex components in OSC color responses
- strip OSC and other escape sequences in ansiAppend
- search multiple lib paths for versioned libutil.so
- use Path.resolve instead of URI.resolve in cat and sort to prevent SSRF
- check closed flag in PtyInputStream to prevent hang on empty input
- confine ConfigurationPath lookups to the config directory
- disable Read File command in nano restricted mode
- drain buffered data before EOF in NonBlockingPumpInputStream
- look up openpty in libc.so.6 for glibc 2.34+
- guard styleMatches and highlighter rules against ReDoS
- backport telnet DoS mitigations (GHSA-47qp, GHSA-2r2c)
- propagate EOF in PtyInputStream to avoid infinite loop
- bump org.apache.ivy:ivy from 2.5.3 to 2.6.0
- bump actions/setup-node from 6 to 7
- bump com.palantir.javaformat:palantir-java-format from 2.94.0 to 2.96.0
- bump sshd.version from 2.18.0 to 2.19.0
- bump org.codehaus.gmavenplus:gmavenplus-plugin from 5.0.0 to 5.1.0
- bump org.graalvm.sdk:graal-sdk from 25.0.3 to 25.1.3
- bump com.diffplug.spotless:spotless-maven-plugin
Which versions are affected by SUSE-SU-2026:23989-1?
Linux distribution packages (2)
jline3 SUSE:Linux Enterprise Server 16.0 | All versions | 3.30.17-160000.1.1 |
jline3 SUSE:Linux Enterprise Server for SAP applications 16.0 | All versions | 3.30.17-160000.1.1 |
How do I fix SUSE-SU-2026:23989-1?
Upgrade to a fixed version.
Upgrade to the fixed version. Memory-safe languages, compiler hardening and fuzzing prevent most new cases. More about Memory corruption.
Is SUSE-SU-2026:23989-1 being exploited?
There is no known exploitation of SUSE-SU-2026:23989-1 in the wild and no public exploit code.