/

CVE-2026-100848

Severity:

HIGH RISK

(7.1)

Server-Side Request Forgery (CWE-918) in AzuraCast App

CVE-2026-100848

Deferred

Vulnerability type

Category:

Server-Side Request Forgery

CWE:

CWE-918

Impact:

Unauthorized access to internal network resources

Severity:

HIGH RISK

(7.1)

CVSS version:

3.1

Catch this CVE while code is being written

Detect vulnerable code directly in pull requests, so CVEs are fixed before merge.

Summary

AzuraCast allows a station user with RemoteRelays permission to configure a Remote Relay URL using only basic URL syntax and HTTP(S) scheme validation. When background synchronization retrieves Now Playing data, the server may send repeated requests to loopback, private-network, or cloud-metadata addresses, exposing internal resources.

Affected context

The vulnerability occurs in AzuraCast deployments that support station-level Remote Relay configuration and automatically synchronize remote Now Playing data. It becomes risky when users who can manage relay settings are able to specify destinations without host, IP-range, or network-boundary restrictions, and when the application can reach sensitive internal services from its runtime environment.

Exploit preconditions

  • Attack surface: Station-scoped Remote Relay configuration and the server-side HTTP client
  • Required access: A user account with the station-scoped RemoteRelays permission
  • Trigger point: Periodic background Now Playing synchronization
  • Target condition: The configured URL resolves to a loopback, private-network, link-local, cloud-metadata, or otherwise sensitive internal address
  • Why exploitation is possible: URL syntax and scheme validation do not establish that the destination is an approved external host, allowing server-side requests across internal network boundaries

Why this happens

The underlying bug is insufficient destination validation for a server-side HTTP request.

The application accepts an HTTP or HTTPS URL without applying a denylist or allowlist for resolved hosts and IP ranges, including loopback, private, link-local, and cloud-metadata destinations. When an automated server-side component follows that URL, attacker-controlled configuration becomes a request primitive, matching CWE-918: Server-Side Request Forgery.

Potential impact

  • Internal services may receive unauthorized requests
  • Cloud instance metadata or temporary credentials could be exposed
  • Administrative endpoints may be probed or accessed from a trusted network position
  • Network topology and service information could be disclosed
  • Repeated background requests could increase internal service load
  • Access to sensitive systems could support broader compromise

General mitigation guidance

Mitigation generally focuses on enforcing destination trust boundaries before any server-side request is made.

Common defensive patterns include:

  • Prefer an explicit allowlist of approved relay hosts or domains
  • Resolve destinations and reject loopback, private, link-local, multicast, reserved, and cloud-metadata address ranges
  • Revalidate the destination after redirects and protect against DNS rebinding
  • Use an outbound proxy or egress firewall with narrowly defined network access
  • Restrict configuration permissions and treat relay URLs as untrusted input
  • Apply short timeouts, response-size limits, and least-privilege runtime networking
  • Avoid exposing sensitive metadata services to application workloads where possible

These controls reduce the impact of malicious or misconfigured relay destinations.

How teams detect issues like this

Detection can combine source review, runtime monitoring, and network policy enforcement:

  • Use static analysis rules to identify server-side HTTP clients fed by user-controlled URLs
  • Review URL validation code for scheme-only checks without host or IP-range enforcement
  • Inspect code paths that follow redirects or resolve DNS repeatedly
  • Monitor outbound requests to loopback, private, link-local, and metadata-service addresses
  • Alert on unusual relay destinations, repeated internal connection attempts, and unexpected response patterns
  • Enforce egress policies that prevent application workloads from reaching sensitive network ranges

Automated security review tools can help identify SSRF data flows, but findings should be validated against deployment-specific network controls.

Sources

SourceLink
github.comgithub.com/AzuraCast/AzuraCast/security/advisories/GHSA-4h6m-rrxm-7w3m
vulncheck.comvulncheck.com/advisories/azuracast-before-0.23.8-server-side-request-forgery-via-remote-relay-url

Frequently asked

questions

Exploitation depends on how AzuraCast is exposed and how station permissions are assigned. An attacker generally needs an authenticated account with the station-scoped RemoteRelays permission, although a separate account-management weakness could broaden that scope.

The key requirement is permission to create or modify a station's Remote Relay URL. The attacker does not necessarily need direct access to the AzuraCast server or its underlying network.

Treat relay URLs as untrusted destinations, allow only explicitly approved hosts, block sensitive IP ranges after DNS resolution, and reapply those checks after redirects. Outbound network controls should provide an additional enforcement layer.

Combine strict destination validation with least-privilege egress rules, protected metadata services, secure code review for user-controlled URLs, and monitoring for requests to internal or reserved addresses.

Find out what's already
exploitable in your codebase.