Skip to main content

MONAI CVE-2026-118684

| EUVDEUVD-2026-112389 HIGH
Use of a Broken or Risky Cryptographic Algorithm (CWE-327)
2026-10-28 disclosure@vulncheck.com GHSA-59gw-w64r-2mg7
8.2
CVSS 4.0 · Vendor: vulncheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Gain MITM or registry/CDN control
  2. Delivery
    Substitute bundle during download
  3. Exploit
    check_hash returns True, integrity skipped
  4. Execution
    Malicious bundle processed by MONAI
  5. Impact
    Code 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).

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – 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

MONAI 0 <1.6.1

Affected Packages

euvd monai fix: 1.6.1

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

Vendor (vulncheck) PRIMARY 8.2 HIGH
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
vuln.today AI 5.9 MEDIUM

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.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N
4.0 AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (vulncheck).

CVSS VectorVendor: vulncheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
Present
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
High
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
Oct 28, 2026 - 20:04 EUVD
CVE Published
Oct 28, 2026 - 19:17 cve.org
HIGH 8.2

DescriptionCVE.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

Why It Matters

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.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

Prevalence
Low
niche medical-imaging AI framework, research and clinical ML use
Social Media
1
Sightings
Data Quality
3 sources
Confidence: Low

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.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS N/A
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
Yes
Human Impact
High

Priority Score

41
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +41
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy