wandb
CVE-2026-15605
LOW
Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
ReconObtain low-privilege wandb credentials (PR:L)
-
DeliveryIdentify target artifact in storage backend
-
ExploitCompute MD5 collision for malicious payload (AC:H)
-
InstallOverwrite legitimate artifact file in storage
-
C2Victim pipeline calls ArtifactManifestEntry.download()
-
ExecuteWeak MD5 check passes on substituted file
-
ImpactMalicious artifact consumed as authentic
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A04:2025 - Cryptographic Failures
ASVS 5.0
V11 - Cryptography Irreversible hash functions
|
| Exploitation Conditions | Exploitation requires all of the following: (1) the target deployment uses wandb 0.25.2.dev1 or another version where ArtifactManifestEntry.download performs integrity validation using MD5 only, without the SHA-256 supplementary check from PR #12031; (2) the attacker has either write access to the artifact storage backend (e.g., object storage bucket) or a man-in-the-middle network position between the wandb client and storage service, per CVSS AV:N; (3) the attacker holds at minimum a low-privilege wandb account or credential sufficient to interact with the artifact system, per CVSS PR:L - unauthenticated exploitation is not supported by the available vector data; (4) the attacker can generate a valid MD5 collision for the target file, a computationally expensive operation per CVSS AC:H. Limiting factors: the affected version is a development pre-release with limited production deployment; MD5 collision attacks require substantial compute resources; and storage or network access prerequisites exclude opportunistic or bulk attackers. |
| Impact | The CVSS 4.0 vector (AV:N/AC:H/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N) scores 2.3, reflecting two major exploitation barriers: high attack complexity (MD5 collision generation is computationally expensive and requires specialized tooling) and a requirement for low-privilege authenticated access. Notably, the provided vector marks VI:N (no integrity impact), which is incongruent with the CWE-328 classification and the nature of the flaw - a successful attack fundamentally enables file substitution, an integrity violation. This appears to understate the real-world impact class; security teams should treat the effective integrity risk as Low rather than None. No EPSS data was provided, and no CISA KEV listing or public exploit code exists, confirming this has not been operationalized. The affected version is a development pre-release (0.25.2.dev1), which materially limits the number of production deployments exposed. For ML pipelines relying on artifact provenance for model governance or supply-chain security, the conceptual risk is higher than the score suggests, but the practical exploitation barrier remains significant absent a motivated, well-resourced adversary with storage or network access. |
| Exploit ScenarioDerived | An attacker with write access to a wandb artifact storage bucket identifies a target ML model artifact registered in a wandb project. Using offline MD5 chosen-prefix collision tooling, the attacker crafts a malicious model weights file that produces the same MD5 base64 digest as the legitimate artifact. The attacker replaces the file in storage; when a downstream pipeline calls ArtifactManifestEntry.download(), the MD5-only integrity check passes and the malicious file is accepted without raising an error. No public exploit code exists for this specific vulnerability, and the MD5 collision computation requirement limits this to well-resourced adversaries. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jul 13, 2026
Artifact Integrity Validation in wandb 0.25.2.dev1 uses MD5 (a cryptographically broken hash algorithm) within ArtifactManifestEntry.download in wandb/sdk/lib/hashutil.py, enabling a sufficiently resourced attacker with write access to artifact storage or a man-in-the-middle network position to substitute a malicious artifact file that shares the same MD5 digest as a legitimate one, bypassing download integrity checks. The CVSS 4.0 base score of 2.3 reflects high attack complexity and the requirement for authenticated access (PR:L), placing real-world exploitability firmly in the theoretical-to-low range. No public exploit exists and the vulnerability has no CISA KEV listing; an upstream fix via SHA-256 supplementation is available as an unmerged GitHub PR (#12031).
RemediationAI
The primary fix is available as an upstream pull request at https://github.com/wandb/wandb/pull/12031, which introduces SHA-256 integrity verification (sha256_file_b64) as a supplementary check alongside the existing MD5 digest in ArtifactManifestEntry. As of the time of analysis, this PR had not yet been merged and a released patched version is not independently confirmed - users should monitor https://github.com/wandb/wandb/ release notes and upgrade to the first tagged release incorporating PR #12031 once available. As a compensating control, restrict write permissions on artifact storage backends (e.g., S3 bucket policies, GCS IAM) to only trusted CI/CD principals, which removes the precondition for file substitution attacks. Enforcing HTTPS-only connections to artifact registries removes the network interception prerequisite. Pinning artifacts to specific content-addressed digests in reproducible pipelines provides additional defense at the workflow level. These controls carry the trade-off of added operational overhead but do not require waiting for the upstream patch.
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
wandb (Weights & Biases) is a Python library for ML experiment tracking and artifact management, identified by CPE cpe:2.3:a:n/a:wandb:*:*:*:*:*:*:*:*. The affected code path is ArtifactManifestEntry.download in wandb/sdk/lib/hashutil.py, which verifies downloaded artifact file integrity using MD5 digests (md5_file_b64) stored in the artifact manifest. CWE-328 (Use of Weak Hash) is the root cause: MD5 is not collision-resistant and has known chosen-prefix and identical-prefix collision attacks, making it unsuitable for integrity verification in adversarial contexts. The fix in PR #12031 augments the existing MD5 manifest digest with a SHA-256 hash stored in the extra field of ArtifactManifestEntry (sha256_file_b64), and validates this stronger hash during download and artifact.verify() calls, rejecting files where the SHA-256 does not match. The ArtifactManifestV1.digest() method is also updated to incorporate the SHA-256 when present, ensuring manifest-level integrity is also strengthened.
Know when Wandb gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:H/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N
Network vector for remote artifact storage access; high complexity for MD5 collision; low privilege per authenticated wandb requirement; both confidentiality and integrity impacts apply given file substitution and hash exposure.
Primary rating from Vendor (VulDB).
CVSS VectorVendor: VulDB
DescriptionCVE.org
A security vulnerability has been detected in wandb 0.25.2.dev1. Affected is the function ArtifactManifestEntry.download in the library wandb/sdk/lib/hashutil.py of the component Artifact Integrity Validation. The manipulation leads to use of weak hash. The attack may be initiated remotely. A high degree of complexity is needed for the attack. The exploitability is told to be difficult. The pull request to fix this issue awaits acceptance.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
Affected Products (CPE)CVE.org
Path traversal in the Weights & Biases (wandb) Python client before 0.29.0 lets a malicious or compromised W&B backend p
HTML injection in wandb OpenUI up to version 1.0 allows remote unauthenticated attackers to inject arbitrary HTML via ma
Stored cross-site scripting (XSS) in wandb OpenUI up to version 1.0 via the Window Message Event Handler in frontend/pub
Information disclosure in wandb OpenUI up to version 1.0/3.5-turb allows authenticated local network attackers to expose
Wandb OpenUI up to version 1.0 contains hard-coded credentials exposure in backend/openui/config.py where the LITELLM_MA
NVD
CVE.org
EPSS
Vulnrichment
GitHub
VulDB
Exploit-DB