Skip to main content

AzuraCast EUVDEUVD-2026-87820

| CVE-2026-100855 HIGH
Missing Authorization (CWE-862)
2026-09-27 VulnCheck GHSA-rwfr-jcqg-x7jc
7.1
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate as low-priv user on one station
  2. Delivery
    Call GET /file/{id}/play for another station
  3. Exploit
    Enumerate sequential integer media IDs
  4. Execution
    Bypass missing permission check
  5. Impact
    Exfiltrate full cross-station media library

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization checks on every request
MITRE ATT&CK

1 technique across 1 tactic: Privilege Escalation

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires (1) an authenticated AzuraCast account - any valid session or API key, even one scoped to a single station (PR:L); and (2) a multi-tenant deployment where more than one station exists and cross-station isolation matters, since the attacker exfiltrates media from stations they lack permissions on. Exploitation is limited to AzuraCast versions <= 0.23.5 (fixed in 0.23.6). No user interaction is needed and IDs are trivially enumerable because the /file/{id}/play endpoint accepts sequential auto-increment integers. On single-operator instances the flaw has no practical impact since the attacker would already control all stations.

Impact

This is a genuine but moderate-severity broken-access-control flaw (CWE-862), not an inflated high-CVSS issue. The vendor CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N, 7.1) is internally consistent and I largely agree: network-reachable, low attack complexity, requires an authenticated low-privilege account (PR:L), and confidentiality-only impact (VC:H, no integrity or availability effect). The GHSA advisory contains a working PoC (bash exploitation steps), so publicly available exploit code exists - this raises practical risk beyond a paper vulnerability. However, no EPSS score, no CISA KEV listing, and no SSVC decision data were provided, so there is no evidence of active exploitation; the PoC signal and the active-exploitation signal must not be conflated. The realistic risk is highest in multi-tenant AzuraCast deployments where distinct operators share one instance and expect per-station isolation; in single-tenant/single-operator installs the impact is negligible because the attacker would already own all stations. Net: real, verifiable, worth patching for multi-tenant hosts, but low-to-medium priority given confidentiality-only scope, low-privilege authentication requirement, and a niche product footprint.

Exploit ScenarioDerived

In a multi-tenant AzuraCast instance, an attacker holds a valid account with permissions on Station A only. Because GET /api/station/{station_id}/file/{id}/play lacks the station-level permission middleware, they script sequential integer file IDs against Station B and download its entire media library despite having no rights on it. A working PoC demonstrating this is published in the GHSA advisory.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 27, 2026

Missing authorization on AzuraCast's GET /api/station/{station_id}/file/{id}/play endpoint lets any authenticated user - including one whose API key or session is scoped to a single station - download the complete media library of every other station on a multi-tenant installation running 0.23.5 or earlier. Because the endpoint accepts sequential auto-increment media IDs, an attacker can trivially enumerate and exfiltrate files from stations they have no permissions on, with no user interaction and impact limited to confidentiality (vendor CVSS 4.0 base 7.1; assessed as CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N). The vendor advisory (GHSA-qff7-q5fm-8p76) ships step-by-step proof-of-concept reproduction instructions; there is no indication of confirmed active exploitation (CISA KEV) at time of analysis.

RemediationAI

Upgrade to AzuraCast 0.23.6 or later, which restores the missing permission check on the /play route; the fixing change is commit ba92dc3f0ea15a9c0ba0f4557d99a9a26004108f and the full guidance is in the vendor advisory at https://github.com/AzuraCast/AzuraCast/security/advisories/GHSA-qff7-q5fm-8p76, so that is the vendor-released patch (exact fixed version 0.23.6) and it should be applied to every multi-tenant instance. If an immediate upgrade is not possible, compensating controls must be applied with their trade-offs understood: revoke or rotate API keys and sessions belonging to users with access to only one station, since those credentials are the exact prerequisite for exploitation - this temporarily disrupts any external tooling or integrations using those keys. Restrict network access to the /api/station/*/file/*/play path at the reverse proxy or WAF, returning 403 for all callers, accepting that legitimate in-station playback or download workflows that use this endpoint will break. Alternatively, temporarily place the instance behind authentication at the network layer (VPN or IP allowlist) so only trusted operators can reach the API, at the cost of public streaming or listener-facing access. Audit logs for repeated sequential requests to /api/station/{station_id}/file/{id}/play from a single credential and treat any such pattern as evidence of cross-station data exfiltration. Do not rely on per-station user scoping as a mitigation, because the missing check bypasses it entirely; note also that no vendor-released patch data contradicts the 0.23.6 fix, and no evidence of confirmed active exploitation (CISA KEV) exists at time of analysis.

Affected VersionsENISA

AzuraCast 0 <0.23.6

Affected Packages

composer azuracast/azuracast fix: 0.23.6
euvd azuracast fix: 0.23.6

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in composer, euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

AzuraCast is a self-hosted PHP web radio management platform built on the Slim micro-framework, with API routes declared in backend/config/routes/api_station.php. The affected endpoint belongs to the /file/{id} route group, where three sibling handlers (GET /file/{id}, PUT /file/{id}, DELETE /file/{id}) each attach a Middleware\Permissions guard bound to StationPermissions::Media or StationPermissions::DeleteMedia, but the GET /file/{id}/play handler (Controller\Api\Stations\Files\PlayAction) was declared without that middleware - a classic CWE-862 Missing Authorization case. The middleware chain that does run on /play is GetStation → RequireStation → RequireLogin → StationSupportsFeature(Media) → PlayAction; RequireLogin only proves a valid session or API key exists and never evaluates station-level permission grants. PlayAction calls mediaRepo->requireForStation(id, station), which confirms the media record belongs to the requested station but performs no authorization check, and StationMediaRepository::findForStation accepts both auto-increment integer IDs and unique string IDs, making sequential-ID enumeration straightforward. The flaw is a repeat of a regression already addressed for the adjacent /files group in commit 7fbc7dd (2026-02-26); the /play route was overlooked in that fix, which explains why the issue affects only releases up to and including 0.23.5 and is resolved in 0.23.6. It is distributed as the Composer package composer/azuracast/azuracast, and the affected-version CPE provided (cpe:2.3:a:azuracast:azuracast:*:*:*:*:*:*:*:*) is unversioned, so the Composer constraint (<= 0.23.5) is the authoritative version boundary.

Know when Azuracast gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (VulnCheck) PRIMARY 7.1 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
vuln.today AI 6.5 MEDIUM

Network endpoint, low complexity, needs a low-privilege authenticated account (PR:L); confidentiality-only exfiltration of media so C:H, I:N, A:N, scope unchanged.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
Sep 27, 2026 - 03:16 EUVD
CVE Published
Sep 27, 2026 - 01:28 cve.org
HIGH 7.1

DescriptionCVE.org

AzuraCast before 0.23.6 contains a missing permission check vulnerability in the GET /api/station/{station_id}/file/{id}/play endpoint that allows authenticated users to download media files from any station. Attackers can enumerate media files using sequential IDs and exfiltrate the complete media library of stations they lack permissions for.

Technical POC Analysis

CWE-862 (Missing Authorization).

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

Organizations running AzuraCast 0.23.5 or earlier for multi-tenant streaming face cross-tenant disclosure of their entire media libraries, because a flaw in a single API endpoint defeats the per-station permission boundaries the platform depends on. Any broadcaster, department, or customer sharing one instance can reach content belonging to its peers, making this a confidentiality, licensing, and customer-trust problem rather than an availability event. No confirmed actively exploited (CISA KEV) activity has been reported, but publicly available exploit code exists and no vendor-released patch is identified at time of analysis.

Business Impact: High
Compensating Controls

Restrict or block the /api/station/{station_id}/file/{id}/play endpoint at the reverse proxy or WAF; enforce strict per-station API key scoping and eliminate shared or over-privileged credentials; segment multi-tenant deployments or temporarily disable cross-station sharing features; enable and monitor access logging with alerting on sequential media-ID requests and abnormal download volumes; rotate API keys and session tokens for narrowed-scope accounts; treat hosted media libraries as potentially exposed until a vendor fix is applied.

Threat Intelligence Overview

EPSS Score
0.2%
Top 90% exploitable
Prevalence
Low
niche self-hosted PHP web-radio suite, limited enterprise footprint
Data Quality
6 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Partial

Priority Score

36
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +36
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy