Description
systeminformation is a System and OS information library for node.js. Prior to 5.33.13, networkStats(ifaces) in lib/network.js on FreeBSD, OpenBSD, and NetBSD stores per-interface data in the plain-object _network cache and indexes it with the sanitized caller-controlled interface name. Passing proto causes the inherited Object.prototype value to be used instead of creating an own cache entry, so calcNetworkSpeed() writes rx_bytes, tx_bytes, rx_sec, tx_sec, ms, last_ms, and operstate onto Object.prototype. The polluted property names are fixed and their values come from interface statistics, but inherited-name collisions and enumerable keys can corrupt application branching, serialization, configuration merging, validation, or lookup behavior. This issue is fixed in version 5.33.13.
Published: 2026-10-27
Score: 6.5 Medium
EPSS: n/a
KEV: No
Impact: Prototype Pollution
Action: Apply Patch
AI Analysis

Impact

A prototype pollution flaw exists in the networkStats() function of the systeminformation library for node.js. The function stores per‑interface data in an internal cache keyed by a sanitized interface name. When the special value "proto" is passed, the code falls back to using Object.prototype instead of creating a new cache entry, causing network statistics fields to be written onto the global prototype. This unexpected modification can alter application control flow, validation, configuration merging, and serialization behavior in any code that later accesses enumerated object properties. The weakness is classified as CWE‑1321.

Affected Systems

Affected components are the systeminformation package published by sebhildebrandt. Versions prior to 5.33.13 running on FreeBSD, OpenBSD, and NetBSD are impacted. The fix is delivered in release 5.33.13.

Risk and Exploitability

The CVSS score of 6.5 indicates medium severity, and the EPSS score is not available. The vulnerability is not listed in the CISA KEV catalog. Exploitation requires a local attacker with the ability to execute JavaScript code within the node.js process and to call networkStats() with the interface name "proto". Because the pollution occurs at the global JavaScript prototype level, the impact can be wide‑ranging in the affected application but does not provide remote code execution directly. The risk is moderate, especially for applications that rely on untrusted input to determine interface names.

Generated by OpenCVE AI on October 27, 2026 at 18:51 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade systeminformation to version 5.33.13 or newer.
  • If an upgrade is not possible, avoid calling networkStats() with the interface name "proto" or otherwise sanitize the input to prevent prototype pollution.
  • Limit the use of networkStats() to trusted code paths and monitor the application for unexpected modification of Object.prototype attributes.

Generated by OpenCVE AI on October 27, 2026 at 18:51 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Tue, 27 Oct 2026 19:45:00 +0000

Type Values Removed Values Added
First Time appeared Sebhildebrandt
Sebhildebrandt systeminformation
Vendors & Products Sebhildebrandt
Sebhildebrandt systeminformation

Tue, 27 Oct 2026 17:00:00 +0000

Type Values Removed Values Added
Description systeminformation is a System and OS information library for node.js. Prior to 5.33.13, networkStats(ifaces) in lib/network.js on FreeBSD, OpenBSD, and NetBSD stores per-interface data in the plain-object _network cache and indexes it with the sanitized caller-controlled interface name. Passing proto causes the inherited Object.prototype value to be used instead of creating an own cache entry, so calcNetworkSpeed() writes rx_bytes, tx_bytes, rx_sec, tx_sec, ms, last_ms, and operstate onto Object.prototype. The polluted property names are fixed and their values come from interface statistics, but inherited-name collisions and enumerable keys can corrupt application branching, serialization, configuration merging, validation, or lookup behavior. This issue is fixed in version 5.33.13.
Title systeminformation: Prototype pollution in `networkStats()` via the interface name
Weaknesses CWE-1321
References
Metrics cvssV3_1

{'score': 6.5, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:L'}


Subscriptions

Sebhildebrandt Systeminformation
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-10-27T16:40:46.246Z

Reserved: 2026-10-26T20:00:59.829Z

Link: CVE-2026-116674

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Deferred

Published: 2026-10-27T17:16:59.453

Modified: 2026-10-27T17:16:59.583

Link: CVE-2026-116674

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-27T19:30:09Z

Weaknesses
  • CWE-1321

    Improperly Controlled Modification of Object Prototype Attributes ('Prototype Pollution')