Skip to main content
CVE Vulnerability Database
Vulnerability Database/CVE-2024-56334

CVE-2024-56334: systeminformation SSID RCE Vulnerability

CVE-2024-56334 is a remote code execution flaw in the systeminformation Node.js library caused by unsanitized SSIDs passed to cmd.exe. Attackers can execute OS commands through malicious SSID content. This article covers technical details, affected versions, impact assessment, and mitigation strategies.

Published:

CVE-2024-56334 Overview

CVE-2024-56334 is a command injection vulnerability in the systeminformation Node.js library, a widely used package for retrieving system and operating system information. The flaw exists in the getWindowsIEEE8021x function, which passes wireless network SSIDs to cmd.exe without sanitization. Attackers who can influence the SSID value can inject arbitrary operating system commands. Depending on how the library is deployed, this can result in remote code execution or local privilege escalation on Windows hosts. The maintainer released a fix in version 5.23.7. The vulnerability is tracked under CWE-94: Improper Control of Generation of Code.

Critical Impact

Malicious SSID strings passed to cmd.exe through the systeminformation library allow attackers to execute arbitrary Windows commands, enabling remote code execution or local privilege escalation in affected deployments.

Affected Products

  • systeminformation npm package versions prior to 5.23.7
  • Node.js applications running on Windows that invoke networkInterfaces() or the getWindowsIEEE8021x code path
  • Windows systems where the process using the library has elevated privileges

Discovery Timeline

  • 2024-12-20 - CVE-2024-56334 published to the National Vulnerability Database
  • 2026-06-17 - Last updated in NVD database

Technical Details for CVE-2024-56334

Vulnerability Analysis

The systeminformation library queries Windows for wireless network configuration by invoking netsh through cmd.exe. Inside the getWindowsIEEE8021x function, the current SSID value is concatenated directly into the command string without escaping or validation. Windows SSIDs allow up to 32 bytes of arbitrary content, including shell metacharacters such as &, |, and %. An attacker who controls the SSID of a network the victim host connects to, or who can create a rogue access point in range, can craft an SSID that breaks out of the intended command and executes attacker-supplied instructions. The commands run with the privileges of the Node.js process consuming the library.

Root Cause

The root cause is missing input sanitization when constructing an operating system command from untrusted external data. The SSID is a network-supplied string that must be treated as untrusted, but the affected code path builds a cmd.exe argument list through string concatenation. This pattern falls under [CWE-94] (Improper Control of Generation of Code, or code injection) as executed via a command shell.

Attack Vector

Exploitation requires the target host to enumerate wireless network state through the vulnerable code path. An attacker within Wi-Fi range broadcasts an SSID containing shell metacharacters and a payload. When a Node.js application on the victim system calls networkInterfaces() and reaches getWindowsIEEE8021x, the malicious SSID is passed to cmd.exe and the injected commands execute. In server-side deployments where SSID data may be relayed from remote agents, the same primitive can yield remote code execution.

text
// Patch reference from docs/history.html
+                    <tr>
+                      <th scope="row">5.23.7</th>
+                      <td>2024-12-09</td>
+                      <td><span class="code">networkInterfaces()</span> sanitizing SSID names (windows)</td>
+                    </tr>
                     <tr>
                       <th scope="row">5.23.6</th>
                       <td>2024-12-08</td>

Source: systeminformation commit f7af0a6

Detection Methods for CVE-2024-56334

Indicators of Compromise

  • Unexpected child processes of node.exe spawning cmd.exe followed by non-netsh executables such as powershell.exe, curl.exe, or certutil.exe.
  • cmd.exe command lines that contain netsh wlan show alongside shell metacharacters (&, |, ^) or encoded payloads.
  • Wireless profile logs referencing SSIDs containing quotes, ampersands, or other characters not typical of legitimate networks.
  • Outbound network connections from Node.js processes immediately following wireless interface enumeration.

Detection Strategies

  • Inventory Node.js applications and dependencies using npm ls systeminformation to identify versions below 5.23.7.
  • Instrument endpoint detection tooling to flag node.execmd.exe → arbitrary-binary process chains that deviate from a known baseline.
  • Correlate wireless connection events (Windows Event ID 8001) with subsequent process creation events on the same host.

Monitoring Recommendations

  • Enable Windows process command-line auditing (Event ID 4688 with command-line capture) to record full cmd.exe invocations.
  • Alert on netsh wlan show interfaces executions that produce anomalous child processes.
  • Monitor npm dependency manifests in CI/CD pipelines for pinned vulnerable versions of systeminformation.

How to Mitigate CVE-2024-56334

Immediate Actions Required

  • Upgrade systeminformation to version 5.23.7 or later in all Node.js projects and rebuild affected artifacts.
  • Audit runtime environments and container images for transitive dependencies on the vulnerable package.
  • Restrict privileges of Node.js processes that call networkInterfaces() so that successful exploitation yields the smallest possible blast radius.
  • Review wireless environments in sensitive locations for rogue access points broadcasting suspicious SSIDs.

Patch Information

The maintainer addressed the issue in systeminformation version 5.23.7 by sanitizing SSID names before passing them to cmd.exe. The fix is documented in the GitHub Security Advisory GHSA-cvv5-9h9w-qp2m and delivered in commit f7af0a6. There are no known workarounds; upgrading is the only supported remediation.

Workarounds

  • No vendor-supplied workarounds exist. Upgrading to 5.23.7 is required.
  • As a compensating control, avoid invoking networkInterfaces() on Windows hosts until the upgrade is deployed.
  • Where feasible, run Node.js services under low-privilege service accounts to limit exploitation impact.
bash
# Upgrade systeminformation to the patched version
npm install systeminformation@^5.23.7

# Verify installed version
npm ls systeminformation

# Audit for known vulnerabilities across the project
npm audit --production

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

Default Legacy - Prefooter | Experience the World’s Most Advanced Cybersecurity Platform

Experience the Most Advanced Cybersecurity Platform

See how the world’s most intelligent, autonomous cybersecurity platform can protect your organization today and into the future.