Skip to main content

http4k Security Digest EUVDEUVD-2026-87852

| CVE-2026-100834 HIGH
Authentication Bypass by Capture-replay (CWE-294)
2026-09-27 VulnCheck GHSA-r39r-ww5m-7mv9
8.2
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Gain traffic-observation or log-read position
  2. Delivery
    Capture valid 'Authorization: Digest' header
  3. Exploit
    Replay captured header to server
  4. Execution
    Always-true nonceVerifier accepts stale nonce
  5. Impact
    Obtain unauthorized access to protected resource

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V6 - Authentication Replay attack prevention
Exploitation Conditions

Applies only to applications that use ServerFilters.DigestAuth or DigestAuthProvider from org.http4k:http4k-security-digest AND rely on the default nonceVerifier (the { true } always-accept default present since the module's 2021 introduction); applications that already pass an explicit nonce-tracking verifier are unaffected. Exploitation further requires the attacker to first obtain a valid 'Authorization: Digest' header - via network observation of cleartext/decrypted traffic or access to logs that record the header - which limits realistic exploitation to attackers with a traffic-interception vantage point or log access. Deployments serving Digest auth strictly over end-to-end TLS with no header logging substantially raise the difficulty of the required capture step.

Impact

This is a real but conditionally-gated authentication weakness rather than a mass-exploitable critical. The CVSS 4.0 vector (AV:N/AC:L/AT:P/PR:N/UI:N/VC:H) rates it 8.2, but the single most important signal is AT:P (Attack Requirements: Present) - exploitation is impossible until the attacker first captures a valid 'Authorization: Digest' header, which the vendor itself concedes is 'non-trivial in modern TLS deployments but not impossible.' PR:N is accurate: the replayer never needs their own credentials, they reuse a captured one. No EPSS score, no CISA KEV listing, and no public POC were provided, so there is no signal of active or automatable exploitation - consistent with a flaw that requires a prerequisite man-in-the-middle position or log/traffic access. SSVC-style reading: exploitation status = none observed, automatable = no (the capture step is opportunistic and environment-specific), technical impact = partial (grants access to one protected resource, no code execution). The vendor scores confidentiality VC:H with VI:N/VA:N; I largely agree the impact is bounded to unauthorized access of the Digest-protected resource. Net: prioritize for teams that actually deploy http4k Digest auth over cleartext or with accessible logs, but it does not warrant emergency patching for the general population given the capture precondition and absence of KEV/EPSS/POC evidence.

Exploit ScenarioDerived

An attacker positioned to observe network traffic to an http4k service that terminates TLS upstream (or one exposing Digest headers in application/proxy logs) captures a legitimate user's 'Authorization: Digest' response. Because the default nonceVerifier is { true }, the server accepts that same nonce forever, so the attacker replays the captured header to authenticate as that user against the protected resource indefinitely. No public exploit code was identified at time of analysis; exploitation hinges on the attacker's ability to capture a valid Digest response.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 27, 2026

Replay of captured Digest authentication credentials is possible in the http4k http4k-security-digest module (org.http4k:http4k-security-digest) because ServerFilters.DigestAuth and the underlying DigestAuthProvider default their nonceVerifier parameter to { true }, accepting every nonce regardless of value, age, or prior use. Any application that uses these components with the default configuration and exposes a protected resource has no replay protection: an attacker who obtains a valid 'Authorization: Digest' header - for example through network observation or reading logs that record the header - can replay that response indefinitely against the same resource, yielding credential-equivalent access and information disclosure rather than modification of data. The weakness has been present since DigestAuthProvider was introduced in 2021; the CVSS 4.0 score is 8.2 (8.2 with AT:P reflecting the capture prerequisite), and the independent assessment rates it CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N, treating it as a real but conditionally gated authentication weakness rather than a mass-exploitable critical. There is no public exploit identified at time of analysis, and vendor-released patches exist in 6.48.0.0, 5.42.0.0, and 4.51.0.0.

RemediationAI

Upgrade to the fixed version for your line: 6.48.0.0 for v6.x (Community), 5.42.0.0 for v5.x (LTS/Enterprise), or 4.51.0.0 for v4.x (LTS/Enterprise); the 5.x and 4.x fixes are distributed through the Enterprise channel, so contact enterprise@http4k.org if Digest auth is present in those lines, and note that 6.48.0.0 is available on the public Community line. The fix is a deliberate breaking change: the default value of nonceVerifier has been removed from both ServerFilters.DigestAuth and DigestAuthProvider so callers must supply a real verifier explicitly - be prepared for compilation errors in affected call sites and treat them as the signal that the broken default was being relied upon (patches: https://github.com/http4k/http4k/commit/8a52b615b1 and https://github.com/http4k/http4k/commit/4f904b4692; advisory: https://github.com/http4k/http4k/security/advisories/GHSA-c7jm-38gq-h67h). If immediate upgrade is not possible, pass a custom nonceVerifier that records nonces it has issued, enforces a short TTL, and rejects any nonce seen before - this restores the anti-replay guarantee but requires server-side state and works only within a single node or a shared store, so it adds storage and clustering complexity and introduces the risk of rejecting legitimate clients if the TTL is set too aggressively. Compensating measures that reduce the required capture step should be applied regardless: enforce end-to-end TLS on all Digest-protected endpoints, exclude the Authorization header from application and proxy access logs, and restrict log access - each of these lowers the likelihood that an attacker can obtain the header needed to replay it, but none of them substitutes for nonce verification. Organizations that cannot implement a stateful verifier at all should consider migrating the protected resources away from Digest authentication to a token or session scheme with server-side revocation.

Affected VersionsENISA

http4k 0 <4.51.0.0
http4k 0 <6.48.0.0
http4k 0 <5.42.0.0

Affected Packages

maven org.http4k:http4k-security-digest fix: 4.51.0.0, 5.42.0.0, 6.48.0.0
euvd http4k fix: 4.51.0.0, 5.42.0.0, 6.48.0.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in maven, euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

HTTP Digest authentication is an RFC-defined challenge/response scheme in which the server issues a nonce and the client returns an Authorization: Digest header containing a hash of credentials, the nonce, and request attributes. The server-side nonce is the primary anti-replay control: a correct implementation tracks issued nonces, enforces a lifetime, and rejects reuse, so a captured header becomes useless once the nonce expires. In http4k's Kotlin implementation (Maven artifact org.http4k:http4k-security-digest, built on http4k-core), both ServerFilters.DigestAuth and DigestAuthProvider declared nonceVerifier with a default lambda of { true }, so the verification step returned success unconditionally. This is CWE-294 (Authentication Bypass by Capture-replay): the fundamental flaw is not a cryptographic break of the digest hash but the silent omission of stateful replay checks, which reduces Digest authentication to a credential bound only to a static, reusable nonce string. The CVSS 4.0 vector marks AT:P, i.e. the attack depends on a pre-existing condition - the attacker must already possess a valid Digest header captured from cleartext or decrypted traffic, or from a log file that records the header - which is why the independent assessment uses CVSS 3.1 AC:H rather than AC:L even though no authentication is required (PR:N) to send the replayed request. Because the flaw ships as a library default inherited by downstream applications, the affected population is any service built on the matching versions that did not explicitly override the verifier.

Know when Http4K gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (VulnCheck) PRIMARY 8.2 HIGH
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
vuln.today AI 5.9 MEDIUM

AV:N and PR:N since a captured header is replayed without the attacker's own credentials; AC:H because exploitation first requires capturing a valid Digest response; C:H for unauthorized resource access, I/A:N.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
4.0 AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
Present
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

http4k's Digest authentication module (org.http4k:http4k-security-digest) before versions 6.48.0.0, 5.42.0.0 and 4.51.0.0 defaults the nonceVerifier parameter of ServerFilters.DigestAuth and DigestAuthProvider to { true }, so every nonce is accepted regardless of its value, age, or prior use. Applications relying on this default have no replay protection on Digest authentication: an attacker who can capture a valid 'Authorization: Digest' response (for example by observing network traffic or reading logs) can replay it indefinitely against the same protected resource.

Technical POC Analysis

No runnable PoC was supplied.

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

Applications built on the http4k http4k-security-digest module accept replayed Digest authentication headers by default, so anyone who captures a single valid header can reuse it indefinitely for credential-equivalent access to protected resources. The insecure default has been present since the component was introduced in 2021, meaning teams may be exposed in production without any indication from scans or configuration reviews. Leadership should care because the impact is disclosure of protected data and the bar for an attacker is low: a header copied from logs or an unencrypted network segment is sufficient.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.3%
Top 77% exploitable
Prevalence
Low
niche JVM HTTP toolkit; the security-digest module is a narrow opt-in dependency
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Partial

Priority Score

41
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +41
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

Related Vulnerabilities in http4k Cookie, Host Matching, and Auth Flaws

View all 3

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy