Directory Traversalwandb is an A CLI and library for interacting with the Weights and Biases API.
Affected versions of this package are vulnerable to Directory Traversal in the File.download() method of wandb/apis/public/files.py, which builds the destination with os.path.join(root, self.name) and never checks that the result stays under root, even though util.make_file_path_upload_safe() normalizes the equivalent path on the upload side. An attacker who controls the backend server, or is in a MitM position, can write files to arbitrary locations such as shell startup files, cron jobs, or SSH configuration, reaching code execution, by returning a file name containing ../ sequences or an absolute path such as /tmp/x.txt, since util.download_file_from_url() creates any missing parent directories. This requires the user to invoke File.download(), directly or by iterating run.files(), against that attacker-controlled backend.
How to fix Directory Traversal? Upgrade wandb to version 0.29.0 or higher.
| |
Use of Weak Hashwandb is an A CLI and library for interacting with the Weights and Biases API.
Affected versions of this package are vulnerable to Use of Weak Hash through ArtifactManifestEntry.download in wandb/sdk/artifacts/artifact_manifest_entry.py and related artifact verification paths. An attacker can bypass or poison artifact integrity checks by supplying content that collides under the MD5-based digest comparison used for cached downloads and local file verification. This allows a substituted artifact file to be accepted as legitimate during download or verification, so users may load, cache, or verify tampered artifact contents instead of the expected file.
How to fix Use of Weak Hash? A fix was pushed into the master branch but not yet published.
| |