CVE-2026-26275: junkurihara httpsig-rs · Improper Validation of Integrity Check Value
Affects junkurihara httpsig-rsSource CVE Database V5
Not known to be exploited · CVSS 7.5 High : upgrade to 0.0.23 soon.
Data as of 26 Oct 2026, 10:12 UTC
- EPSS
- 0.1% chance of exploitation in 30 days – higher than 7% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
- Patch
- Available – fixed in 0.0.23
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:NExploitation evidence
Disclosed: evidence found.
CVE published 19 Feb 2026
Detectable: no evidence on record.
No public nuclei template indexed
Weaponised: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 26 Oct 2026.
What to do
Upgrade junkurihara httpsig-rs to 0.0.23.
Affected software
| Product | Affected | Fixed in |
|---|---|---|
| junkuriharahttpsig-rs | Affected
| Fixed in
|
AI-suggested
The primary mitigation is to upgrade httpsig-hyper to version 0.0.23 or later, which contains the fix for this vulnerability. Until upgrading is possible, organizations should avoid relying solely on Digest header verification for message integrity. Instead, enforce full HTTP message signature validation at the application layer, including verification of signature headers beyond the Digest. Implement defense-in-depth by combining multiple integrity checks and monitoring for anomalous message modifications. Review and audit code that depends on httpsig-rs to ensure no insecure assumptions about digest verification exist. Employ constant-time comparison techniques where applicable to prevent timing attacks. Additionally, conduct regression testing after upgrades to confirm the vulnerability is resolved and not reintroduced. Maintain awareness of updates from the vendor and monitor for any emerging exploits targeting this vulnerability.
Description
httpsig-hyper is a hyper extension for http message signatures. An issue was discovered in `httpsig-hyper` prior to version 0.0.23 where Digest header verification could incorrectly succeed due to misuse of Rust's `matches!` macro. Specifically, the comparison `if matches!(digest, _expected_digest)` treated `_expected_digest` as a pattern binding rather than a value comparison, resulting in unconditional success of the match expression. As a consequence, digest verification could incorrectly return success even when the computed digest did not match the expected value. Applications relying on Digest verification as part of HTTP message signature validation may therefore fail to detect message body modification. The severity depends on how the library is integrated and whether additional signature validation layers are enforced. This issue has been fixed in `httpsig-hyper` 0.0.23. The fix replaces the incorrect `matches!` usage with proper value comparison and additionally introduces constant-time comparison for digest verification as defense-in-depth. Regression tests have also been added to prevent reintroduction of this issue. Users are strongly advised to upgrade to the patched version. There is no reliable workaround without upgrading. Users who cannot immediately upgrade should avoid relying solely on Digest verification for message integrity and ensure that full HTTP message signature verification is enforced at the application layer.
References
- github.com/junkurihara/httpsig-rs/security/advisories/GHSA-7v42-g35v-xrch (opens in a new tab)
- github.com/junkurihara/httpsig-rs/pull/14 (opens in a new tab)
- github.com/junkurihara/httpsig-rs/pull/15 (opens in a new tab)
- github.com/junkurihara/httpsig-rs/commit/5533f596c650377e02f4aa9e3eb8dba591b87370 (opens in a new tab)
- github.com/junkurihara/httpsig-rs/commit/65cbd19b395180a4bba09a89746c4b14ccb8d297 (opens in a new tab)