---
id: "CVE-2026-121629"
page: "https://infrastack.ai/live/CVE-2026-121629"
kind: "vulnerability"
aliases: ["CVE-2026-121629"]
title: "GStreamer: adaptive streaming demuxers read local files via file:// manifest URIs"
severity: "high"
cvss: 7.5
epss: null
exploited: false
status: "open"
category: "package"
products: [{"name": "gst-plugins-good", "fixed": ["1.28.9"], "affected": "< 1.28.9", "ecosystem": "gstreamer"}]
ecosystems: []
tags: ["dash", "gst-plugins-good", "gstreamer", "hls", "media-server", "package", "self-hosted"]
not_affected_if: ["local-playback-only", "no-untrusted-manifests"]
published_at: "2026-11-09T12:16:37+00:00"
first_seen_at: "2026-11-09T12:26:23+00:00"
updated_at: "2026-11-09T12:28:59+00:00"
sources: [{"source": "nvd", "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-121629", "first_seen_at": "2026-11-09T12:26:23+00:00"}, {"source": "analyst", "url": "https://gstreamer.freedesktop.org/security/sa-2026-0097.html", "first_seen_at": "2026-11-09T12:28:59+00:00", "cites": ["https://gstreamer.freedesktop.org/security/sa-2026-0097.html", "https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/12990", "https://access.redhat.com/security/cve/CVE-2026-121629"]}]
exploit_sources: []
---

# GStreamer: adaptive streaming demuxers read local files via file:// manifest URIs

Link for people: https://infrastack.ai/live/CVE-2026-121629 (this .md is for agents)

GStreamer's HLS, DASH and MSS demuxers fetch URIs listed inside a manifest without limiting the URI scheme, so file:// entries are followed. An attacker who controls a manifest URL or can inject content into an HTTP manifest response can read arbitrary local files or infer whether they exist.

_Summary, check and fix written by a model from the sources; labelled as such._

## Affected

- gstreamer:gst-plugins-good affected < 1.28.9 fixed 1.28.9

## How to check

Run gst-inspect-1.0 --version or check your package manager for gst-plugins-good; versions before 1.28.9 are affected (Red Hat says builds below 1.26.0 are not). Also check any app that links GStreamer and opens HLS/DASH manifests from untrusted URLs.

## Fix

Upgrade gst-plugins-good to 1.28.9 (patch: MR 12990). For older builds, apply the patch and recompile.

## Timeline

- 2026-11-09T12:26:23+00:00 nvd https://nvd.nist.gov/vuln/detail/CVE-2026-121629
- 2026-11-09T12:28:59+00:00 analyst https://gstreamer.freedesktop.org/security/sa-2026-0097.html — GStreamer-SA-2026-0097 (primary) read: affected gst-plugins-good < 1.28.9, fixed 1.28.9, MR 12990. Red Hat page lists mitigations (avoid untrusted manifests, sandbox filesystem, restrict manifest hosts) which do not remove the flaw; Red Hat says <1.26 not affected, advisory says only 'before 1.28.9'. Advisory names HLS/DASH only; NVD/Red Hat add MSS (unconfirmed by vendor). web-cli search unavailable (Exa credits), X not checked. No exploitation or PoC seen. how_to_check not verified (my wording).

## Documents

- [advisory] GStreamer-SA-2026-0097 https://gstreamer.freedesktop.org/security/sa-2026-0097.html
- [fix] GStreamer MR 12990 (fix) https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/12990
- [mitigation] Red Hat CVE-2026-121629 https://access.redhat.com/security/cve/CVE-2026-121629

## From the sources

A flaw was found in GStreamer's adaptive streaming demuxers (HLS, DASH, MSS). When processing a media playlist or manifest, URIs referenced in the manifest content are fetched without restricting which URI schemes are permitted. An attacker who controls a manifest URL, or who can inject content into an HTTP manifest response, can include file:// URIs pointing to arbitrary local files, causing the affected application to read and process those files. In automated or server-side deployments such as media recorders, proxies, and downloaders, this can lead to disclosure of sensitive local files. Existence of files can also be inferred through differing error responses even when content is not directly observable.

---

_Free to read, with fair use of about 60 pages a minute. For higher limits or API access: sales@infrastack.ai_
