systeminformation@4.8.4 vulnerabilities

Advanced, lightweight system and OS information library

Direct Vulnerabilities

Known vulnerabilities in the systeminformation package. This does not include vulnerabilities belonging to this package’s dependencies.

Automatically find and fix vulnerabilities affecting your projects. Snyk scans for vulnerabilities and provides fixes for free.
Fix for free
Vulnerability Vulnerable Version
  • L
Improper Input Validation

systeminformation is a simple system and OS information library.

Affected versions of this package are vulnerable to Improper Input Validation. The function versions doesn't check the input of the user, which is expected a string.

const si = require('systeminformation');
si.versions({toString : () => { console.log("This is a PoC") }});

How to fix Improper Input Validation?

Upgrade systeminformation to version 5.6.11 or higher.

<5.6.11
  • M
Arbitrary Command Injection

systeminformation is a simple system and OS information library.

Affected versions of this package are vulnerable to Arbitrary Command Injection. Service parameters passed to si.inetLatency(), si.inetChecksite(), si.services(), and si.processLoad() are not sanitized properly.

How to fix Arbitrary Command Injection?

Upgrade systeminformation to version 5.6.4 or higher.

<5.6.4
  • M
Server-side Request Forgery (SSRF)

systeminformation is a simple system and OS information library.

Affected versions of this package are vulnerable to Server-side Request Forgery (SSRF) via the sanitizeShellString function due to not sanitising @ properly.

How to fix Server-side Request Forgery (SSRF)?

Upgrade systeminformation to version 5.3.4 or higher.

<5.3.4
  • H
Command Injection

systeminformation is a simple system and OS information library.

Affected versions of this package are vulnerable to Command Injection. It is possible to send an array instead of string, which bypasses the sanitizer.

How to fix Command Injection?

Upgrade systeminformation to version 4.34.11, 5.3.1 or higher.

<4.34.11 >=5.0.0 <5.3.1
  • M
Denial of Service (DoS)

systeminformation is a simple system and OS information library.

Affected versions of this package are vulnerable to Denial of Service (DoS). By leveraging the inetLatency() function, it is possible to execute a ping command that would run for a long time, leading to denial of service.

How to fix Denial of Service (DoS)?

Upgrade systeminformation to version 4.34.10 or higher.

<4.34.10
  • H
Command Injection

systeminformation is a simple system and OS information library.

Affected versions of this package are vulnerable to Command Injection. The sanitizeShellString function does not sanitize quotation marks, which could be leveraged by an attacker to execute arbitrary commands.

PoC

const si = require('systeminformation');
si.inetLatency("`<OS command>`");

How to fix Command Injection?

Upgrade systeminformation to version 4.31.1 or higher.

<4.31.1
  • C
Prototype Pollution

systeminformation is a simple system and OS information library.

Affected versions of this package are vulnerable to Prototype Pollution via improper shell sanitations in si.inetChecksite() leading to Prototype Pollution which can lead to Command Injection.

Note: This is due to an incomplete fix in CVE-2020-7778.

How to fix Prototype Pollution?

Upgrade systeminformation to version 4.30.5 or higher.

<4.30.5
  • C
Prototype Pollution

systeminformation is a simple system and OS information library.

Affected versions of this package are vulnerable to Prototype Pollution. The attacker can overwrite the properties and functions of an object, which can lead to executing OS commands.

Note: The fix for this vulnerability is insufficient, see CVE-2020-26245.

How to fix Prototype Pollution?

Upgrade systeminformation to version 4.30.2 or higher.

<4.30.2
  • H
Command Injection

systeminformation is a simple system and OS information library.

Affected versions of this package are vulnerable to Command Injection via is.services(), is.inetChecksite(), si.inetLatency(), si.networkStats(), is.services() and si.processLoad().

How to fix Command Injection?

Upgrade systeminformation to version 4.26.2 or higher.

<4.26.2
  • H
Command Injection

systeminformation is a simple system and OS information library.

Affected versions of this package are vulnerable to Command Injection. This package is vulnerable to Command Injection. The attacker can concatenate curl's parameters to overwrite Javascript files and then execute any OS commands.

How to fix Command Injection?

Upgrade systeminformation to version 4.27.11 or higher.

<4.27.11