CVE-2026-26280: Systeminformation has a Command Injection via unsanitized interface parameter in wifi.js retry path
systeminformation is a System and OS information library for node.js. In versions prior to 5.30.8, a command injection vulnerability in the `wifiNetworks()` function allows an attacker to execute arbitrary OS commands via an unsanitized network interface parameter in the retry code path. In `lib/wifi.js`, the `wifiNetworks()` function sanitizes the `iface` parameter on the initial call (line 437). However, when the initial scan returns empty results, a `setTimeout` retry (lines 440-441) calls `getWifiNetworkListIw(iface)` with the **original unsanitized** `iface` value, which is passed directly to `execSync('iwlist ${iface} scan')`. Any application passing user-controlled input to `si.wifiNetworks()` is vulnerable to arbitrary command execution with the privileges of the Node.js process. Version 5.30.8 fixes the issue.
Security readout for executives and security teams
Plain-English summary
CVE-2026-26280 affects the Node.js systeminformation library before 5.30.8. A flaw in Wi-Fi scanning can let attacker-controlled interface input become an operating-system command. Impact depends on whether an application passes untrusted input into wifiNetworks(). Successful exploitation could run commands as the Node.js process.
Executive priority
Treat as high priority where the library is used in user-facing or privileged Node.js services. Prioritize upgrade and exposure review because command execution can affect confidentiality, integrity, and availability.
Technical view
In lib/wifi.js, wifiNetworks() sanitizes iface on the first call, but the empty-result retry path reuses the original unsanitized iface. That value reaches execSync through iwlist scanning. The issue is CWE-78 command injection, fixed in systeminformation 5.30.8.
Likely exposure
Applications using systeminformation versions below 5.30.8 are exposed only if they call si.wifiNetworks() with user-controlled or otherwise untrusted iface values. Services running with elevated Node.js privileges have higher business impact.
Exploitation context
The sources do not show active exploitation, and KEV status is false. Exploitation requires control over the interface parameter and the retry path where the initial scan returns empty results.
Researcher notes
The vulnerable behavior is specifically in the retry branch after an empty Wi-Fi scan. Analysis should focus on data flow into wifiNetworks(iface), runtime privileges, operating systems where iwlist scanning is used, and whether application inputs can trigger the retry condition.
Mitigation direction
Upgrade systeminformation to version 5.30.8 or later.
Identify applications that pass user input into si.wifiNetworks().
Allowlist valid interface names before calling wifiNetworks().
Run affected Node.js services with least privileges.
Check vendor or distribution guidance for packaged dependency status.
Validation and detection
Review package-lock, npm lockfiles, SBOMs, and runtime dependency versions.
Search code for si.wifiNetworks() and iface parameter sources.
Confirm no untrusted input reaches the iface argument.
Verify deployed artifacts include systeminformation 5.30.8 or later.
For Red Hat environments, check the referenced CVE and VEX status.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cwe · medium confidence lookup
CWE-78: Command execution behavior lookup
Command injection weaknesses can lead defenders to review execution techniques and command interpreter telemetry. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
The CVE wording references code or command execution, so execution technique review may help defensive triage. This is a Glexia inferred lookup path, not an official MITRE, ATT&CK, or CVE Program mapping.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
2CVSS vectors
5Timeline events
2ADP providers
6Source links
SSVC decision data
CISA-ADPCISA Coordinator
Timestamp
Version
2.0.3
Exploitation: noneAutomatable: noTechnical Impact: total
CVSS vector scores
2 official scores
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.
CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.
CWE-78 · source CWE mapping
Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection')
Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection') represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.