Every CVE Search/ Get API key

CVE-2026-100834

http4k before 6.48.0.0 Digest Authentication Replay Protection Bypass

8.2 HighFix available

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.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
High
Integrity
None
Availability
None

Exploit likelihood

0.32%Unchanged since Sep 27, 2026
90%50%10%1%

What each source reports

CVE List Score used 8.2

http4k before 6.48.0.0 Digest Authentication Replay Protection Bypass

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.

Record
CVE-2026-100834
CVSS 4.0
8.2 HighCVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
CVSS 3.1
5.9 MediumCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
Weakness
CWE-294
Updated
2026-11-02
EUVDEUVD-2026-87852 8.2

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.

Record
EUVD-2026-87852
CVSS 4.0
8.2 HighCVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
Updated
2026-11-02
GitHub AdvisoriesGHSA-r39r-ww5m-7mv9 8.2

http4k's Digest authentication module (org.http4k:http4k-security-digest) before versions 6.48.0...

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.

Record
GHSA-r39r-ww5m-7mv9
CVSS 4.0
8.2 HighCVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
CVSS 3.1
5.9 MediumCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
Weakness
CWE-294
Updated
2026-11-02
GitHub AdvisoriesGHSA-c7jm-38gq-h67h No score

http4k: `ServerFilters.DigestAuth` / `DigestAuthProvider` defaulted to an always-true nonce verifier, disabling replay protection in default deployments

Impact

ServerFilters.DigestAuth and the underlying DigestAuthProvider both defaulted their nonceVerifier parameter to { true } — i.e. every nonce was accepted regardless of value, age, or prior use. Any deployment using the default configuration had no replay protection on Digest authentication; a captured Authorization: Digest … response could be replayed indefinitely against the same protected resource.

The nonce-verification mechanism in Digest auth is the primary anti-replay control — without it, Digest reduces to a credential bound only to a stale nonce string.

Who is affected: any application using ServerFilters.DigestAuth or DigestAuthProvider with the default nonceVerifier. The broken default has been present since DigestAuthProvider was introduced (2021). Exploitation requires the attacker to first capture a valid Digest response (network observation, log access, etc.) — non-trivial in modern TLS deployments but not impossible. Anyone running Digest auth with default config should treat upgrade as urgent.

Patches

| Line | Fixed in | Edition | |------|----------|---------| | v6.x (Community) | 6.48.0.0 | Community | | v5.x (LTS) | 5.42.0.0 | Enterprise — contact [email protected] (if Digest auth is present in your v5.x line) | | v4.x (LTS) | 4.51.0.0 | Enterprise — contact [email protected] (if Digest auth is present in your v4.x line) |

The fix ([Break]) removes the default value for nonceVerifier from both ServerFilters.DigestAuth and DigestAuthProvider. Callers must now supply a real verifier explicitly — the broken default cannot be silently inherited.

Workarounds

For deployments that cannot upgrade immediately: explicitly supply a nonceVerifier that tracks issued nonces, enforces a TTL, and rejects re-use. Do not rely on the default.

Record
GHSA-c7jm-38gq-h67h
Weakness
CWE-294
Updated
2026-11-02
NVD 8.2

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.

Record
CVE-2026-100834
CVSS 4.0
8.2 HighCVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
CVSS 3.1
5.9 MediumCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
Weakness
CWE-294
Updated
2026-11-02
OSV 8.2

http4k before 6.48.0.0 Digest Authentication Replay Protection Bypass

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.

Record
CVE-2026-100834
CVSS 4.0
8.2 HighCVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
Weakness
CWE-294
Updated
2026-11-02
OSVGHSA-c7jm-38gq-h67h No score

http4k: `ServerFilters.DigestAuth` / `DigestAuthProvider` defaulted to an always-true nonce verifier, disabling replay protection in default deployments

Impact

ServerFilters.DigestAuth and the underlying DigestAuthProvider both defaulted their nonceVerifier parameter to { true } — i.e. every nonce was accepted regardless of value, age, or prior use. Any deployment using the default configuration had no replay protection on Digest authentication; a captured Authorization: Digest … response could be replayed indefinitely against the same protected resource.

The nonce-verification mechanism in Digest auth is the primary anti-replay control — without it, Digest reduces to a credential bound only to a stale nonce string.

Who is affected: any application using ServerFilters.DigestAuth or DigestAuthProvider with the default nonceVerifier. The broken default has been present since DigestAuthProvider was introduced (2021). Exploitation requires the attacker to first capture a valid Digest response (network observation, log access, etc.) — non-trivial in modern TLS deployments but not impossible. Anyone running Digest auth with default config should treat upgrade as urgent.

Patches

| Line | Fixed in | Edition | |------|----------|---------| | v6.x (Community) | 6.48.0.0 | Community | | v5.x (LTS) | 5.42.0.0 | Enterprise — contact [email protected] (if Digest auth is present in your v5.x line) | | v4.x (LTS) | 4.51.0.0 | Enterprise — contact [email protected] (if Digest auth is present in your v4.x line) |

The fix ([Break]) removes the default value for nonceVerifier from both ServerFilters.DigestAuth and DigestAuthProvider. Callers must now supply a real verifier explicitly — the broken default cannot be silently inherited.

Workarounds

For deployments that cannot upgrade immediately: explicitly supply a nonceVerifier that tracks issued nonces, enforces a TTL, and rejects re-use. Do not rely on the default.

Record
GHSA-c7jm-38gq-h67h
Weakness
CWE-294
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
org.http4k:http4k-security-digest
Maven
6.0.0.0 up to 6.48.0.0
6.48.0.0
org.http4k:http4k-security-digest
Maven
5.0.0.0 up to 5.42.0.0
5.42.0.0
org.http4k:http4k-security-digest
Maven
before 4.51.0.0
4.51.0.0
org.http4k:http4k-security-digest
Maven
6.0.0.0 up to 6.48.0.0, plus listed versions
6.0.1.06.1.0.06.1.0.16.10.0.06.10.1.0
Show 45 moreShow less
6.10.2.06.11.0.06.11.1.06.12.0.06.13.0.06.14.0.06.15.0.06.15.0.16.15.1.06.16.0.06.17.0.06.18.0.16.18.1.06.19.0.06.2.0.06.20.0.06.20.0.16.20.0.26.20.0.36.20.1.06.20.2.06.20.2.16.21.0.06.21.1.06.22.0.06.23.0.06.23.1.06.24.0.06.24.1.06.25.0.06.25.1.06.26.0.06.26.1.06.27.0.06.28.0.06.28.1.06.29.0.06.30.0.06.30.1.06.31.0.06.31.1.06.32.0.06.33.0.06.34.0.06.35.0.0
6.48.0.0
org.http4k:http4k-security-digest
Maven
5.0.0.0 up to 5.42.0.0, plus listed versions
5.1.0.05.1.1.05.1.1.15.1.2.05.1.2.1
Show 45 moreShow less
5.10.0.05.10.1.05.10.2.05.10.3.05.10.4.05.10.5.05.10.6.05.10.7.05.11.0.05.11.1.05.12.0.05.12.1.05.12.2.05.12.2.15.13.0.05.13.0.15.13.1.05.13.2.05.13.4.05.13.4.15.13.5.05.13.6.05.13.6.15.13.7.05.13.8.05.13.9.05.14.0.05.14.1.05.14.2.05.14.4.05.14.5.05.15.0.05.16.0.05.16.1.05.16.2.05.17.0.05.18.1.05.18.2.05.19.0.05.2.0.05.2.1.05.20.0.05.21.0.05.21.1.05.21.2.0
5.42.0.0
org.http4k:http4k-security-digest
Maven
before 4.51.0.0, plus listed versions
4.10.0.0.04.10.0.14.10.1.04.11.0.04.11.0.1
Show 45 moreShow less
4.12.0.04.12.0.14.12.1.04.12.2.04.12.3.04.12.3.14.13.0.04.13.1.04.13.3.04.13.4.04.14.0.04.14.1.04.14.1.14.14.1.24.14.1.34.14.1.44.15.0.04.16.0.04.16.1.04.16.2.04.16.3.04.17.0.04.17.1.04.17.2.04.17.3.04.17.4.04.17.5.04.17.6.04.17.7.04.17.8.04.17.9.04.18.0.04.19.0.04.19.1.04.19.2.04.19.3.04.19.4.04.19.5.04.20.0.04.20.1.04.20.2.04.21.0.04.21.1.04.21.1.14.22.0.0
4.51.0.0

History

History
RecordedChangedSources
first indexedCVE List, EUVD, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2026-100834 is a high vulnerability (CVSS 8.2) in Http4k, published June 19, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.32%, the 25th percentile. Fixed in org.http4k:http4k-security-digest 6.48.0.0.

References

Show 5 moreShow less
This page doesn't list everything

Left out here: 205 versions. The JSON record has them.

MoveEnter Open