GHSA-m9gg-hp2v-232j
@grpc/grpc-js: In certain configurations, getAuthContext can return unauthorized certificates as though they were authorized
Quick fix
GHSA-m9gg-hp2v-232j — @grpc/grpc-js: upgrade to the fixed version with the command below.
npm install @grpc/grpc-js@1.13.6Details
### 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.
Are you affected?
Enter the version of the package you're using.
Affected packages
References
- https://github.com/grpc/grpc-node/security/advisories/GHSA-m9gg-hp2v-232j[WEB]
- https://nvd.nist.gov/vuln/detail/CVE-2026-101916[ADVISORY]
- https://github.com/grpc/grpc-node/commit/2a84ec8b01b9db68ed9d2b117a53a81449edb8ee[WEB]
- https://github.com/grpc/grpc-node/commit/b4e0079c6d22a2adedfcac748e0bc083f783bc7c[WEB]
- https://github.com/grpc/grpc-node[PACKAGE]
- https://github.com/grpc/grpc-node/releases/tag/@grpc/grpc-js%401.14.5[WEB]