Junglewise Threat Intelligence

CVE-2020-26245: systeminformation prototype pollution command injection

CVE-2020-26245 · Severity: low · CVSS 3.1 · Published 2020-11-27

Technologies: Sebhildebrandt Systeminformation. Vendors: npm.

Executive brief

systeminformation is a Node.js library that retrieves detailed system and OS information. A prototype pollution vulnerability in the si.inetChecksite() function allows attackers to inject arbitrary commands through unsanitized service parameter strings, potentially leading to remote command execution on systems using the library.

Technical details

The vulnerability is a command injection flaw introduced via prototype pollution in the systeminformation library. The root cause is insufficient shell sanitization in the si.inetChecksite() function, which accepts service parameter strings that are not properly validated before being used in shell command execution. An attacker can exploit this by crafting malicious service parameter strings containing shell metacharacters or command injection payloads, bypassing the intended parameter handling through prototype pollution techniques. This allows remote code execution on the affected system. The fix involves a rewrite of shell sanitation logic to prevent prototype pollution. All versions prior to 4.30.5 are affected; users should upgrade immediately or sanitize service parameter inputs as a workaround.

Affected products

  • sebhildebrandt systeminformation < 4.30.5

Timeline

  • 2020-11-27: disclosed: Advisory published
  • 2020-11-26: patched: Fix released in version 4.30.5

References

Related threats