CVE-2023-36177
Published: 23 January 2024
Summary
CVE-2023-36177 is a critical-severity Code Injection (CWE-94) vulnerability in Badaix Snapcast. Its CVSS base score is 9.8 (Critical).
Operationally, ranked in the top 3.2% of CVEs by exploit likelihood; it is not currently listed in the CISA KEV catalog; a public proof-of-concept is referenced.
Deeper analysis
CVE-2023-36177 is a remote code execution vulnerability affecting badaix Snapcast version 0.27.0. The flaw resides in the JSON-RPC-API, where insufficient input validation permits crafted requests to trigger arbitrary code execution and disclosure of sensitive information. It carries a CVSS v3.1 base score of 9.8 and is associated with CWE-94.
Unauthenticated remote attackers can exploit the issue over the network by sending malicious JSON-RPC requests, achieving full control over the affected Snapcast instance along with access to sensitive data. No user interaction or credentials are required.
Public references include a technical analysis at oxnan.com detailing the JSON-RPC attack vector and a Debian LTS advisory published in July 2025 that addresses the affected package in long-term support releases.
The EPSS score for this CVE stands at 0.3037 with no recorded rise from a lower baseline.
EU & UK References
- 🇪🇺 ENISA EUVD: EUVD-2023-40156
Vulnerability details
An issue was discovered in badaix Snapcast version 0.27.0, allows remote attackers to execute arbitrary code and gain sensitive information via crafted request in JSON-RPC-API.
- CWE(s)
Related Threats
No named actor attribution yet. ATT&CK technique mapping in progress for this CVE.
Affected Assets
Mitigating Controls
Likely Mitigating Controls AI
Per-CVE control mapping for this CVE has not run yet; the list below is derived from the weakness types (CWEs) cited in the NVD entry.
Makes persistent code injection into loaded programs impossible when the executable image itself resides on hardware-protected read-only media.
Dynamically generated code can be produced and executed inside the isolated chamber, preventing host compromise from code-injection payloads.
Validates inputs used in dynamic code generation to block injected directives.
Directly prevents execution of attacker-supplied code written into data memory regions.