Junglewise Threat Intelligence

CVE-2024-21526: speaker denial of service via unexpected input types

CVE-2024-21526 · Severity: low · CVSS 3.1 · Published 2024-07-10

Executive brief

The speaker library is a Node.js module used to output audio data to system speakers. An attacker can crash the audio application by providing unexpected input types to the channels property, triggering an assertion failure and terminating the process. This could interrupt audio playback or disrupt services that depend on audio functionality.

Technical details

The vulnerability is a denial of service (CWE-241: Improper Handling of Unexpected Values, CWE-400: Uncontrolled Resource Consumption) triggered by passing unexpected input types to the Speaker object's channels property. The vulnerable code reaches an assert macro in the C++ binding (src/binding.c line 48), which crashes the process when the assertion fails. The attack requires network or local access to code that uses the speaker library and accepts untrusted input for the channels parameter. No authentication is required, and exploitation reliably causes process termination. A patch is available in versions after 0.5.5.

Affected products

  • TooTallNate speaker 0 to 0.5.5

Timeline

  • 2024-07-10: disclosed
  • 2024-07-10: advisory

References