Read the docs

AzuraCast before 0.23.8 SSRF and Local File Read via Remote Playlist

Priority MEDIUM 55CWE-918Published · Updated

Key facts

Attack vector
Local
Privileges required
Low
User interaction
None
Attack complexity
Low
Attack requirements
None
Impact type
—
Confidentiality · integrity · availability
None · Low · None
Fix status
Fixed

Attack profile from CVSS 4.0 · CNA. Fix status from CNA.

Summary

AzuraCast before 0.23.8 contains a server-side request forgery and local file read vulnerability in the AutoDJ remote playlist fetch (backend/src/Radio/AutoDJ/QueueBuilder.php, getMediaFromRemoteUrl()). A user with the station Media permission can create or update a playlist with source=remote_url and remote_type=playlist whose remote_url points at a file:// path or an internal/loopback/link-local HTTP endpoint. When AutoDJ builds the queue, the backend passes the user-supplied URL directly to file_get_contents() with no scheme allowlist and no private/loopback/metadata IP policy (PHP allow_url_fopen is enabled by default, including in the Docker image). Lines from the fetched resource are parsed as M3U/PLS entries, stored in StationQueue.autodj_custom_uri, and returned by GET /api/station/{station_id}/queue to any user with the Broadcasting permission, disclosing host files readable by the web container (for example /etc/passwd or the application .env) and the bodies of non-blind internal HTTP requests. No patched version was available at the time of publication.

Why it matters now

Exploitation Proof of concept CISA SSVC · not in CISA KEV
EPSS 0.0029 21st percentileScored 2026-11-07
Fix Fixed AzuraCast (AzuraCast): 0.23.8

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
Poc
Automatable
No
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
AzuraCastAzuraCastbefore 0.23.80.23.8Patch availableCNA
  • AzuraCast VendorAzuraCast Affected before 0.23.8 Fixed in 0.23.8 Patch available CNA

CPE names Threatist (inferred) · 1

Inferred from how NVD named this product before; not given by a source.

CPEVersionsRoleVendor
cpe:2.3:a:azuracast:azuracast:*:*:*:*:*:*:*:*——AzuraCast
  • cpe:2.3:a:azuracast:azuracast:*:*:*:*:*:*:*:* Versions — — ·AzuraCast

Remediation

  • Fix · CNA AzuraCast (AzuraCast) Fixed in 0.23.8

Fixed in the same release

Records fixed by the same vendor advisory or release, as the CNA lists them.

  • Release ·

    AzuraCast 0.23.8

    7 records Highest priority Priority HIGH 4 HIGH, 3 MEDIUM

    Other records, highest priority first

    • TI-2026-64985 AzuraCast before 0.23.8 DQL Injection via sortOrderPriority HIGH 77
    • TI-2026-64990 AzuraCast before 0.23.8 Command Injection via Streamer UsernamePriority HIGH 73
    • TI-2026-64991 AzuraCast before 0.23.8 On-Demand Download Endpoint Authorization BypassPriority HIGH 69

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-100850
  2. 2026-10-03 Alias added: GHSA-r4xq-h58x-54m9

References

  • TI-2023-02372 Improper Restriction of Excessive Authentication Attempts in azuracast/azuracast CVSS 3.1CRITICAL 9.8
  • TI-2026-64985 AzuraCast before 0.23.8 DQL Injection via sortOrder CVSS 4.0HIGH 8.7
  • TI-2026-64994 AzuraCast before 0.23.6 Code Injection via Remote Relay Password CVSS 4.0HIGH 8.7
  • TI-2026-64990 AzuraCast before 0.23.8 Command Injection via Streamer Username CVSS 4.0HIGH 8.7
  • TI-2026-53672 AzuraCast through 0.23.8 Liquidsoap Configuration Write via Profile Edit Serialization Group Bypass CVSS 4.0HIGH 8.7
  • TI-2026-30886 AzuraCast: Password Reset Poisoning via Untrusted X-Forwarded-Host Header Leads to Account Takeover and 2FA Bypass CVSS 3.1HIGH 8.8
See all 23 →

Sources