Bug 2562138 (CVE-2026-116674)

Summary: CVE-2026-116674 systeminformation: systeminformation: Prototype pollution via crafted interface name
Product: [Other] Security Response Reporter: OSIDB Bzimport <bzimport>
Component: vulnerabilityAssignee: Product Security <prodsec-ir-bot>
Status: NEW --- QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: unspecifiedCC: aazores, abarbaro, alizardo, cmah, dschmidt, eaguilar, ebaron, gparvin, jbalunas, jchui, jhe, jlanda, jmatsuok, jtolenti, kshier, ktsao, nboldt, oaljalju, pjindal, psrna, rbobbitt, rhaigner, simaishi, stcannon, tsze, yguenane
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: ---
Doc Text:
A flaw was found in systeminformation. When processing network statistics on BSD-based systems, caller-controlled interface names are improperly handled during internal cache lookups. An attacker capable of supplying input to the network statistics function can trigger prototype pollution, modifying base object properties shared across the runtime. This modification can corrupt application logic, data serialization, or configuration merging, leading to unexpected behavior or denial of service.
Story Points: ---
Clone Of: Environment:
Last Closed: Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description OSIDB Bzimport 2026-10-27 17:57:54 UTC
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.