Description
MONAI before 1.6.0 is vulnerable to OS command injection in the nnUNetV2Runner component (monai.apps.nnunet.nnunetv2_runner). User-controlled values taken from the YAML configuration file (notably dataset_name_or_id) and from CLI/kwargs arguments are concatenated into a command string without quoting or validation and then passed to subprocess with shell=True, so shell metacharacters (e.g., ';' on Linux, '&' on Windows) are interpreted. If a victim loads and processes a crafted configuration file — for example by instantiating nnUNetV2Runner with the malicious YAML and invoking a training/validation job such as train_single_model() — arbitrary commands are executed with the privileges of the user running the job.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| Project-MONAI | MONAI | < 1.6.0 | 1.6.0 |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| PyPI | monai | < 1.6.0 | 1.6.0 | GHSA-rghg-q7wp-9767 |
References
- GitHub Security Advisory (GHSA-rghg-q7wp-9767) vendor-advisory
- VulnCheck Advisory: MONAI before 1.6.0 OS Command Injection via dataset_name_or_id third-party-advisory