Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessGain MITM or registry/CDN control
-
DeliverySubstitute bundle during download
-
Exploitcheck_hash returns True, integrity skipped
-
ExecutionMalicious bundle processed by MONAI
-
ImpactCode execution or supply-chain compromise
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A04:2025 - Cryptographic Failures
ASVS 5.0
V11 - Cryptography Approved algorithm selection
|
| Exploitation Conditions | The flaw is reachable through MONAI's default download paths - _download_from_github, _download_from_monaihosting, _download_from_ngc, and the MedNIST/Decathlon dataset and MMAR/auto3dseg template downloads - all of which invoke check_hash with hash_val=None, so no integrity verification occurs on default bundle/dataset/model downloads before version 1.6.1. The required precondition is an attacker who can tamper with the download in transit (man-in-the-middle on a hop to the hosting URL) OR who controls/compromises a registry, CDN, or release channel (NGC, GitHub releases, MONAI hosting); alternatively, when a hash IS supplied, the MD5 default is collision-attackable by an attacker with the resources to compute a colliding payload. Limiting factors: exploitation is not possible against a passive attacker with no network/registry position (hence AT:P), direct impact is confined to integrity (malicious file delivery), and full code execution additionally depends on the downstream bundle-handling behaviour described as F001/F002. The only complete fix stated by the vendor is upgrading to MONAI 1.6.1 (which makes hash_val required and changes the default to SHA-256). |
| Impact | Signals are moderate and partly conflicting, so this is a real but conditional priority rather than a drop-everything emergency. The supplied CVSS 4.0 vector (AV:N/AC:L/AT:P/PR:N/UI:N) scores 8.2 and models VI:H with VC:N/VA:N - i.e. the direct impact is integrity-only (malicious file substitution), not confidentiality or availability; the AT:P (attack requirement) captures that the attacker must hold a privileged network position or control a registry/CDN, which the raw 8.2 can understate. The GHSA advisory itself rates the isolated flaw MEDIUM (CVSS 3.1 base 6.4, CVSS 4.0 base 6.1) and labels its exploit maturity as ARBITRARY-WRITE, stating that full RCE only arises when this is chained with the separate F001/F002 bundle-eval issues - so the 'RCE' framing is a chained outcome, not a property of this CVE alone. No CISA KEV listing and no EPSS score are present in the input, so active-exploitation and statistical-exploitation signals are simply absent (not low - absent). A PoC is included, but it demonstrates only the check_hash silent-skip behaviour, not a weaponized end-to-end exploit. Net: a genuine supply-chain integrity weakness worth remediating on the vendor's 'this_week' cadence, but real-world risk hinges on an attacker achieving MITM or registry/CDN compromise, which bounds widespread opportunistic exploitation. |
| Exploit ScenarioDerived | An attacker positioned on a network hop between a MONAI user and a bundle/model host (e.g. MONAI hosting, NGC, or GitHub releases), or who has compromised one of those registries/CDNs, substitutes a downloaded bundle, dataset, or model archive with a malicious one. Because these download paths call check_hash with hash_val=None, the integrity check silently returns True and the swapped file is accepted; a public PoC reference exists demonstrating the silent skip, though it is not verified as working end-to-end exploit code. The malicious archive can then lead to code execution when processed by MONAI's downstream bundle handling (per the advisory's F001/F002 chain). Exploitation is remote and unauthenticated but requires the attacker to first achieve the MITM or registry-control precondition (reflected as AT:P). |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 28, 2026
Integrity verification bypass in MONAI before 1.6.1 lets an attacker who can tamper with a download path - via man-in-the-middle or control of a registry/CDN/release channel such as NGC, GitHub releases, or MONAI hosting - substitute bundles, datasets, or model archives because check_hash() silently returns True when hash_val is None and defaults to MD5 when a hash is supplied. The flaw affects default download functions (_download_from_github, _download_from_monaihosting, _download_from_ngc, MedNIST/Decathlon datasets, MMAR/auto3dseg templates), all of which pass hash_val=None, so no integrity check occurs. Direct impact is malicious file delivery (integrity); code execution depends on downstream bundle handling tracked separately, and exploitation requires the attacker to occupy a network or registry position. A public PoC demonstration exists; it demonstrates the silent bypass and is not verified as end-to-end exploit code. No confirmed active exploitation (CISA KEV) is reported.
RemediationAI
Upgrade to MONAI 1.6.1, which the vendor identifies as the only complete fix; it makes hash_val a required argument for the download/extract APIs and changes the default hash type to SHA-256. The advisory is at https://github.com/Project-MONAI/MONAI/security/advisories/GHSA-hhh4-h52m-fqh6 and the VulnCheck advisory at https://www.vulncheck.com/advisories/monai-before-1.6.1-missing-integrity-verification-via-check-hash-in-downloads. If an immediate upgrade is not possible, wrap or patch the affected call paths so that every download_url()/check_hash() invocation supplies an out-of-band SHA-256 hash_val and explicitly sets hash_type='sha256'; the trade-off is that omitting hash_val then must fail closed, which can break existing code that relied on the silent pass-through. Verify downloaded bundles, datasets, and MMAR/auto3dseg archives against trusted SHA-256 values obtained through a separate channel before loading them. These are interim compensating measures only; they do not repair the flaw for third-party code or code paths you do not control.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
MONAI is a PyTorch-based framework for medical imaging AI, and its download utilities fetch bundles, datasets, and model archives from GitHub, MONAI hosting, NGC, and other registries. The root cause is two-fold: check_hash() in monai/apps/utils.py returns True immediately when its val argument is None (CWE-345 insufficient verification of data authenticity), and download_url() defaults to hash_type='md5' (CWE-327 use of a broken cryptographic algorithm). The vulnerable call sites - monai/bundle/scripts.py lines 196, 204, 214; monai/apps/datasets.py lines 119 and 316; and monai/apps/auto3dseg/bundle_gen.py line 429 - all invoke these helpers with hash_val=None, so the default download path performs no integrity check before version 1.6.1. Even when a hash is supplied, MD5 collisions could allow substitution by an attacker with collision-computation resources. The assessed CVSS 3.1 vector reflects the required precondition as AC:H: an attacker must have a man-in-the-middle position on a download hop or control of a registry, CDN, or release channel, so passive network observers cannot exploit it. The direct verified impact is integrity (malicious file delivery), while code execution is a downstream possibility only if the substituted bundle or archive is later processed by bundle-handling code.
Know when the next one hits your stack
- 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:L/AT:P/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N
AC:H and (in 4.0) AT:P because exploitation requires a MITM position or registry compromise; PR:N/UI:N as downloads need no auth or interaction; impact is integrity-only (I:H), so C:A:N.
Primary rating from Vendor (vulncheck).
CVSS VectorVendor: vulncheck
Lifecycle Timeline
2DescriptionCVE.org
MONAI before 1.6.1 contains an insufficient integrity verification vulnerability in check_hash() that silently returns True when hash_val is None, with MD5 as the default hash type. Attackers performing man-in-the-middle or registry compromise can substitute bundles, datasets, or model archives downloaded without hashes, enabling malicious file delivery and potential code execution.
Technical POC Analysis
CWE-327 (Use of a Broken or Risky Cryptographic Algorithm), with the advisory also assigning CWE-345 (Insufficient Verification of Data Authenticity).
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Executive ViewAI
MONAI, a widely used medical imaging AI framework, contains a high-severity integrity verification bypass (CVE-2026-118684) that affects all default model and dataset download functions. Organizations using MONAI to fetch pre-trained models or datasets from GitHub, NGC, or MONAI hosting are exposed to tampered files if an attacker can intercept or control the delivery channel, potentially compromising the integrity of AI models used in clinical or research settings. Leadership should care because this undermines trust in the medical AI supply chain and could lead to regulatory and patient safety concerns.
Apply vendor patch.
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
Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.
EUVD-2026-112389
GHSA-59gw-w64r-2mg7
NVD
CVE.org
Exploit-DB