CVE-2026-126367 @grpc/grpc-js: safe_regex incorrectly applies partial string matching for patterns with alternation

Medium 4.8 Published Updated

Alternated regex matchers in @grpc/grpc-js may accept or broaden access rules, letting requests bypass route, identity or RBAC policies; Node.js gRPC users should care.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Harmful if only installed
No
Needs a specific call
Yes
Fix
Available

What is CVE-2026-126367?

CVE-2026-126367 is a medium-severity security feature bypass vulnerability in grpc-node, published on 12 Nov 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

@grpc/grpc-js implements the core functionality of gRPC purely in JavaScript, without a C++ addon. Before 1.13.2, and from 1.14.0 through 1.14.1, the @grpc/grpc-js-xds SafeRegexValueMatcher and PathSafeRegexValueMatcher add start and end anchors without grouping a supplied top-level alternation. An expression intended to match one of several complete values can therefore match a prefix, substring, or suffix. The affected matchers are used for route selection, xDS credential identity matching, and RBAC URL path, principal name, server name, and header rules. An ALLOW policy using an alternation can consequently accept a method, certificate identity, or header value outside the intended set, while a DENY policy becomes broader rather than permissive. This issue is fixed in versions 1.13.2 and 1.14.2.

Weakness: CWE-863, CWE-625

Which versions are affected by CVE-2026-126367?

2 open source packages ship an affected version, including @grpc/grpc-js-xds.

An affected version is only exploitable if your software calls SafeRegexValueMatcher or PathSafeRegexValueMatcher. Many projects that include it are not exposed.

PackageAffectedFixed in
@grpc/grpc-js-xds npmAll versions1.13.2
@grpc/grpc-js-xds npmFrom 1.14.01.14.2

How do I fix CVE-2026-126367?

Upgrade @grpc/grpc-js-xds to a fixed version for your release line: 1.13.2 or 1.14.2.

Upgrade to the fixed version, and do not rely on a single control for protection. More about Security feature bypass.

Is CVE-2026-126367 being exploited?

There is no known exploitation of CVE-2026-126367 in the wild and no public exploit code.

Sources

Also known as GHSA-r7hq-q2xm-6c5m.

Is CVE-2026-126367 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free