CVE-2026-77422: JLine: ReDoS in Built-in grep Command Amplified by Automatic `.*` Wrapping
The JLine3 built-in grep command wraps the user-supplied regular expression with
.* before compiling it with Java’s backtracking regex engine. This amplifies
catastrophic backtracking and allows a short pattern such as (a+)+b to hang the
command thread on non-matching input. In environments that expose the JLine shell to
remote users, this is a denial-of-service issue.
References
- github.com/advisories/GHSA-r2xf-8xr9-62gw
- github.com/jline/jline3/commit/1d5fc3099e77938b971e197211cad2d4fbb17541
- github.com/jline/jline3/commit/341ee69ccc57b7733c1b40d6993219b64b3206ae
- github.com/jline/jline3/pull/2012
- github.com/jline/jline3/pull/2018
- github.com/jline/jline3/releases/tag/4.3.1
- github.com/jline/jline3/releases/tag/jline-3.30.15
- github.com/jline/jline3/security/advisories/GHSA-r2xf-8xr9-62gw
- nvd.nist.gov/vuln/detail/CVE-2026-77422
Code Behaviors & Features
Detect and mitigate CVE-2026-77422 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →