OS Command Injection Vulnerability in Auto Tuner Pruning Function
An OS Command Injection vulnerability was identified in the prune_by_memory_estimation function of the paddle.distributed.auto_tuner.prune module in PaddlePaddle version 2.6.0. This issue was patched in commit bd70057f653261ac79ff1e7801192839ee92f61e.
Available publicly on Apr 22 2024 | Available with Premium on Jan 30 2024
Threat Overview
The vulnerability arises from the use of string concatenation to construct a command for memory estimation, which is then executed using subprocess.run with shell=True. This approach does not properly sanitize input parameters, allowing an attacker to inject arbitrary OS commands. The vulnerability is particularly concerning because it can be exploited by manipulating the parameters passed to the prune_by_memory_estimation function, leading to the execution of unintended commands on the host system.
Attack Scenario
An attacker could exploit this vulnerability by crafting a malicious configuration that includes shell commands in the parameters for the prune_by_memory_estimation function. When this function is called, the injected commands are executed, potentially allowing the attacker to gain unauthorized access or perform malicious actions on the host system.
Who is affected
Users of PaddlePaddle version 2.6.0 who utilize the prune_by_memory_estimation function in the paddle.distributed.auto_tuner.prune module are affected by this vulnerability. The risk is particularly high for systems where untrusted users can influence the parameters passed to this function.
Technical Report
Want more out of Sightline?
Sightline offers even more for premium customers
Go Premium
We have - related security advisories that are available with Sightline Premium.