Safeguard
Vulnerability Analysis•

CVE-2026-47879: High SSRF in Spring Cloud Gateway JSON to gRPC Filter

Spring Cloud Gateway JsonToGrpc filter accepts any resource location for its proto descriptor. Upgrade to 5.0.3 or restrict valid descriptor prefixes.

Safeguard Security Team
Updated 3 min read

CVE-2026-47879 is a high severity (CVSS 7.7) server-side request forgery in Spring Cloud Gateway. The JsonToGrpcGatewayFilterFactory allows arbitrary Spring resource locations for the proto descriptor. The open source fix is Spring Cloud Gateway 5.0.3. The steps below show how to check your version and what to change.

What's affected

  • Spring Cloud Gateway 5.0.0 to 5.0.2. Fixed in 5.0.3 (open source).
  • Spring Cloud Gateway 4.3.0 to 4.3.5. Fixed in 4.3.6 (Enterprise Support only).
  • Spring Cloud Gateway 4.0.0 to 4.2.9. Fixed in 4.2.10 (Enterprise Support only).
  • Spring Cloud Gateway 3.1.13 and earlier. Fixed in 3.1.14 (Enterprise Support only).

The record and the advisory match. Spring rates the issue High. The advisory also offers a configuration mitigation for file-based descriptors, shown below.

How to check if you're exposed

For Maven projects, print the resolved version:

mvn dependency:tree | grep spring-cloud-gateway

For Gradle projects:

./gradlew dependencies | grep spring-cloud-gateway

Check the transitive tree, not only your direct dependencies, because Spring components often arrive through a starter or a parent BOM.

Then check your route definitions for the JSON to gRPC filter. Search your configuration for JsonToGrpc. If you do not use this filter, the advisory does not describe you as exposed to this path.

What to do now

  1. Upgrade to Spring Cloud Gateway 5.0.3 or the fixed release for your line.
  2. If you use file-based descriptors, set the valid prefixes property so only expected locations can be read. For 5.0.x and 4.3.x it is spring.cloud.gateway.server.webflux.json-to-grpc.valid-proto-descriptor-prefixes.
  3. For 4.2.x and 3.1.x the property is spring.cloud.gateway.json-to-grpc.valid-proto-descriptor-prefixes.
  4. Review who can create or edit gateway routes, since the filter configuration is where the location is set.

Why it matters

The record lists CWE-918, server-side request forgery. The filter loads a protocol buffer descriptor from a Spring resource location, and the framework accepts many kinds of location, such as files and URLs. If that location can be influenced, the gateway can be made to fetch or read something the operator did not intend.

Gateways sit at a trust boundary and often have network reach into internal services, which is why SSRF in this component rates High. Limiting the allowed prefixes turns an open location into an allowlist. The record does not mark this CVE as known exploited.

Quick check

Do I need to be using gRPC to be at risk?

The flaw is in the JSON to gRPC filter. If your routes do not use that filter, the advisory does not describe you as exposed to this issue.

What does the prefix property do?

It restricts the proto descriptor locations the filter may read to the prefixes you list.

Sources

Last reviewed: 18 October 2026.

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.