HIGH 7.5

CVE-2026-59096: Dapr Sentry OIDC Host Header Injection & Authentication Bypass

Dapr Sentry, a distributed application runtime component, has a flaw in how it serves OpenID Connect (OIDC) discovery documents. When OIDC is enabled without explicit configuration of allowed hosts or JWT issuer settings (the default), an attacker can manipulate the discovery endpoint by sending a forged Host header (X-Forwarded-Host). The service then serves a document claiming that tokens should be validated against an attacker-controlled server instead of the legitimate one. Because this document is cached publicly for one hour, many clients may fetch and trust the poisoned version, allowing the attacker to create valid-looking tokens that systems will accept. This is a supply-chain style attack on the trust chain itself.

Source data · NVD / CISA · public domain

CVSS
3.1 · 7.5 HIGH · CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Weaknesses (CWE)
CWE-346
Affected products
0 configuration(s)
Published / Modified
2026-07-02 / 2026-07-14

NVD description (verbatim)

Dapr Sentry's OIDC discovery endpoint derives the issuer and jwks_uri of the /.well-known/openid-configuration document from the request Host, honoring an attacker-controlled X-Forwarded-Host header without validation when no allowed-hosts list is configured (the default), and serves the document with a one-hour public cache lifetime. A remote unauthenticated attacker can poison the discovery document so relying parties performing dynamic (unpinned) discovery fetch the JWKS from an attacker-controlled server, causing attacker-signed JWTs to be accepted. Exploitation requires the OIDC server enabled without a configured jwt-issuer or oidc-allowed-hosts.

4 reference(s) · View on NVD →

SEC.co analysis · AI-assisted, reviewed against source

Technical summary

CVE-2026-59096 involves improper input validation in Dapr Sentry's OIDC discovery mechanism (/.well-known/openid-configuration). The vulnerability stems from deriving the issuer and jwks_uri fields directly from the request's Host header and X-Forwarded-Host header without sanitization when no oidc-allowed-hosts list is configured. An unauthenticated remote attacker sends a request with a crafted X-Forwarded-Host value pointing to attacker infrastructure. Sentry returns a discovery document with malicious issuer and jwks_uri values, which the service caches with a one-hour TTL and serves with public cache headers. Relying parties that perform dynamic OIDC discovery (fetching configuration at runtime rather than pinning it) will retrieve this poisoned document and subsequently fetch the attacker's JWKS. JWTs signed by the attacker using their private key will validate successfully against the attacker-provided public key, granting unauthorized authentication. The attack is possible only if jwt-issuer is not explicitly configured and oidc-allowed-hosts is empty or absent (defaults).

Business impact

This vulnerability enables authentication bypass at scale. Any application using Dapr Sentry for OIDC-based authentication without proper host configuration is at risk. An attacker can forge authentication tokens that downstream services will accept as legitimate, potentially gaining unauthorized access to protected resources, sensitive data, or administrative functions. In microservices architectures relying on Dapr, a single compromised Sentry instance can become a pivot point affecting multiple applications. The caching behavior extends the attack window—legitimate clients remain compromised for up to one hour after the initial poisoning. Organizations using Dapr in multi-tenant or API gateway scenarios face elevated risk.

Affected systems

Dapr Sentry instances with OIDC support enabled are affected. The vulnerability requires that jwt-issuer is not configured and oidc-allowed-hosts is not populated (both are default states). This means out-of-the-box Dapr deployments with OIDC enabled are vulnerable. The issue does not affect Sentry instances with OIDC disabled, nor those with explicit jwt-issuer or oidc-allowed-hosts configuration. Products or systems embedding or depending on Dapr Sentry for authentication are transitively affected if they use the vulnerable configuration.

Exploitability

Exploitability is high. The attack requires no authentication, no special privileges, and no user interaction. An attacker needs only network access to the Sentry instance and the ability to send HTTP requests with custom headers. Standard HTTP header injection techniques work. The default configuration state (no allowed hosts, no issuer) means many fresh Dapr deployments are immediately exploitable. No client-side software updates or special conditions are needed—the attacker controls the server-side behavior. The one-hour cache window provides a stable exploitation window affecting multiple simultaneous clients.

Remediation

Remediate by configuring Dapr Sentry with explicit security settings before enabling OIDC. Two critical mitigations exist: (1) Set the jwt-issuer parameter to the legitimate, fixed issuer URL rather than allowing it to be derived from request headers, or (2) Populate the oidc-allowed-hosts list with only the legitimate host(s) that should be trusted for discovery requests. Apply the corresponding Dapr patch immediately if available. Additionally, review all authentication tokens issued or validated during the vulnerability exposure window; consider revocation or re-authentication of sensitive sessions. Implement network controls to restrict access to Sentry's discovery endpoint to authorized callers where possible.

Patch guidance

Consult the official Dapr project security advisory and release notes for patched versions. The patch should address header validation to prevent host spoofing via X-Forwarded-Host unless explicitly trusted. After patching, verify that your Dapr configuration includes either a fixed jwt-issuer or a configured oidc-allowed-hosts list. Test the patched deployment to confirm that forged Host headers no longer poison the discovery document. Prioritize applying patches to production environments; this is not a version-specific issue but rather a configuration-default issue that may persist across versions until patched.

Detection guidance

Monitor Sentry's OIDC discovery endpoint (/. well-known/openid-configuration) access logs for requests bearing unusual X-Forwarded-Host or Host header values that differ from your legitimate domain(s). Check HTTP response caching headers and served documents for unexpected issuer or jwks_uri values. Examine downstream OIDC relying parties' logs for authentication events where the issuer claim in JWTs does not match your legitimate Sentry issuer. Perform spot checks of cached discovery documents at your Sentry endpoint to verify issuer correctness. Implement alerting on changes to the discovery document's issuer or jwks_uri fields. Review JWT validation failures at client services to identify tokens signed by unexpected issuers.

Why prioritize this

HIGH severity (CVSS 7.5) with no authentication required, no user interaction, and direct integrity impact on authentication systems. Default configuration vulnerability affecting new deployments. Authentication bypass is a foundational security risk; compromise here affects all downstream services. Not yet in CISA KEV, but severity and ease of exploitation justify immediate attention. Organizations using Dapr in production should treat this as critical.

Risk score, explained

CVSS 3.1 score of 7.5 reflects: Attack Vector Network (AV:N, highest scope), Attack Complexity Low (AC:L, no special conditions), Privileges Required None (PR:N), User Interaction None (UI:N), Scope Unchanged (S:U), and Integrity High (I:H, authentication bypass). Confidentiality and Availability are not directly impacted, keeping the score below Critical. However, integrity impact on authentication systems is severe—it enables unauthorized access to protected resources. The score does not fully capture the transitive risk to downstream applications; in practice, organizational risk may be higher if Dapr is central to your authentication architecture.

Frequently asked questions

Do I need to patch immediately if OIDC is disabled in my Dapr deployment?

No. This vulnerability only affects Sentry instances with OIDC enabled. If you have not explicitly enabled OIDC, you are not affected. Verify your configuration to confirm OIDC is disabled before deprioritizing this issue.

If I have configured a jwt-issuer or oidc-allowed-hosts, am I protected?

Yes, likely. The vulnerability specifically requires both jwt-issuer to be unconfigured and oidc-allowed-hosts to be empty (defaults). If either is set, the header-spoofing attack path is blocked. However, review your configuration file and deployment manifests to confirm these settings are actually present and correct.

What is the impact of the one-hour cache window?

The cache window means that once an attacker poisons the discovery document, legitimate clients will continue to fetch and trust the poisoned version for up to one hour. This allows a single attack to affect many downstream authentication requests. After one hour, the cache expires and clients fetch a fresh (and hopefully corrected) document.

Can I mitigate this without patching while waiting for an update?

Yes. Immediately configure jwt-issuer with your legitimate issuer URL, or populate oidc-allowed-hosts with only your legitimate domain(s). This eliminates the header-spoofing attack vector and protects you even on the current (unpatched) version. Network segmentation to restrict access to the discovery endpoint is a secondary control but not a complete fix.

This analysis is based on published vulnerability data current as of the source modification date. Patch availability, affected product versions, and vendor guidance may change; verify details against the official Dapr security advisory and release notes. This explainer does not constitute legal or compliance advice. Organizations should conduct their own risk assessment based on their specific Dapr deployment configuration, downstream dependencies, and regulatory context. No exploit code or weaponized proof-of-concepts are provided herein. Source: NVD (public-domain), retrieved 2026-08-11. Analysis generated by SEC.co (claude-haiku-4-5).