{"id":"CVE-2021-21315","aliases":["DEBIAN-CVE-2021-21315","EUVD-2021-0527","GHSA-2m8v-572m-ff2v"],"status":"published","title":"Command Injection Vulnerability","description":"The System Information Library for Node.JS (npm package \"systeminformation\") is an open source collection of functions to retrieve detailed hardware, system and OS information. In systeminformation before version 5.3.1 there is a command injection vulnerability. Problem was fixed in version 5.3.1. As a workaround instead of upgrading, be sure to check or sanitize service parameters that are passed to si.inetLatency(), si.inetChecksite(), si.services(), si.processLoad() ... do only allow strings, reject any arrays. String sanitation works as expected.","severity":{"version":"3.1","score":7.1,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:N/I:H/A:N","level":"high","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-12","score":0.90675,"percentile":0.99807,"model":"v2026.06.15"},"facts":{"in_kev":true,"known_exploited":true,"public_exploit":true,"fix_available":true},"cwes":["CWE-78"],"published":"2021-02-16T16:51:04Z","modified":"2026-10-24T10:50:40Z","kev":{"date_added":"2022-01-18","due_date":"2022-02-01","required_action":"Apply updates per vendor instructions.","known_ransomware_use":"Unknown"},"exploitation":[{"source":"euvd","since":"2022-01-18"},{"source":"kev","since":"2022-01-18"}],"exploits":[{"source":"pocgithub","id":"ForbiddenProgrammer/CVE-2021-21315-PoC","title":"ForbiddenProgrammer/CVE-2021-21315-PoC","date":"2021-03-01","url":"https://github.com/ForbiddenProgrammer/CVE-2021-21315-PoC"},{"source":"pocgithub","id":"MazX0p/CVE-2021-21315-exploit","title":"MazX0p/CVE-2021-21315-exploit","date":"2021-07-18","url":"https://github.com/MazX0p/CVE-2021-21315-exploit"},{"source":"pocgithub","id":"alikarimi999/CVE-2021-21315","title":"alikarimi999/CVE-2021-21315","date":"2021-09-07","url":"https://github.com/alikarimi999/CVE-2021-21315"},{"source":"pocgithub","id":"G01d3nW01f/CVE-2021-21315","title":"G01d3nW01f/CVE-2021-21315","date":"2021-11-10","url":"https://github.com/G01d3nW01f/CVE-2021-21315"},{"source":"pocgithub","id":"xMohamed0/CVE-2021-21315-POC","title":"xMohamed0/CVE-2021-21315-POC","date":"2021-11-14","url":"https://github.com/xMohamed0/CVE-2021-21315-POC"},{"source":"pocgithub","id":"jimahub/scenario-d-kev","title":"jimahub/scenario-d-kev","date":"2026-09-28","url":"https://github.com/jimahub/scenario-d-kev"},{"source":"nuclei","id":"CVE-2021-21315","title":"Node.JS System Information Library \u003c5.3.1 - Remote Command Injection","type":"detection template","url":"https://github.com/projectdiscovery/nuclei-templates/blob/main/http/cves/2021/CVE-2021-21315.yaml"}],"fixes":[{"ecosystem":"npm","package":"systeminformation","fixed_in":["5.3.1"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"npm","package":"systeminformation","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"5.3.1"}]}]},{"source":"osv","ecosystem":"npm","package":"systeminformation","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"5.3.1"}]}]}],"products":[{"vendor":"apache","product":"cordova"},{"vendor":"npm package","product":"system information library for node.js"},{"vendor":"sebhildebrandt","product":"systeminformation"},{"vendor":"systeminformation","product":"systeminformation"}],"references":[{"url":"https://www.npmjs.com/package/systeminformation","tags":["x_refsource_MISC","x_transferred","Product","web"]},{"url":"https://github.com/sebhildebrandt/systeminformation/security/advisories/GHSA-2m8v-572m-ff2v","tags":["x_refsource_CONFIRM","x_transferred","Third Party Advisory","advisory","web"]},{"url":"https://github.com/sebhildebrandt/systeminformation/commit/07daa05fb06f24f96297abaa30c2ace8bfd8b525","tags":["x_refsource_MISC","x_transferred","Patch","fix","web"]},{"url":"https://lists.apache.org/thread.html/r8afea9a83ed568f2647cccc6d8d06126f9815715ddf9a4d479b26b05%40%3Cissues.cordova.apache.org%3E","tags":["mailing-list","x_refsource_MLIST","x_transferred","Issue Tracking","Mailing List","report","web"]},{"url":"https://security.netapp.com/advisory/ntap-20210312-0007/","tags":["x_refsource_CONFIRM","x_transferred","Third Party Advisory","advisory"]},{"url":"https://www.cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2021-21315","tags":["government-resource","US Government Resource","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2021-21315","tags":["advisory"]},{"url":"https://lists.apache.org/thread.html/r8afea9a83ed568f2647cccc6d8d06126f9815715ddf9a4d479b26b05@%3Cissues.cordova.apache.org%3E","tags":["web"]},{"url":"https://security.netapp.com/advisory/ntap-20210312-0007","tags":["web"]},{"url":"https://github.com/advisories/GHSA-2m8v-572m-ff2v"},{"url":"https://security-tracker.debian.org/tracker/CVE-2021-21315","tags":["advisory"]},{"url":"https://github.com/sebhildebrandt/systeminformation","tags":["package"]}],"sources":{"cve":[{"id":"CVE-2021-21315","title":"Command Injection Vulnerability","description":"The System Information Library for Node.JS (npm package \"systeminformation\") is an open source collection of functions to retrieve detailed hardware, system and OS information. In systeminformation before version 5.3.1 there is a command injection vulnerability. Problem was fixed in version 5.3.1. As a workaround instead of upgrading, be sure to check or sanitize service parameters that are passed to si.inetLatency(), si.inetChecksite(), si.services(), si.processLoad() ... do only allow strings, reject any arrays. String sanitation works as expected.","status":"published","published":"2021-02-16T17:00:18Z","modified":"2025-10-21T23:35:26.173Z","cvss":[{"version":"3.1","score":7.1,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:N/I:H/A:N","level":"high","assessor":"cna"}],"cwes":["CWE-78"],"updated_at":"2026-11-02T14:33:00.137099Z"}],"euvd":[{"id":"EUVD-2021-0527","description":"The System Information Library for Node.JS (npm package \"systeminformation\") is an open source collection of functions to retrieve detailed hardware, system and OS information. In systeminformation before version 5.3.1 there is a command injection vulnerability. Problem was fixed in version 5.3.1. As a workaround instead of upgrading, be sure to check or sanitize service parameters that are passed to si.inetLatency(), si.inetChecksite(), si.services(), si.processLoad() ... do only allow strings, reject any arrays. String sanitation works as expected.","status":"published","published":"2021-02-16T17:00:18Z","modified":"2025-10-21T23:35:26Z","cvss":[{"version":"3.1","score":7.1,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:N/I:H/A:N","level":"high"}],"exploited_since":"2022-01-18","updated_at":"2026-11-02T20:31:25.308373Z"}],"ghsa":[{"id":"GHSA-2m8v-572m-ff2v","title":"Command Injection Vulnerability","description":"### Impact\ncommand injection vulnerability\n\n### Patches\nProblem was fixed with a parameter check. Please upgrade to version \u003e= 5.3.1\n\n### Workarounds\nIf you cannot upgrade, be sure to check or sanitize service parameters that are passed to si.inetLatency(), si.inetChecksite(), si.services(), si.processLoad() ... do only allow strings, reject any arrays. String sanitation works as expected.","status":"published","published":"2021-02-16T16:51:04Z","modified":"2025-10-22T19:06:03Z","cvss":[{"version":"3.1","score":7.8,"vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H/E:H","level":"high"}],"cwes":["CWE-78"],"updated_at":"2026-11-02T14:39:02.474737Z"}],"kev":[{"id":"CVE-2021-21315","title":"System Information Library for Node.JS Command Injection","description":"In this vulnerability, an attacker can send a malicious payload that will exploit the name parameter. After successful exploitation, attackers can execute remote.","cwes":["CWE-78"],"kev":{"date_added":"2022-01-18","due_date":"2022-02-01","required_action":"Apply updates per vendor instructions.","known_ransomware_use":"Unknown"},"updated_at":"2026-11-02T17:00:16.541131Z"}],"nvd":[{"id":"CVE-2021-21315","description":"The System Information Library for Node.JS (npm package \"systeminformation\") is an open source collection of functions to retrieve detailed hardware, system and OS information. In systeminformation before version 5.3.1 there is a command injection vulnerability. Problem was fixed in version 5.3.1. As a workaround instead of upgrading, be sure to check or sanitize service parameters that are passed to si.inetLatency(), si.inetChecksite(), si.services(), si.processLoad() ... do only allow strings, reject any arrays. String sanitation works as expected.","status":"published","published":"2021-02-16T17:15:13.05Z","modified":"2026-06-17T03:35:16.7Z","cvss":[{"version":"3.1","score":7.1,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:N/I:H/A:N","level":"high","assessor":"secondary"},{"version":"3.1","score":7.8,"vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","level":"high","assessor":"primary"},{"version":"2.0","score":4.6,"vector":"AV:L/AC:L/Au:N/C:P/I:P/A:P","level":"medium","assessor":"primary"}],"cwes":["CWE-78"],"updated_at":"2026-11-02T14:06:50.031227Z"}],"osv":[{"id":"CVE-2021-21315","description":"The System Information Library for Node.JS (npm package \"systeminformation\") is an open source collection of functions to retrieve detailed hardware, system and OS information. In systeminformation before version 5.3.1 there is a command injection vulnerability. Problem was fixed in version 5.3.1. As a workaround instead of upgrading, be sure to check or sanitize service parameters that are passed to si.inetLatency(), si.inetChecksite(), si.services(), si.processLoad() ... do only allow strings, reject any arrays. String sanitation works as expected.","status":"published","published":"2021-02-16T17:15:13.05Z","modified":"2026-10-24T10:50:40.854543375Z","cvss":[{"version":"3.1","score":7.8,"vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T15:44:18.004149Z"},{"id":"DEBIAN-CVE-2021-21315","description":"The System Information Library for Node.JS (npm package \"systeminformation\") is an open source collection of functions to retrieve detailed hardware, system and OS information. In systeminformation before version 5.3.1 there is a command injection vulnerability. Problem was fixed in version 5.3.1. As a workaround instead of upgrading, be sure to check or sanitize service parameters that are passed to si.inetLatency(), si.inetChecksite(), si.services(), si.processLoad() ... do only allow strings, reject any arrays. String sanitation works as expected.","status":"withdrawn","published":"2021-02-16T17:15:13.05Z","modified":"2026-06-01T20:00:40.90226477Z","cvss":[{"version":"3.1","score":7.8,"vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T15:45:34.637046Z"},{"id":"GHSA-2m8v-572m-ff2v","title":"Command Injection Vulnerability","description":"### Impact\ncommand injection vulnerability\n\n### Patches\nProblem was fixed with a parameter check. Please upgrade to version \u003e= 5.3.1\n\n### Workarounds\nIf you cannot upgrade, be sure to check or sanitize service parameters that are passed to si.inetLatency(), si.inetChecksite(), si.services(), si.processLoad() ... do only allow strings, reject any arrays. String sanitation works as expected.","status":"published","published":"2021-02-16T16:51:04Z","modified":"2026-07-08T06:29:36.391211226Z","cvss":[{"version":"3.1","score":7.8,"vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H/E:H","level":"high"}],"cwes":["CWE-78"],"updated_at":"2026-11-02T15:46:34.700741Z"}]}}
