CVE-2026-92164
## Summary `HTTPSession` mounts a `FileAdapter` for the `file://` scheme and inherits redirect handling unchanged from `requests.Session`. `requests` does not check for scheme downgrades or cross-protocol transitions when it follows a redirect, so any http(s) request Streamlink makes can be redirected by the remote server into `file:///...` and the local file is returned as the response body. `GHSA-hgqw-6m45-hw5f` / `CVE-2026-44353` fixed direct `file://` segment and playlist URIs in HLS playlists and DASH manifests. Those checks look at the URL as it appears in the manifest, so a manifest that lists an ordinary `https://` URL passes them, and the redirect happens later at fetch time. The attack surface is the same one that advisory describes, but the flaw is one level down in `HTTPSession` rather than in the streaming implementations, so it applies to every request the session makes and not only to segment and manifest fetches. ## Affected version Executed against released `streamlink 8.5.0` (PyPI, installed into a clean venv on Python 3.12). ## Attacker model The attacker controls a URL the victim's Streamlink run reaches: a playlist or manifest URL passed on the command line, or any http(s) URL referenced from attacker-controlled manifest content. No privileges on the victim host and no `file://` input are required, and the `file://` scheme never appears in anything the victim or the manifest parser sees. ## Proof of concept, executed ```python import threading from http.server import BaseHTTPRequestHandler, HTTPServer from streamlink.exceptions import StreamError from streamlink.session.http import HTTPSession class H(BaseHTTPRequestHandler): def do_GET(self): if self.path == "/segment": self.send_response(302) self.send_header("Location", "file:///etc/hosts") self.end_headers() else: self.send_response(404) self.end_headers() def log_message(self, *a): pass s
Properties
- ghsa_id
- GHSA-vf2x-4v53-pm7v
- severity
- medium
- summary
- Streamlink: HTTPSession follows HTTP redirects into file:// URLs, reading local files
- cvss_score
- 6.5
- cve_id
- CVE-2026-92164
- cvss_vector
- CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N
- signal_observed_at
- 2026-09-24T18:22:33+00:00
- is_ghsa_only
- false
- ghsa_published
- 2026-09-24T14:58:04Z
- source_url
- https://github.com/advisories/GHSA-vf2x-4v53-pm7v
- ghsa_updated
- 2026-09-24T14:58:05Z
Related Entities (4)
VULNERABLE_TO (1)
AFFECTS (1)
HAS_WEAKNESS (1)
REPORTED_BY (1)
Explore deeper with Ninja Signal's threat intelligence graph