CVE-2026-50197 Skipper: opaAuthorizeRequestWithBody filter bypasses OPA policy on Transfer-Encoding: chunked / HTTP/2 requests

High 7.8 Published Updated

Attackers can bypass Open Policy Agent body inspection in Skipper by using chunked or HTTP/2 requests, allowing unauthorized payloads to reach upstream services.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2026-50197?

CVE-2026-50197 is a high-severity vulnerability in zalando skipper, published on 17 Jul 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

Skipper is an HTTP router and reverse proxy for service composition. Prior to 0.26.10, zalando/skipper's OpenPolicyAgent integration silently bypasses request-body inspection on HTTP/1.1 Transfer-Encoding: chunked and HTTP/2 requests that omit the content-length pseudo-header, because the opaAuthorizeRequestWithBody filter and OpenPolicyAgentInstance.ExtractHttpBodyOptionally in filters/openpolicyagent/openpolicyagent.go produce an empty raw_body and input.parsed_body while the upstream service receives the full attacker-controlled body. This issue is fixed in version 0.26.10.

Weakness: CWE-444

Which versions are affected by CVE-2026-50197?

3 open source packages ship an affected version, including github.com/zalando/skipper.

PackageAffectedFixed in
github.com/zalando/skipper GoAll versions0.26.10
github.com/zalando/skipper GoAll versions0.26.10
github.com/zalando/skipper GoAll versions0.26.10

How do I fix CVE-2026-50197?

Upgrade github.com/zalando/skipper to 0.26.10 or later.

Is CVE-2026-50197 being exploited?

It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-50197 exists.

Sources

Also known as GHSA-659f-rgp5-w4wf, GO-2026-5944.

Is CVE-2026-50197 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free