Skip to content

flagd Vulnerable to Allocation of Resources Without Limits or Throttling

High severity GitHub Reviewed Published Mar 10, 2026 in open-feature/flagd • Updated Mar 11, 2026

Package

gomod github.com/open-feature/flagd/flagd (Go)

Affected versions

< 0.14.2

Patched versions

0.14.2

Description

Details

flagd exposes OFREP (/ofrep/v1/evaluate/...) and gRPC (evaluation.v1, evaluation.v2) endpoints for feature flag evaluation. These endpoints are designed to be publicly accessible by client applications.

The evaluation context included in request payloads is read into memory without any size restriction. An attacker can send a single HTTP request with an arbitrarily large body, causing flagd to allocate a corresponding amount of memory. This leads to immediate memory exhaustion and process termination (e.g., OOMKill in Kubernetes environments).

flagd does not natively enforce authentication on its evaluation endpoints. While operators may deploy flagd behind an authenticating reverse proxy or similar infrastructure, the endpoints themselves impose no access control by default.

Impact

  • Denial of Service: A single crafted request can crash the flagd process.
  • Service Disruption: All applications relying on the affected flagd instance for feature flag evaluation will lose access to flag evaluations until the process restarts.
  • Repeated Exploitation: An attacker can continuously send oversized requests to prevent recovery.

Affected Endpoints

  • /ofrep/v1/evaluate/flags/{flagKey} (OFREP single flag evaluation)
  • /ofrep/v1/evaluate/flags (OFREP bulk evaluation)
  • flagd.evaluation.v1.Service/ResolveBoolean (gRPC/Connect)
  • flagd.evaluation.v1.Service/ResolveString (gRPC/Connect)
  • flagd.evaluation.v1.Service/ResolveFloat (gRPC/Connect)
  • flagd.evaluation.v1.Service/ResolveInt (gRPC/Connect)
  • flagd.evaluation.v1.Service/ResolveObject (gRPC/Connect)
  • flagd.evaluation.v1.Service/ResolveAll (gRPC/Connect)
  • flagd.evaluation.v2.Service/ResolveBoolean (gRPC/Connect)
  • flagd.evaluation.v2.Service/ResolveString (gRPC/Connect)
  • flagd.evaluation.v2.Service/ResolveFloat (gRPC/Connect)
  • flagd.evaluation.v2.Service/ResolveInt (gRPC/Connect)
  • flagd.evaluation.v2.Service/ResolveObject (gRPC/Connect)

References

@toddbaert toddbaert published to open-feature/flagd Mar 10, 2026
Published to the GitHub Advisory Database Mar 11, 2026
Reviewed Mar 11, 2026
Published by the National Vulnerability Database Mar 11, 2026
Last updated Mar 11, 2026

Severity

High

CVSS overall score

This score calculates overall vulnerability severity from 0 to 10 and is based on the Common Vulnerability Scoring System (CVSS).
/ 10

CVSS v3 base metrics

Attack vector
Network
Attack complexity
Low
Privileges required
None
User interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High

CVSS v3 base metrics

Attack vector: More severe the more the remote (logically and physically) an attacker can be in order to exploit the vulnerability.
Attack complexity: More severe for the least complex attacks.
Privileges required: More severe if no privileges are required.
User interaction: More severe when no user interaction is required.
Scope: More severe when a scope change occurs, e.g. one vulnerable component impacts resources in components beyond its security scope.
Confidentiality: More severe when loss of data confidentiality is highest, measuring the level of data access available to an unauthorized user.
Integrity: More severe when loss of data integrity is the highest, measuring the consequence of data modification possible by an unauthorized user.
Availability: More severe when the loss of impacted component availability is highest.
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

EPSS score

Exploit Prediction Scoring System (EPSS)

This score estimates the probability of this vulnerability being exploited within the next 30 days. Data provided by FIRST.
(18th percentile)

Weaknesses

Allocation of Resources Without Limits or Throttling

The product allocates a reusable resource or group of resources on behalf of an actor without imposing any intended restrictions on the size or number of resources that can be allocated. Learn more on MITRE.

CVE ID

CVE-2026-31866

GHSA ID

GHSA-rmrf-g9r3-73pm

Source code

Credits

Loading Checking history
See something to contribute? Suggest improvements for this vulnerability.