swanlab-setup
Warn
Audited by Gen Agent Trust Hub on Sep 20, 2026
Risk Level: MEDIUMEXTERNAL_DOWNLOADSCOMMAND_EXECUTIONINDIRECT_PROMPT_INJECTIONCREDENTIALS_UNSAFE
Full Analysis
- [EXTERNAL_DOWNLOADS]: The skill installs the
swanlabPython package from the public PyPI registry usingpip install. The package version is not pinned, which can lead to environment drift or exposure to supply chain attacks if a malicious version is uploaded to the registry. - [COMMAND_EXECUTION]: The skill uses
docker execto run shell commands inside containers and executes various shell scripts on the host to manage configurations and login states. - [INDIRECT_PROMPT_INJECTION]: The
swanlab_setup_for_containerfunction inscripts/functions.shis vulnerable to command injection. It interpolates variables directly into a shell string executed viadocker exec. If theSWANLAB_API_KEYorSWANLAB_HOSTvariables contain single quotes (e.g.,'; touch /tmp/pwned; '), they can break out of the intended command and execute arbitrary code inside the container. - Ingestion points:
SWANLAB_API_KEYandSWANLAB_HOSTare ingested from environment variables,~/.verl/swanlab.conf, or interactive user input. - Boundary markers: None. The variables are wrapped in single quotes within a double-quoted bash string, which is insufficient for sanitization.
- Capability inventory: Uses
docker exec,pip install, andbashcommand execution. - Sanitization: No escaping or validation is performed on the host or key variables before they are passed to the shell.
- [CREDENTIALS_UNSAFE]: The skill stores the SwanLab API key in plain text within
~/.verl/swanlab.conf. While the script attempts to restrict access usingchmod 600, storing secrets in plain text on the file system remains a risk factor.
Audit Metadata