Read the docs

AzuraCast before 0.23.8 SSRF Filter Bypass via Hostname and Private IPs

Priority MEDIUM 64CWE-918Published · Updated

Key facts

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

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

Summary

AzuraCast is a self-hosted web radio management suite. In AzuraCast before 0.23.8, the station webhook URL validation in AbstractConnector::getValidUrl() (backend/src/Webhook/Connector/AbstractConnector.php), used by the Generic and Discord webhook connectors, rejects only URLs whose host is a literal link-local IP address (169.254.0.0/16 or fe80::/10). Loopback addresses and RFC1918 private ranges are not rejected, and any non-literal-IP hostname causes the IP parsing call to throw, which skips the check entirely. A user holding only the station-scoped WebHooks permission can therefore configure a webhook pointing at an internal, loopback, or private-network target and cause the server to issue an outbound HTTP POST containing the station's Now Playing data, resulting in server-side request forgery. The PUT /station/{id}/webhook/{id}/test endpoint allows the same low-privileged user to trigger the request on demand. At the time of the advisory no patched version was available.

Why it matters now

Exploitation Proof of concept CISA SSVC · not in CISA KEV
EPSS 0.00295 22nd 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-100849
  2. 2026-10-03 Alias added: GHSA-c94r-cgjw-f264

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