CVE-2026-75885: Openshift/console: openshift/console: unauthenticated ssrf and resource exhaustion via devfile parser endpoint

Published Aug 18, 2026
·
Updated

A flaw was found in the OpenShift console. Unauthenticated access to the /api/devfile/ and /api/devfile/samples/ endpoints allows a remote attacker to send crafted devfile payloads. This can lead to Server-Side Request Forgery (SSRF), where the console pod makes requests to internal services and reflects partial responses to the attacker. Additionally, by sending repeated large requests without a specified content length, an attacker can cause unbounded memory growth, leading to a Denial of Service (DoS).

Other sources

The /api/devfile/ and /api/devfile/samples/ endpoints in the OpenShift console (bridge) are registered with handleFunc() directly, without being wrapped in authHandler or authHandlerWithUser like every other /api/ route (pkg/server/server.go:347-348).

DevfileHandler decodes an arbitrary JSON body and passes DevfileContent to devfile.ParseDevfileAndValidate(parser.ParserArgs{Data: ..., HTTPTimeout: &httpTimeout}). The devfile library resolves parent.uri, kubernetes.uri, and remote plugin references over HTTP from the console pod. No request-body size limit is applied (MaxBytesReader is absent).

An unauthenticated attacker on the OpenShift Route can send a crafted devfile payload with parent.uri pointing to internal services (e.g. cloud metadata endpoints, etcd, kubelets). The response body is reflected in the parser error string returned to the client, yielding partial-read SSRF. Repeated large-body POSTs without Content-Length cause unbounded memory growth (DoS).

Tested and reproduced on OCP 5.0 nightly cluster.

Upstream: https://github.com/openshift/console File: pkg/server/server.go:347-348, pkg/devfile/handler.go:37-67

— Red Hat

Affected Software

1 affected component
Red Hat OpenShift Console=5.0

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Configuration

    Modify pkg/server/server.go handling so that /api/devfile/ and /api/devfile/samples/ endpoints are wrapped in authHandler or authHandlerWithUser (instead of being registered with handleFunc directly) to prevent unauthenticated access.

    OpenShift console API routing (/api/devfile/ and /api/devfile/samples/ endpoints) authentication/authorization middleware wrapping for handleFunc-registered routes = Require auth wrapping (authHandler or authHandlerWithUser) instead of unauthenticated handleFunc
  2. Configuration

    In pkg/devfile/handler.go where DevfileHandler decodes the request body, add a MaxBytesReader wrapper (MaxBytesReader is absent per report) so repeated large requests without Content-Length cannot cause unbounded memory growth (DoS).

    OpenShift console devfile request handling (devfile parser endpoint) request body size limit (MaxBytesReader) = Apply a request-body size limit by adding MaxBytesReader
  3. Compensating control

    Network-isolate the OpenShift console pod and restrict egress from the console pod so it cannot reach internal metadata/services (e.g., cloud metadata endpoints, etcd, kubelets), reducing impact of SSRF via devfile parent.uri/kubernetes.uri resolution over HTTP.

Event History

Aug 18, 2026
Data Sourced
via Red Hat·01:11 PM
DescriptionSeverityAffected Software
Sep 18, 2026
CVE Published
via MITRE·09:58 PM
Data Sourced
via MITRE·09:58 PM
DescriptionSeverityWeakness
Data Sourced
via NVD·10:17 PM
DescriptionSeverityWeakness

Frequently Asked Questions

1

Who can exploit this issue?

Any remote attacker who can reach the OpenShift Console route can send requests to the affected endpoints. Authentication and prior privileges are not required.

2

Which endpoints are involved?

The affected endpoints are /api/devfile/ and /api/devfile/samples/. Unlike other /api/* routes, these endpoints are registered directly and are not wrapped with the console authentication handlers.

3

What can an attacker make the console pod request?

A crafted devfile can cause the devfile parser to resolve parent.uri, kubernetes.uri, and remote plugin references over HTTP from the console pod. This may permit requests to internal services and expose partial responses to the attacker.

4

How can this lead to denial of service?

The endpoints decode arbitrary JSON request bodies without a request-body size limit. Repeated large requests that omit a specified content length can cause unbounded memory growth in the console pod.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203