# CVE-2026-105298: Pingora HTTP/2 host mismatch and cache poisoning

Source: https://junglewise.ai/threats/cve-2026-105298-summary-before-version-0-9-0-pingora-accepted-http-2-requests  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-10-20. Updated: 2026-10-20  
License: CC BY 4.0 with a link back

CVE-2026-105298 · Severity: medium · CVSS 4 · Published 2026-10-20

Pingora, a reverse proxy and load balancer, accepted conflicting Host and :authority headers in HTTP/2 requests before version 0.9.0. An attacker could send a single request that appears to target one domain to security filters and caches, but is routed to a different upstream host. This can poison cached responses or bypass host-based access controls.

Technologies: [Cloudflare Pingora](https://junglewise.ai/threats/technologies/pingora), [pingora-core (crates.io)](https://junglewise.ai/threats/technologies/pingora-core). Vendors: [Cloudflare](https://junglewise.ai/threats/vendors/cloudflare), [crates.io](https://junglewise.ai/threats/vendors/crates-io).

## Quick answers

**Is CVE-2026-105298 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-105298 being exploited in the wild.

**How severe is CVE-2026-105298?** Medium severity, with a CVSS score of 4, published 20 October 2026.

**Which products and versions are affected?** Cloudflare Pingora before 0.9.0; pingora-core (crates.io) SEMVER:introduced=0.0.0-0,fixed=0.9.0.

**Is there a fix for CVE-2026-105298?** Yes. pingora-core (crates.io): upgrade to 0.9.0 or later. Until then: If you cannot upgrade, add a request filter that rejects HTTP/2 requests carrying a Host header different from the URI authority, or whose authority contains '@'. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2026-105298 attacked?** It is attacked over the network, in a software library.

**Am I affected by CVE-2026-105298?** Check whether you run Cloudflare Pingora or pingora-core (crates.io) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## How to fix

- pingora-core (crates.io): upgrade to 0.9.0 or later

  ```sh
  cargo update -p pingora-core
  ```


If you cannot upgrade, add a request filter that rejects HTTP/2 requests carrying a Host header different from the URI authority, or whose authority contains '@'.

## Technical details

Pingora failed to validate that the HTTP/2 :authority pseudo-header matched the Host header, and did not reject :authority values containing userinfo (e.g., user@example.com), violating RFC 9113. An unauthenticated remote attacker can exploit this via HTTP/2 to cause request filters and caches to see a different authority than the upstream server receives, enabling cache poisoning or access control bypass where host-based routing is in use.

## Affected products

- Cloudflare Pingora before 0.9.0

## Identifiers

- CVE-2026-105298
- GHSA-mgg9-6xw2-jfgp
- RUSTSEC-2026-0388

## Timeline

- 2026-10-20: disclosed

## Related threats

- [Cloudflare Pingora HTTP/1 Connection header bypass](https://junglewise.ai/threats/cve-2026-105299-summary-before-version-0-9-0-the-http-1-upstream-path-in-pingora)
- [Pingora HTTP/2 server memory exhaustion via header injection](https://junglewise.ai/threats/cve-2026-105297-summary-before-version-0-8-1-pingora-s-http-2-server-used-the-h2)
- [Duplicate Advisory: HTTP Request Smuggling via Premature Upgrade](https://junglewise.ai/threats/duplicate-advisory-http-request-smuggling-via-premature-upgrade-80d9b682)
- [Duplicate Advisory: HTTP Request Smuggling via HTTP/1.0 and Transfer-Encoding Misparsing](https://junglewise.ai/threats/duplicate-advisory-http-request-smuggling-via-http-1-0-and-transfer-e49a45ff)
- [RUSTSEC-2026-0034 - HTTP Request Smuggling via HTTP/1.0 and Transfer-Encoding Misparsing](https://junglewise.ai/threats/cve-2026-2835-pingora-has-http-request-smuggling-via-http-1-0-and-transfer)
