Skip to main content

Music Player Daemon CVE-2026-49130

| EUVDEUVD-2026-33006 MEDIUM
Improper Neutralization of CRLF Sequences ('CRLF Injection') (CWE-93)
2026-05-28 VulnCheck GHSA-f8fv-fv9m-8539
6.9
CVSS 4.0 · Vendor: VulnCheck
Share

Severity by source

Vendor (VulnCheck) PRIMARY
6.9 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
SUSE
5.3 MEDIUM
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
X

Lifecycle Timeline

3
Source Code Evidence Fetched
May 28, 2026 - 20:23 vuln.today
Analysis Generated
May 28, 2026 - 20:23 vuln.today
CVSS changed
May 28, 2026 - 20:22 NVD
5.3 (MEDIUM) 6.9 (MEDIUM)

DescriptionCVE.org

Music Player Daemon (MPD) before version 0.24.11 contains a CRLF injection vulnerability in the xspf_char_data function within the XSPF playlist plugin that allows attackers to embed literal CR/LF bytes in URI fields by supplying a malicious XSPF playlist with XML numeric character references. Attackers can inject forged key-value lines through the location field into MPD protocol responses including playlistinfo, currentsong, and listplaylist outputs, as well as the state file writer, by exploiting Expat's decoding of numeric character references prior to the character data callback.

AnalysisAI

CRLF injection in Music Player Daemon (MPD) before version 0.24.11 enables network-accessible, unauthenticated attackers to embed raw CR/LF bytes into URI fields parsed from malicious XSPF playlists, injecting forged key-value lines into MPD text protocol responses - including playlistinfo, currentsong, and listplaylist outputs - as well as the persistent state file. The root mechanism is Expat's decoding of XML numeric character references (e.g., 
) before invoking the character data callback in xspf_char_data, bypassing any empty-string checks that previously served as the only guard. No public exploit code or CISA KEV listing exists at time of analysis, but the no-authentication network vector means any MPD instance that processes externally supplied playlists is exposed; the fix also extended to ASX, PLS, and RSS playlist plugins, indicating the affected surface was broader than the CVE title implies.

Technical ContextAI

MPD is an open-source, server-side music playback daemon using a text-based line-oriented protocol where key-value pairs are newline-delimited. The XSPF (XML Shareable Playlist Format) plugin uses the Expat XML parser; Expat resolves XML numeric character references to their literal Unicode values prior to invoking the character data (xspf_char_data) callback, meaning U+000D (CR) and U+000A (LF) encoded as 
 and 
 arrive as raw bytes in the parsed location/URI value. The pre-patch code checked only that the location string was non-empty before accepting it, providing no sanitization. CWE-93 (Improper Neutralization of CRLF Sequences) describes this root cause precisely: untrusted input containing CRLF is incorporated into a structured text protocol without escaping or rejection. The fix introduces a new VerifyUriUTF8() function in src/protocol/Verify.cxx that rejects strings failing UTF-8 validation (which implicitly rejects bare control characters), applied uniformly across XSPF, ASX, PLS, and RSS playlist plugins. Affected CPE: cpe:2.3:a:musicplayerdaemon:mpd:*:*:*:*:*:*:*:* for all versions prior to 0.24.11.

RemediationAI

Upgrade Music Player Daemon to version 0.24.11 or later, which is the vendor-released patch as confirmed by the release announcement at https://www.musicpd.org/news/2026/05/mpd-0-24-11-released/. The specific fix commit is 855085b35c67dddeef0652e2cb3ac8cdd4f457b7 (https://github.com/MusicPlayerDaemon/MPD/commit/855085b35c67dddeef0652e2cb3ac8cdd4f457b7), which introduces VerifyUriUTF8() validation across the XSPF, ASX, PLS, and RSS playlist plugins. If immediate upgrade is not feasible, restrict which MPD clients are permitted to issue playlist-load commands referencing external URLs by applying network-level ACLs or MPD's built-in password/permission controls - note that this trades off playlist flexibility for reduced attack surface. Disabling remote playlist loading entirely at the perimeter (e.g., blocking outbound HTTP from the MPD process) prevents the server from fetching attacker-controlled content, but will break legitimate remote-playlist workflows.

Vendor StatusVendor

SUSE

Severity: Medium

Share

CVE-2026-49130 vulnerability details – vuln.today

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