HighGHSA-m9gg-hp2v-232jCVE-2026-101916

@grpc/grpc-js: In certain configurations, getAuthContext can return unauthorized certificates as though they were authorized

Published 30 Sept 2026 · Updated 30 Sept 2026

Affected packages

Affected
<1.13.6
Fixed in
1.13.6
Update to the fixed version for your release line, for example:npm install @grpc/grpc-js@1.13.6
Affected
>=1.14.0 <1.14.5
Fixed in
1.14.5
Update to the fixed version for your release line, for example:npm install @grpc/grpc-js@1.14.5

Details

Impact

When server credentials are created with the requireClientCertificate option set to false, getAuthContext does not distinguish between authorized and unauthorized certificates in its return value. This can create improper authentication vulnerabilities for @grpc/grpc-js users who use the result of getAuthContext for authentication.

In particular, @grpc/grpc-js-xds can both set the requireClientCertificate option to false and use the return value of getAuthContext for RBAC authentication in some configurations.

Patches

This vulenrability is fixed in 1.13.6 and 1.14.5.

Workarounds

@grpc/grpc-js users using getAuthContext this way can avoid this problem by setting requireClientCertificate to true. @grpc/grpc-js-xds users using RBAC can avoid this by setting the require_client_certificate field to true in the DownstreamTlsContext in the xDS configuration.

Is GHSA-m9gg-hp2v-232j in any of your client repos?

Checking one package by hand is fine. Checking it across forty client projects is not. NPMscan reads the lockfiles in every GitHub repo you pick, finds each project with an affected @grpc/grpc-js, and gives you the command that fixes it.

References

Advisory data from OSV.dev (opens OSV.dev in a new tab), refreshed daily.