Nixpkgs security tracker

Login with GitHub

Suggestions search

With package: python313Packages.grpc-google-iam-v1

Found 5 matching suggestions

View:
Compact
Detailed
Untriaged
Permalink CVE-2026-84303
6.3 MEDIUM
  • CVSS version (CVSS): 4.0
  • Attack Vector (AV): Network (N)
  • Attack Complexity (AC): Low (L)
  • Attack Requirement (AT): Present (P)
  • Privileges Required (PR): None (N)
  • User Interaction (UI): None (N)
  • Vulnerable System Impact Confidentiality (VC): Low (L)
  • Vulnerable System Impact Integrity (VI): Low (L)
  • Vulnerable System Impact Availability (VA): None (N)
  • Subsequent System Impact Confidentiality (SC): None (N)
  • Subsequent System Impact Integrity (SI): None (N)
  • Subsequent System Impact Availability (SA): None (N)
  • Modified Attack Vector (MAV): Network (N)
  • Modified Attack Complexity (MAC): Low (L)
  • Modified Attack Requirement (MAT): Present (P)
  • Modified Privileges Required (MPR): None (N)
  • Modified User Interaction (MUI): None (N)
  • Modified Vulnerable System Impact Confidentiality (MVC): Low (L)
  • Modified Vulnerable System Impact Integrity (MVI): Low (L)
  • Modified Vulnerable System Impact Availability (MVA): None (N)
  • Modified Subsequent System Impact Confidentiality (MSC): Negligible (N)
  • Modified Subsequent System Impact Integrity (MSI): Negligible (N)
  • Modified Subsequent System Impact Availability (MSA): Negligible (N)
  • Safety (S): Not Defined (X)
  • Automatable (AU): Not Defined (X)
  • Recovery (R): Not Defined (X)
  • Value Density (V): Not Defined (X)
  • Vulnerability Response Effort (RE): Not Defined (X)
  • Provider Urgency (U): Not Defined (X)
  • Confidentiality Req. (CR): Not Defined (X)
  • Integrity Req. (IR): Not Defined (X)
  • Availability Req. (AR): Not Defined (X)
  • Exploit Maturity (E): Not Defined (X)
created 1 week ago Activity log
  • Created suggestion
gRPC-Go: xDS RBAC HTTP Filter bypass via mixed-case Header Matching and gRFC A41 validation evasion

gRPC-Go is the Go language implementation of gRPC. Prior to 1.83.1, the xDS RBAC HTTP filter in internal/xds/httpfilter/rbac/rbac.go does not lowercase header matcher names in normalizeHeaderMatcher even though incoming metadata keys are lowercase. A DENY policy using a mixed-case name such as X-Role or User-Agent therefore does not match and fails open, allowing requests that should be rejected. The same case mismatch permits :Scheme or Grpc-Status to evade gRFC A41 validation and prevents Host from being rewritten to :authority. This issue is fixed in version 1.83.1.

Affected products

grpc-go
  • ==< 1.83.1

Matching in nixpkgs

Untriaged
Permalink CVE-2026-84304
8.7 HIGH
  • CVSS version (CVSS): 4.0
  • Attack Vector (AV): Network (N)
  • Attack Complexity (AC): Low (L)
  • Attack Requirement (AT): None (N)
  • Privileges Required (PR): None (N)
  • User Interaction (UI): None (N)
  • Vulnerable System Impact Confidentiality (VC): None (N)
  • Vulnerable System Impact Integrity (VI): None (N)
  • Vulnerable System Impact Availability (VA): High (H)
  • Subsequent System Impact Confidentiality (SC): None (N)
  • Subsequent System Impact Integrity (SI): None (N)
  • Subsequent System Impact Availability (SA): None (N)
  • Modified Attack Vector (MAV): Network (N)
  • Modified Attack Complexity (MAC): Low (L)
  • Modified Attack Requirement (MAT): None (N)
  • Modified Privileges Required (MPR): None (N)
  • Modified User Interaction (MUI): None (N)
  • Modified Vulnerable System Impact Confidentiality (MVC): None (N)
  • Modified Vulnerable System Impact Integrity (MVI): None (N)
  • Modified Vulnerable System Impact Availability (MVA): High (H)
  • Modified Subsequent System Impact Confidentiality (MSC): Negligible (N)
  • Modified Subsequent System Impact Integrity (MSI): Negligible (N)
  • Modified Subsequent System Impact Availability (MSA): Negligible (N)
  • Safety (S): Not Defined (X)
  • Automatable (AU): Not Defined (X)
  • Recovery (R): Not Defined (X)
  • Value Density (V): Not Defined (X)
  • Vulnerability Response Effort (RE): Not Defined (X)
  • Provider Urgency (U): Not Defined (X)
  • Confidentiality Req. (CR): Not Defined (X)
  • Integrity Req. (IR): Not Defined (X)
  • Availability Req. (AR): Not Defined (X)
  • Exploit Maturity (E): Not Defined (X)
created 1 week ago Activity log
  • Created suggestion
gRPC-Go: Heap Memory Exhaustion (OOM) via HTTP/2 DATA Frame Fragmentation

gRPC-Go is the Go language implementation of gRPC. Prior to 1.83.1, internal/transport/transport.go stores each fragmented HTTP/2 DATA frame as a separate recvMsg in recvBuffer, so millions of one-byte frames can consume disproportionate heap memory even when payload bytes remain within connection and stream flow-control windows. An unauthenticated remote attacker can use concurrent multiplexed streams to exhaust process memory and cause a runtime panic or out-of-memory termination. Receive-buffer compaction is enabled by default and can be controlled temporarily with GRPC_GO_EXPERIMENTAL_ENABLE_RECEIVE_BUFFER_COMPACTION. This issue is fixed in version 1.83.1.

Affected products

grpc-go
  • ==< 1.83.1

Matching in nixpkgs

Untriaged
Permalink CVE-2026-19586
9.3 CRITICAL
  • CVSS version (CVSS): 4.0
  • Attack Vector (AV): Network (N)
  • Attack Complexity (AC): Low (L)
  • Attack Requirement (AT): None (N)
  • Privileges Required (PR): None (N)
  • User Interaction (UI): None (N)
  • Vulnerable System Impact Confidentiality (VC): High (H)
  • Vulnerable System Impact Integrity (VI): High (H)
  • Vulnerable System Impact Availability (VA): High (H)
  • Subsequent System Impact Confidentiality (SC): Low (L)
  • Subsequent System Impact Integrity (SI): Low (L)
  • Subsequent System Impact Availability (SA): Low (L)
  • Modified Attack Vector (MAV): Network (N)
  • Modified Attack Complexity (MAC): Low (L)
  • Modified Attack Requirement (MAT): None (N)
  • Modified Privileges Required (MPR): None (N)
  • Modified User Interaction (MUI): None (N)
  • Modified Vulnerable System Impact Confidentiality (MVC): High (H)
  • Modified Vulnerable System Impact Integrity (MVI): High (H)
  • Modified Vulnerable System Impact Availability (MVA): High (H)
  • Modified Subsequent System Impact Confidentiality (MSC): Low (L)
  • Modified Subsequent System Impact Integrity (MSI): Low (L)
  • Modified Subsequent System Impact Availability (MSA): Low (L)
  • Safety (S): Not Defined (X)
  • Automatable (AU): Not Defined (X)
  • Recovery (R): Not Defined (X)
  • Value Density (V): Not Defined (X)
  • Vulnerability Response Effort (RE): Not Defined (X)
  • Provider Urgency (U): Not Defined (X)
  • Confidentiality Req. (CR): Not Defined (X)
  • Integrity Req. (IR): Not Defined (X)
  • Availability Req. (AR): Not Defined (X)
  • Exploit Maturity (E): Not Defined (X)
created 2 weeks, 5 days ago Activity log
  • Created suggestion
Pre-Authentication OS Command Injection in Omada Gateways on OpenVPN Server in Omada Gateways

A pre-authentication OS command injection vulnerability has been identified in Omada gateways configured to operate as an OpenVPN Server due to insufficient validation of client-supplied data during OpenVPN connection establishment. An unauthenticated remote attacker may provide specially crafted input influencing backend command execution logic before authentication completes. Exploitation requires the OpenVPN Server feature to be enabled, VPN service reachable by the attacker and attacker to be able to initiate an OpenVPN connection attempt.  Successful exploitation may allow arbitrary command execution, potentially leading to full compromise of the affected device.

Affected products

v1
  • <1.2.6 Build 20260723 Rel.41321
ER605 v2
  • <2.4.4 Build 20260630 Rel.14398
DR3150 v1
  • <1.0.1 Build 20260722 Rel.16854
ER605W v2
  • <2.0.4 Build 20260723 Rel.43763
ER706W v1
  • <1.2.11 Build 20260723 Rel.41567
ER7206 v2
  • <2.3.5 Build 20260625 Rel.43136
ER7406 v1
  • <1.3.4 Build 20260625 Rel.43136
ER8411 v1
  • <1.4.1 Build 20260708 Rel.64832
DR3650v v1
  • <1.2.0 Build 20260630 Rel.83311
ER707-M2 v1
  • <1.4.4 Build 20260625 Rel.43063
ER7212PC v2
  • <2.4.3 Build 20260722 Rel.40250
ER706W-4G v2
  • <2.1.11 Build 20260723 Rel.41624
ER7412-M2 v1
  • <1.2.0 Build 20260630 Rel.82947
DR3220v-4G v1
  • <1.2.0 Build 20260630 Rel.82652
DR3650v-4G v1
  • <1.2.0 Build 20260630 Rel.83347
ER706WP-4G v1
  • <1.1.11 Build 20260723 Rel.41624
ER701-5G-Outdoor v1
  • <1.0.3 Build 20260723 Rel.40931
ER603WP-4G-Outdoor v1
  • <1.0.2 Build 20260723 Rel.43271
ER703WP-4G-Outdoor v1
  • <1.1.7 Build 20260723 Rel.41712

Matching in nixpkgs

pkgs.av1an

Cross-platform command-line encoding framework

pkgs.dav1d

Cross-platform AV1 decoder focused on speed and correctness

pkgs.rav1d

AV1 cross-platform decoder, Rust port of dav1d

pkgs.rav1e

Fastest and safest AV1 encoder

pkgs.drumkv1

Old-school drum-kit sampler synthesizer with stereo fx

pkgs.padthv1

Polyphonic additive synthesizer

pkgs.samplv1

Old-school all-digital polyphonic sampler synthesizer with stereo fx

pkgs.svt-av1

AV1-compliant encoder/decoder library core

pkgs.synthv1

Old-school 4-oscillator subtractive polyphonic synthesizer with stereo fx

pkgs.svt-av1-hdr

Scalable Video Technology AV1 Encoder and Decoder

pkgs.sbclPackages.jzon

None

  • nixos-unstable -
    • nixpkgs-unstable
    • nixos-unstable-small
  • nixos-26.05 -
    • nixos-26.05-small
    • nixpkgs-26.05-darwin

pkgs.luaPackages.sqlite

SQLite/LuaJIT binding and a highly opinionated wrapper for storing, retrieving, caching, and persisting [SQLite] databases

  • nixos-unstable 0
    • nixpkgs-unstable 0
    • nixos-unstable-small 0
  • nixos-26.05 0
    • nixos-26.05-small 0
    • nixpkgs-26.05-darwin 0

pkgs.lua51Packages.sqlite

SQLite/LuaJIT binding and a highly opinionated wrapper for storing, retrieving, caching, and persisting [SQLite] databases

  • nixos-unstable 0
    • nixpkgs-unstable 0
    • nixos-unstable-small 0
  • nixos-26.05 0
    • nixos-26.05-small 0
    • nixpkgs-26.05-darwin 0

pkgs.lua52Packages.sqlite

SQLite/LuaJIT binding and a highly opinionated wrapper for storing, retrieving, caching, and persisting [SQLite] databases

  • nixos-unstable 0
    • nixpkgs-unstable 0
    • nixos-unstable-small 0
  • nixos-26.05 0
    • nixos-26.05-small 0
    • nixpkgs-26.05-darwin 0

pkgs.lua53Packages.sqlite

SQLite/LuaJIT binding and a highly opinionated wrapper for storing, retrieving, caching, and persisting [SQLite] databases

  • nixos-unstable 0
    • nixpkgs-unstable 0
    • nixos-unstable-small 0
  • nixos-26.05 0
    • nixos-26.05-small 0
    • nixpkgs-26.05-darwin 0

pkgs.lua54Packages.sqlite

SQLite/LuaJIT binding and a highly opinionated wrapper for storing, retrieving, caching, and persisting [SQLite] databases

  • nixos-unstable 0
    • nixpkgs-unstable 0
    • nixos-unstable-small 0
  • nixos-26.05 0
    • nixos-26.05-small 0
    • nixpkgs-26.05-darwin 0

pkgs.lua55Packages.sqlite

SQLite/LuaJIT binding and a highly opinionated wrapper for storing, retrieving, caching, and persisting [SQLite] databases

  • nixos-unstable 0
    • nixpkgs-unstable 0
    • nixos-unstable-small 0
  • nixos-26.05 0
    • nixos-26.05-small 0
    • nixpkgs-26.05-darwin 0

pkgs.luajitPackages.sqlite

SQLite/LuaJIT binding and a highly opinionated wrapper for storing, retrieving, caching, and persisting [SQLite] databases

  • nixos-unstable 0
    • nixpkgs-unstable 0
    • nixos-unstable-small 0
  • nixos-26.05 0
    • nixos-26.05-small 0
    • nixpkgs-26.05-darwin 0
  • nixos-unstable -
    • nixpkgs-unstable
    • nixos-unstable-small
  • nixos-26.05 -
    • nixos-26.05-small
    • nixpkgs-26.05-darwin
  • nixos-unstable -
    • nixpkgs-unstable
    • nixos-unstable-small
  • nixos-26.05 -
    • nixos-26.05-small
    • nixpkgs-26.05-darwin
  • nixos-unstable -
    • nixpkgs-unstable
    • nixos-unstable-small
  • nixos-26.05 -
    • nixos-26.05-small
    • nixpkgs-26.05-darwin
  • nixos-unstable -
    • nixpkgs-unstable
    • nixos-unstable-small
  • nixos-26.05 -
    • nixos-26.05-small
    • nixpkgs-26.05-darwin

pkgs.chickenPackages_5.chickenEggs.ephem

A wrapper for libnova a 'general purpose, double precision, Celestial Mechanics, Astrometry and Astrodynamics library.'

  • nixos-unstable -
    • nixpkgs-unstable
    • nixos-unstable-small
  • nixos-26.05 -
    • nixos-26.05-small
    • nixpkgs-26.05-darwin

pkgs.obs-studio-plugins.obs-stroke-glow-shadow

OBS plugin to provide efficient Stroke, Glow, and Shadow effects on masked sources

  • nixos-unstable -
    • nixpkgs-unstable
    • nixos-unstable-small
  • nixos-26.05 -
    • nixos-26.05-small
    • nixpkgs-26.05-darwin
Untriaged
Permalink CVE-2026-19683
6.3 MEDIUM
  • CVSS version (CVSS): 4.0
  • Attack Vector (AV): Network (N)
  • Attack Complexity (AC): Low (L)
  • Attack Requirement (AT): Present (P)
  • Privileges Required (PR): None (N)
  • User Interaction (UI): None (N)
  • Vulnerable System Impact Confidentiality (VC): Low (L)
  • Vulnerable System Impact Integrity (VI): Low (L)
  • Vulnerable System Impact Availability (VA): None (N)
  • Subsequent System Impact Confidentiality (SC): None (N)
  • Subsequent System Impact Integrity (SI): None (N)
  • Subsequent System Impact Availability (SA): None (N)
  • Modified Attack Vector (MAV): Network (N)
  • Modified Attack Complexity (MAC): Low (L)
  • Modified Attack Requirement (MAT): Present (P)
  • Modified Privileges Required (MPR): None (N)
  • Modified User Interaction (MUI): None (N)
  • Modified Vulnerable System Impact Confidentiality (MVC): Low (L)
  • Modified Vulnerable System Impact Integrity (MVI): Low (L)
  • Modified Vulnerable System Impact Availability (MVA): None (N)
  • Modified Subsequent System Impact Confidentiality (MSC): Negligible (N)
  • Modified Subsequent System Impact Integrity (MSI): Negligible (N)
  • Modified Subsequent System Impact Availability (MSA): Negligible (N)
  • Safety (S): Not Defined (X)
  • Automatable (AU): Not Defined (X)
  • Recovery (R): Not Defined (X)
  • Value Density (V): Not Defined (X)
  • Vulnerability Response Effort (RE): Not Defined (X)
  • Provider Urgency (U): Not Defined (X)
  • Confidentiality Req. (CR): Not Defined (X)
  • Integrity Req. (IR): Not Defined (X)
  • Availability Req. (AR): Not Defined (X)
  • Exploit Maturity (E): Not Defined (X)
created 2 weeks, 5 days ago Activity log
  • Created suggestion
Unencrypted Credential Transmission in Omada Gateway Dynamic DNS Authentication in Omada Gateways

A vulnerability exists in the Dynamic DNS (DDNS) functionality of TP-Link Omada Gateways. During communication with a third-party DDNS service, authentication credentials are transmitted over an unencrypted channel. An attacker who can observe or manipulate traffic between an affected device and the DDNS service may obtain sensitive authentication information or interfere with DDNS update operations. Exploitation requires DDNS to be configured, communication with an external DDNS service, and attacker visibility or control of the relevant network path.  Successful exploitation may result in disclosure of DDNS account credentials, unauthorized access to DDNS management functionality, or modification of DNS records associated with the affected deployment.

Affected products

v1
  • <1.2.6 Build 20260723 Rel.41321
ER605 v2
  • <2.4.4 Build 20260630 Rel.14398
DR3150 v1
  • <1.0.1 Build 20260722 Rel.16854
ER605W v2
  • <2.0.4 Build 20260723 Rel.43763
ER706W v1
  • <1.2.11 Build 20260723 Rel.41567
ER7206 v2
  • <2.3.5 Build 20260625 Rel.43136
ER7406 v1
  • <1.3.4 Build 20260625 Rel.43136
ER8411 v1
  • <1.4.1 Build 20260708 Rel.64832
DR3650v v1
  • <1.2.0 Build 20260630 Rel.83311
ER707-M2 v1
  • <1.4.4 Build 20260625 Rel.43063
ER7212PC v2
  • <2.4.3 Build 20260722 Rel.40250
ER706W-4G v2
  • <2.1.11 Build 20260723 Rel.41624
ER7412-M2 v1
  • <1.2.0 Build 20260630 Rel.82947
DR3220v-4G v1
  • <1.2.0 Build 20260630 Rel.82652
DR3650v-4G v1
  • <1.2.0 Build 20260630 Rel.83347
ER706WP-4G v1
  • <1.1.11 Build 20260723 Rel.41624
ER701-5G-Outdoor v1
  • <1.0.3 Build 20260723 Rel.40931
ER603WP-4G-Outdoor v1
  • <1.0.2 Build 20260723 Rel.43271
ER703WP-4G-Outdoor v1
  • <1.1.7 Build 20260723 Rel.41712

Matching in nixpkgs

pkgs.av1an

Cross-platform command-line encoding framework

pkgs.dav1d

Cross-platform AV1 decoder focused on speed and correctness

pkgs.rav1d

AV1 cross-platform decoder, Rust port of dav1d

pkgs.rav1e

Fastest and safest AV1 encoder

pkgs.drumkv1

Old-school drum-kit sampler synthesizer with stereo fx

pkgs.padthv1

Polyphonic additive synthesizer

pkgs.samplv1

Old-school all-digital polyphonic sampler synthesizer with stereo fx

pkgs.svt-av1

AV1-compliant encoder/decoder library core

pkgs.synthv1

Old-school 4-oscillator subtractive polyphonic synthesizer with stereo fx

pkgs.svt-av1-hdr

Scalable Video Technology AV1 Encoder and Decoder

pkgs.sbclPackages.jzon

None

  • nixos-unstable -
    • nixpkgs-unstable
    • nixos-unstable-small
  • nixos-26.05 -
    • nixos-26.05-small
    • nixpkgs-26.05-darwin

pkgs.luaPackages.sqlite

SQLite/LuaJIT binding and a highly opinionated wrapper for storing, retrieving, caching, and persisting [SQLite] databases

  • nixos-unstable 0
    • nixpkgs-unstable 0
    • nixos-unstable-small 0
  • nixos-26.05 0
    • nixos-26.05-small 0
    • nixpkgs-26.05-darwin 0

pkgs.lua51Packages.sqlite

SQLite/LuaJIT binding and a highly opinionated wrapper for storing, retrieving, caching, and persisting [SQLite] databases

  • nixos-unstable 0
    • nixpkgs-unstable 0
    • nixos-unstable-small 0
  • nixos-26.05 0
    • nixos-26.05-small 0
    • nixpkgs-26.05-darwin 0

pkgs.lua52Packages.sqlite

SQLite/LuaJIT binding and a highly opinionated wrapper for storing, retrieving, caching, and persisting [SQLite] databases

  • nixos-unstable 0
    • nixpkgs-unstable 0
    • nixos-unstable-small 0
  • nixos-26.05 0
    • nixos-26.05-small 0
    • nixpkgs-26.05-darwin 0

pkgs.lua53Packages.sqlite

SQLite/LuaJIT binding and a highly opinionated wrapper for storing, retrieving, caching, and persisting [SQLite] databases

  • nixos-unstable 0
    • nixpkgs-unstable 0
    • nixos-unstable-small 0
  • nixos-26.05 0
    • nixos-26.05-small 0
    • nixpkgs-26.05-darwin 0

pkgs.lua54Packages.sqlite

SQLite/LuaJIT binding and a highly opinionated wrapper for storing, retrieving, caching, and persisting [SQLite] databases

  • nixos-unstable 0
    • nixpkgs-unstable 0
    • nixos-unstable-small 0
  • nixos-26.05 0
    • nixos-26.05-small 0
    • nixpkgs-26.05-darwin 0

pkgs.lua55Packages.sqlite

SQLite/LuaJIT binding and a highly opinionated wrapper for storing, retrieving, caching, and persisting [SQLite] databases

  • nixos-unstable 0
    • nixpkgs-unstable 0
    • nixos-unstable-small 0
  • nixos-26.05 0
    • nixos-26.05-small 0
    • nixpkgs-26.05-darwin 0

pkgs.luajitPackages.sqlite

SQLite/LuaJIT binding and a highly opinionated wrapper for storing, retrieving, caching, and persisting [SQLite] databases

  • nixos-unstable 0
    • nixpkgs-unstable 0
    • nixos-unstable-small 0
  • nixos-26.05 0
    • nixos-26.05-small 0
    • nixpkgs-26.05-darwin 0
  • nixos-unstable -
    • nixpkgs-unstable
    • nixos-unstable-small
  • nixos-26.05 -
    • nixos-26.05-small
    • nixpkgs-26.05-darwin
  • nixos-unstable -
    • nixpkgs-unstable
    • nixos-unstable-small
  • nixos-26.05 -
    • nixos-26.05-small
    • nixpkgs-26.05-darwin
  • nixos-unstable -
    • nixpkgs-unstable
    • nixos-unstable-small
  • nixos-26.05 -
    • nixos-26.05-small
    • nixpkgs-26.05-darwin
  • nixos-unstable -
    • nixpkgs-unstable
    • nixos-unstable-small
  • nixos-26.05 -
    • nixos-26.05-small
    • nixpkgs-26.05-darwin

pkgs.chickenPackages_5.chickenEggs.ephem

A wrapper for libnova a 'general purpose, double precision, Celestial Mechanics, Astrometry and Astrodynamics library.'

  • nixos-unstable -
    • nixpkgs-unstable
    • nixos-unstable-small
  • nixos-26.05 -
    • nixos-26.05-small
    • nixpkgs-26.05-darwin

pkgs.obs-studio-plugins.obs-stroke-glow-shadow

OBS plugin to provide efficient Stroke, Glow, and Shadow effects on masked sources

  • nixos-unstable -
    • nixpkgs-unstable
    • nixos-unstable-small
  • nixos-26.05 -
    • nixos-26.05-small
    • nixpkgs-26.05-darwin
Dismissed
(not in Nixpkgs)
Permalink CVE-2026-33186
9.1 CRITICAL
  • CVSS version (CVSS): 3.1
  • Attack Vector (AV): Network (N)
  • Attack Complexity (AC): Low (L)
  • Privileges Required (PR): None (N)
  • User Interaction (UI): None (N)
  • Scope (S): Unchanged (U)
  • Confidentiality (C): High (H)
  • Integrity (I): High (H)
  • Availability (A): None (N)
  • Modified Attack Vector (MAV): Network (N)
  • Modified Attack Complexity (MAC): Low (L)
  • Modified Privileges Required (MPR): None (N)
  • Modified User Interaction (MUI): None (N)
  • Modified Confidentiality (MC): High (H)
  • Modified Scope (MS): Unchanged (U)
  • Modified Integrity (MI): High (H)
  • Modified Availability (MA): None (N)
updated 5 months, 2 weeks ago by @LeSuisse Activity log
  • Created suggestion
  • @LeSuisse dismissed (not in Nixpkgs)
gRPC-Go has an authorization bypass via missing leading slash in :path

gRPC-Go is the Go language implementation of gRPC. Versions prior to 1.79.3 have an authorization bypass resulting from improper input validation of the HTTP/2 `:path` pseudo-header. The gRPC-Go server was too lenient in its routing logic, accepting requests where the `:path` omitted the mandatory leading slash (e.g., `Service/Method` instead of `/Service/Method`). While the server successfully routed these requests to the correct handler, authorization interceptors (including the official `grpc/authz` package) evaluated the raw, non-canonical path string. Consequently, "deny" rules defined using canonical paths (starting with `/`) failed to match the incoming request, allowing it to bypass the policy if a fallback "allow" rule was present. This affects gRPC-Go servers that use path-based authorization interceptors, such as the official RBAC implementation in `google.golang.org/grpc/authz` or custom interceptors relying on `info.FullMethod` or `grpc.Method(ctx)`; AND that have a security policy contains specific "deny" rules for canonical paths but allows other requests by default (a fallback "allow" rule). The vulnerability is exploitable by an attacker who can send raw HTTP/2 frames with malformed `:path` headers directly to the gRPC server. The fix in version 1.79.3 ensures that any request with a `:path` that does not start with a leading slash is immediately rejected with a `codes.Unimplemented` error, preventing it from reaching authorization interceptors or handlers with a non-canonical path string. While upgrading is the most secure and recommended path, users can mitigate the vulnerability using one of the following methods: Use a validating interceptor (recommended mitigation); infrastructure-level normalization; and/or policy hardening.

Affected products

grpc-go
  • ==< 1.79.3

Matching in nixpkgs