Advisory Database
  • Advisories
  • Dependency Scanning
  1. pypi
  2. ›
  3. open-webui
  4. ›
  5. GHSA-3wgj-c2hg-vm6q

GHSA-3wgj-c2hg-vm6q: Open WebUI vulnerable to stored XSS via OAuth picture claim stored as SVG data URI in profile_image_url

May 14, 2026

When a user signs in via OAuth, Open WebUI fetches the picture claim URL, infers a MIME type from the URL extension via mimetypes.guess_type, and stores data:<mime>;base64,... as the user’s profile image. The OAuth code path does not go through the validate_profile_image_url Pydantic validator that normally restricts profile images to PNG/JPEG/GIF/WebP. A .svg URL in the picture claim lands in the database as data:image/svg+xml;base64,....

The profile image endpoint GET /api/v1/users/{id}/profile/image returns the stored data URI with the attacker-controlled MIME type as Content-Type and Content-Disposition: inline. Security headers (CSP, X-Content-Type-Options) are env-gated and not set by default. An authenticated user navigating directly to that URL gets the SVG as a top-level document, executing <script>/onload in the same origin and able to read localStorage.token → account takeover.

Same class of trust-boundary error as CVE-2025-64496 (trust of untrusted model servers) and CVE-2025-64495 (rich-text XSS). Different sink, different code path.

References

  • github.com/advisories/GHSA-3wgj-c2hg-vm6q
  • github.com/open-webui/open-webui/releases/tag/v0.9.5
  • github.com/open-webui/open-webui/security/advisories/GHSA-3wgj-c2hg-vm6q

Code Behaviors & Features

Detect and mitigate GHSA-3wgj-c2hg-vm6q with GitLab Dependency Scanning

Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Dependency Scanning using SBOM also detects vulnerabilities from proprietary advisories that this site does not include. Learn more about Dependency Scanning using SBOM →

Affected versions

All versions before 0.9.5

Fixed versions

  • 0.9.5

Solution

Upgrade to version 0.9.5 or above.

Impact 7.3 HIGH

CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:N

Learn more about CVSS

Weakness

  • CWE-20: Improper Input Validation
  • CWE-79: Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

Source file

pypi/open-webui/GHSA-3wgj-c2hg-vm6q.yml

Spotted a mistake? Edit the file on GitLab.

  • Site Repo
  • About GitLab
  • Terms
  • Privacy Statement
  • Contact

Page generated Sun, 08 Nov 2026 00:16:40 +0000.