GitHub Advisoryadvisory · Maven
GHSA-cxgf-v2p8-7ph7 NuProcess vulnerable to command-line injection through insertion of NUL character(s)
HIGH
Official page ↗
- Aliases
- CVE-2022-39243
- Ecosystem
- Maven
- Packages
- com.zaxxer:nuprocess
- Severity
- High
- CVSS vector
- CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
- Weaknesses
- CWE-77
- Reviewed
- 2022-09-30
Affected packages
• Maven com.zaxxer:nuprocess: >= 1.2.0, < 2.0.5 → fixed in 2.0.5
Description
Impact
In all the versions of NuProcess where it forks processes by using the JVM's Java_java_lang_UNIXProcess_forkAndExec method (1.2.0+), attackers can use NUL characters in their strings to perform command line injection. Java's ProcessBuilder isn't vulnerable because of a check in ProcessBuilder.start. NuProcess is missing that check.
This vulnerability can only be exploited to inject command line arguments on Linux.
• On macOS, any argument with a NUL character is truncated at that character. This means the malicious arguments are never seen by the started process.
• On Windows, the entire command line is truncated at the first NUL character. This means the malicious arguments, and any intentional arguments provided after them, are never seen by the started process.
Patches
2.0.5
Workarounds
Users of the library can sanitize command strings to remove NUL characters prior to passing them to NuProcess for execution.
References
None.
Related
Alias · CVE (1)
- CVE-2022-39243 NuProcess is an external process execution implementation for Java. vulnerability
Weakness · CWE (1)
- CWE-77 Improper Neutralization of Special Elements used in a Command weakness
References
- https://github.com/brettwooldridge/NuProcess/security/advisories/GHSA-cxgf-v2p8-7ph7 web
- https://nvd.nist.gov/vuln/detail/CVE-2022-39243 advisory
- https://github.com/brettwooldridge/NuProcess/pull/143 web
- https://github.com/brettwooldridge/NuProcess/commit/29bc09de561bf00ff9bf77123756363a9709f868 web
- https://github.com/brettwooldridge/NuProcess package