Command Injection Vulnerability in process Package

process Updated 02 Oct 2025

Summary

09/04/2024
Yes i
Unrated
Not published

CVE-2024-3566: process: command injection via argument list on Windows. Affects process versions >= 1.0.0.0, < 1.6.23.0. Fixed in 1.6.23.0. How to fix ↓

Also tracked for

The same CVE-2024-3566 is tracked separately for each ecosystem and vendor. Its fix information is the same; the package and affected versions differ.

Free scan

Check if this vulnerability affects your application

Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.

Check my app free

No signup required · Results in about 60 seconds

Sponsored Devnack Mobile apps built by Devnack Design, build and launch iOS and Android apps with a senior product team. From idea to store release Start a project

Background

The process package is a widely used library in the Haskell ecosystem that provides functionality for executing external processes. It includes the RawCommand constructor for specifying an executable and its arguments. On Windows, the RawCommand arguments are serialized into a command line string and passed to the CreateProcess routine. However, this serialization process does not properly escape characters with special meaning to cmd.exe, leading to a command injection vulnerability.

Vulnerability Detail

The command injection vulnerability in the process package on Windows allows an attacker to execute arbitrary commands by manipulating the arguments passed to batch files (.bat, .cmd). When a program running on Windows executes a batch file and includes or influences the argument values based on program input, an attacker can inject malicious commands. This can lead to unauthorized access, data exfiltration, or remote code execution.

How To Fix

Minimum fixed version

1.6.23.0

This is the first release that contains the fix.

Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →

Workaround

There is no specific workaround mentioned for this vulnerability.

Conclusion

The command injection vulnerability in the process package on Windows can be mitigated by updating to version 1.16.19.0 or newer. It is important to ensure that batch files executed with influenced arguments are properly validated to prevent command injection. For further support on vulnerability remediation, please contact DevNack.com.

See every vulnerability recorded for process →

Share this vulnerability

FAQ

The command injection vulnerability allows an attacker to execute arbitrary commands, potentially leading to unauthorized access, data exfiltration, or remote code execution.

The vulnerability affects process versions from 1.0.0.0 to 1.16.18.0.

There is no known exploit available at the moment, but the vulnerability has been publicly disclosed.

If updating the process package is not feasible, it is recommended to avoid executing batch files with arguments influenced by untrusted program inputs. Additionally, rejecting arguments that include special characters like '&' and '"' can help mitigate the risk.

You can find more information about this vulnerability in the official security advisory: [link to the advisory]

How To Fix

Minimum fixed version

1.6.23.0

This is the first release that contains the fix.

Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →

Subscribe to Vulert on Telegram
Daily digest of new CVEs, critical and high severity, affected packages and fixes — plus a weekly roundup.
Join the channel →
Help improve this record
Report an issue or send feedback