Skip to main content

AzuraCast EUVDEUVD-2026-115961

| CVE-2026-121429 HIGH
OS Command Injection (CWE-78)
2026-11-03 VulnCheck GHSA-33qp-f69h-8gcq
8.7
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Authenticate with Profile-permission API key
  2. Delivery
    PUT profile/edit with injected StereoTool field
  3. Exploit
    Payload stored unescaped in backend config
  4. Execution
    Station restart writes Liquidsoap pipe() process string
  5. Persist
    /bin/sh -c executes injected command
  6. Impact
    Arbitrary code execution as Liquidsoap user, container compromise

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization OS command sanitization, avoid shell exec
MITRE ATT&CK

2 techniques across 1 tactic: Execution

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

Exploitation Conditions

Requires (1) the StereoTool binary installed and configured on the target station backend (via AzuraCast's built-in Services → StereoTool workflow - StereoTool::isReady() needs isInstalled() plus a non-empty stereo_tool_configuration_path), and (2) an authenticated station account or API key holding the standard StationPermissions::Profile on the target station (not admin-only). The injected command executes only on station backend (re)start or Liquidsoap config regeneration. Limiting factors: no effect on stations without StereoTool installed/configured; requires authenticated Profile-level access rather than anonymous access; execution is deferred to the next config write/restart rather than immediate.

Impact

This is a credible, above-average-priority issue but not an emergency. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N) and the 8.7 base score indicate a network-reachable flaw of low attack complexity requiring only low privileges and no user interaction, with high confidentiality, integrity and availability impact to the vulnerable system (VC:H/VI:H/VA:H) and no scope change to other systems (SC:N/SI:N/SA:N). The vuln.today decision label is 'this_week' (not act_now/emergency), consistent with authenticated-but-low-barrier command injection. No EPSS score and no KEV status were supplied; absence of KEV means there is no confirmed active exploitation. A detailed public PoC reference exists in the GitHub security advisory (GHSA-c45c-wrcp-22fx) with working-looking payloads, but the input does not mark it as confirmed working exploit code. The main real-world dampeners are (1) authentication: exploitation requires a station account with the Profile permission (PR:L), and (2) a deployment precondition - the StereoTool binary must be installed and configured on the station backend - so this does not fire against default/unconfigured installs. Net: a real priority for AzuraCast operators who have StereoTool enabled and who grant Profile-level roles to non-fully-trusted users, but lower urgency where StereoTool is absent or station roles are tightly held.

Exploit ScenarioDerived

A low-privileged station user holding the standard Profile permission sends a PUT /api/station/{id}/profile/edit request injecting shell metacharacters into stereo_tool_configuration_path (or stereo_tool_license_key); the payload is stored verbatim and concatenated unescaped into a Liquidsoap pipe() process string executed via /bin/sh -c on station (re)start, running arbitrary OS commands as the AzuraCast/Liquidsoap process user and compromising the container. A detailed public PoC reference exists in the GHSA advisory; it is not marked as verified working exploit code in the input. Low attack complexity and no user interaction make the single authenticated request sufficient once StereoTool is configured.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
No patch listed yet

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

Alert me

AnalysisAIv1 – Nov 03, 2026

Authenticated command injection in AzuraCast through 0.23.8 lets any station user holding the standard Profile permission run arbitrary OS commands on the station backend by planting shell metacharacters in the StereoTool settings, resulting in compromise of the AzuraCast/Liquidsoap container. Exploitation is not anonymous and is not universal: it requires the StereoTool binary to be installed and configured on the target station, and the injected command only fires when the station backend restarts or the Liquidsoap configuration is regenerated. A detailed proof-of-concept request is published in the project's GitHub security advisory, but there is no confirmed active exploitation (not in CISA KEV) and no vendor-released patch was identified at time of analysis; this is a credible, above-average-priority issue rather than an emergency.

RemediationAI

No vendor-released patch was identified at time of analysis; the advisory lists the affected range as <= 0.23.8 with the fix marked 'not yet patched', so upgrading does not currently resolve the issue and installations must rely on compensating controls. The advisory's proposed code fix is to stop building a shell string: either use Liquidsoap's array-form process/execve operator that takes an explicit argv list and bypasses /bin/sh -c, or wrap both the configuration path and the license key in PHP escapeshellarg() before concatenation, and additionally reject shell metacharacters in the stereo_tool_configuration_path and stereo_tool_license_key setters and validate that the configuration path resolves inside the station config directory. Until such a fix ships, the most direct mitigation is to stop using the StereoTool backend: set audio_processing_method to a non-StereoTool method (or uninstall the StereoTool binary from the station backend) so the vulnerable pipe() block is never generated, at the cost of losing StereoTool audio processing for that station. Because the entry point is PUT /api/station/{id}/profile/edit guarded only by StationPermissions::Profile, restrict that permission to fully trusted station operators and audit API keys and station roles that carry it, accepting that this reduces self-service for station managers. Monitor backend restarts and dashboard/API logs for StereoTool settings containing shell metacharacters, and treat any station that has used StereoTool with untrusted Profile-level users as potentially compromised. Reference advisories: https://github.com/AzuraCast/AzuraCast/security/advisories/GHSA-c45c-wrcp-22fx and https://www.vulncheck.com/advisories/azuracast-through-0.23.8-command-injection-via-stereotool-liquidsoap-pipe.

Affected VersionsENISA

AzuraCast 0 ≤0.23.8

Affected Packages

euvd azuracast no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

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

Technical ContextAI · show details

The flaw is a classic OS command injection (CWE-78) in AzuraCast's Liquidsoap configuration writer (backend/src/Radio/Backend/Liquidsoap/ConfigWriter.php, around lines 1018-1035). When a station selects the StereoTool audio-processing method, the writer concatenates the StereoTool binary path, the station config directory plus the user-supplied stereo_tool_configuration_path, and optionally the stereo_tool_license_key into a single shell command string, which is then emitted into a Liquidsoap pipe(replay_delay=1.0, process=...) operator. Liquidsoap's Process_handler.run calls OCaml Unix.open_process_full, which executes the string through /bin/sh -c, so any unescaped metacharacter becomes shell syntax. The existing toRawString() helper only strips its own heredoc delimiter and blocks Liquidsoap-level #{...} interpolation; it performs no shell escaping of quotes, semicolons, backticks, pipes or ampersands, and the field setters in StationBackendConfiguration.php apply Types::stringOrNull() with whitespace trimming only, so payloads persist verbatim. The CPE cpe:2.3:a:azuracast:azuracast with a wildcard version reflects that the vulnerable code was verified on release tag 0.23.8 and on main (HEAD 66adc460), i.e. all versions up to and including 0.23.8 are affected. This is a distinct sink from earlier AzuraCast Liquidsoap advisories (GHSA-73rf-jp3g-8rcf, GHSA-q8wg-3qg7-8pc7, GHSA-q4ph-8x8g-95f8, GHSA-93fx-5qgc-wr38), whose toRawString()-based fixes do not address shell metacharacter handling.

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 8.7 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
vuln.today AI 8.8 HIGH

Network API reachable (AV:N), single crafted request (AC:L), needs a Profile-permission station account (PR:L), no user interaction; OS command execution yields full C/I/A on the process user.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/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
High
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

AzuraCast through 0.23.8 contains a command injection vulnerability that allows station users with Profile permission to execute OS commands via StereoTool settings. Attackers can inject shell metacharacters into stereo_tool_configuration_path or stereo_tool_license_key, which are executed via /bin/sh on station restart, compromising the container.

Technical POC Analysis

CWE-78, OS command injection in AzuraCast's Liquidsoap config writer.

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

AzuraCast, our radio station management platform, contains a high-severity command injection flaw (CVE-2026-121429) that allows any station user with standard Profile permissions to execute arbitrary OS commands on the station backend, potentially compromising the AzuraCast/Liquidsoap container. While no active exploitation has been confirmed and the attack requires StereoTool to be installed and configured, the risk is significant because it enables privilege escalation from a low-privilege user to full container compromise, affecting station operations and data integrity.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: remove StereoTool if not required, restrict Profile permissions to trusted users only, isolate AzuraCast/Liquidsoap containers via network segmentation and least-privilege principles, and monitor for unauthorized configuration changes.

Threat Intelligence Overview

Prevalence
Low
niche self-hosted internet-radio platform, limited enterprise footprint
Social Media
1
Sightings
Data Quality
5 sources
Confidence: Medium

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 N/A
Patch available No
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
Total

Priority Score

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

Attack Technique

OS command injection occurs when an application passes unsanitized user input directly into system shell commands.

CVE-2023-2531 CRITICAL POC
9.8 May 05

Improper Restriction of Excessive Authentication Attempts in GitHub repository azuracast/azuracast prior to 0.18.3. Rate

CVE-2026-100852 HIGH
8.7 Sep 27

Command execution as the Liquidsoap process user is possible in AzuraCast through 0.23.x when an authenticated station u

CVE-2023-2191 MEDIUM POC
4.8 Apr 20

Cross-site Scripting (XSS) - Stored in GitHub repository azuracast/azuracast prior to 0.18. Rated medium severity (CVSS

CVE-2026-100856 HIGH
8.7 Sep 27

Code injection in AzuraCast through 0.23.5 lets an authenticated user holding the RemoteRelays station permission inject

CVE-2026-76836 HIGH
8.7 Aug 24

Remote code execution in AzuraCast ≤0.23.8 is reachable by any authenticated station manager due to a serialization grou

CVE-2026-100847 HIGH
8.7 Sep 27

Unauthenticated DQL injection in AzuraCast before 0.23.8 allows remote attackers to extract sensitive database informati

CVE-2026-121428 HIGH
8.7 Nov 03

Authenticated station managers in AzuraCast through 0.23.8 can turn a station profile edit into root-level command execu

CVE-2026-121427 HIGH
8.7 Nov 03

Configuration injection in AzuraCast through 0.23.8 lets an authenticated station user who holds only the 'Manage statio

CVE-2026-100857 HIGH
8.6 Sep 27

Authenticated code injection in AzuraCast 0.23.3 and earlier lets a user holding StationPermissions::Media or StationPer

CVE-2026-100853 HIGH
8.2 Sep 27

Unauthenticated media exposure in AzuraCast before 0.23.8 allows remote attackers to download audio files that station o

CVE-2025-67737 LOW POC
3.7 Dec 12

Unauthenticated HTTP requests to AzuraCast 0.23.1's internal sftpgo integration endpoints (/api/internal/sftp-auth and /

CVE-2026-100851 HIGH
7.2 Sep 27

Authenticated users with only View Station Page permission on AzuraCast before 0.23.8 can retrieve plaintext Icecast/Sho

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