Skip to content
Heist/ feed
HighFix available

Open WebUI: Unauthenticated requests can stall the server via uncached OIDC fetches in back-channel logout

Type: advisorySource: OSV1 source record

## Summary The OIDC back-channel logout endpoint is unauthenticated by design, because the identity provider calls it without a browser session. Before checking whether the submitted logout token was genuine, the handler fetched the provider's discovery document and its signing keys over the network, and repeated both fetches on every request because nothing was cached. The signing-key fetch also ran as a blocking call inside the async event loop. A small number of requests carrying a worthless token was therefore enough to make the whole instance stop answering. ## Preconditions - `ENABLE_OAUTH_BACKCHANNEL_LOGOUT=true`. The default is `False`, so a stock deployment is not affected. This setting is recommended in the Open WebUI hardening documentation, which is why the issue is treated as in scope. - At least one OIDC provider configured (`OAUTH_CLIENT_ID`, `OAUTH_CLIENT_SECRET`, `OPENID_PROVIDER_URL`). - No account, credential, session or secret identifier is required. The attacker needs network access to the instance and the configured issuer string, which is published in the provider's own discovery document. ## Impact Against 0.11.0, with the identity provider answering in 150 ms, 60 concurrent requests carrying a token whose signature was four characters long stalled the async event loop for 8.3 seconds, measured against an idle baseline of 10.8 ms. For the length of that stall the process answers nothing: no chat requests, no API calls, no health check. Open WebUI runs

Announced Source revision 1
Original source ↗

GHSA-3g9q-v48f-hh9w

Primary source · Revision 1

Imported from structured advisory data. Source references identify upstream records or fields; verify affected versions and your deployed configuration.

Security context

Source reference: osv:GHSA-3g9q-v48f-hh9w

open-webui

Source reference: /affected/0/package/name

Affected versions
0.10.0

Source reference: /affected/0/versions

0.10.1

Source reference: /affected/0/versions

0.10.2

Source reference: /affected/0/versions

0.11.0

Source reference: /affected/0/versions

0.9.0

Source reference: /affected/0/versions

0.9.1

Source reference: /affected/0/versions

0.9.2

Source reference: /affected/0/versions

0.9.3

Source reference: /affected/0/versions

0.9.4

Source reference: /affected/0/versions

0.9.5

Source reference: /affected/0/versions

0.9.6

Source reference: /affected/0/versions

Fixed versions
0.11.1

Source reference: /affected/0/ranges

Prerequisites
Not stated in this record

Structured affected-version data

Original package identities and version rules from this source.

[
  {
    "ranges": [
      {
        "type": "ECOSYSTEM",
        "events": [
          {
            "introduced": "0.9.0"
          },
          {
            "fixed": "0.11.1"
          }
        ]
      }
    ],
    "package": {
      "name": "open-webui",
      "purl": "pkg:pypi/open-webui",
      "ecosystem": "PyPI"
    },
    "versions": [
      "0.10.0",
      "0.10.1",
      "0.10.2",
      "0.11.0",
      "0.9.0",
      "0.9.1",
      "0.9.2",
      "0.9.3",
      "0.9.4",
      "0.9.5",
      "0.9.6"
    ],
    "database_specific": {
      "source": "https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/09/GHSA-3g9q-v48f-hh9w/GHSA-3g9q-v48f-hh9w.json",
      "last_known_affected_version_range": "<= 0.11.0"
    }
  }
]
Related CVEs
CVE-2026-87011

Source reference: /aliases

Publisher severity

high

Source reference: /database_specific/severity

Event
#62530 · Revision 1
Added to Heist Feed
Publisher date
Read the original announcement