CPATH-2026-0004 · Medical IoT

Unprotected JTAG flash read/write access

At a glance

What this record establishes

Affected product
BaxterBaxter Life2000 internal JTAG flash R/WPortable ventilator
  • Life2000 Ventilation System 06.08.00.00 and earlier
Root cause
Production hardware exposes an internal JTAG interface without effective access control, while the microcontroller lacks memory protection that would constrain flash reads and writes.
Reachable consequence
  • Direct flash modification can alter ventilator therapy or disable life-support behavior, creating a credible risk of serious patient injury.
  • Read and write access to internal flash lets an attacker replace trusted device code and take control beneath the application layer.
Remediation
The hardware defect has no software fix. Baxter permanently discontinued and recalled Life2000, so deployed units should be removed and replaced under the recall guidance.
Evidence status
  • Documented in a public reportNVD reports the condition.
Baseline confidence: High

Vulnerability record

Bug mechanics, affected systems, and remediation

The editorial record appears before the modeled consequence so the Path Score remains traceable to the documented vulnerability.

1. Summary

The Baxter Life2000 Ventilation System exposes an internal JTAG on-chip debug/test interface on its microcontroller (MCU) with improper access control, and the MCU itself lacks memory protection [1]. An attacker with board-level physical access can attach an off-the-shelf JTAG/SWD debugger and directly read or write the MCU’s on-chip flash memory [1]. This lets an attacker exfiltrate firmware and embedded secrets and rewrite the control firmware of a life-support ventilator, disrupting device function and disclosing information [1]. The defect is a hardware access-control failure, not a software file or service bug.

2. Affected products & versions

product models affected versions fixed version
Life2000 Ventilation System Life2000 Ventilation System 06.08.00.00 and prior [1] none released; product discontinued and permanently recalled (FDA Class I) [7][8]

3. The vulnerability in detail

The flaw lives in hardware, not in application code. Specifically, it is located in the Life2000 ventilator’s microcontroller and its internal JTAG on-chip debug/test interface, together with the MCU’s on-chip flash memory [1]. There is no vulnerable file or network service to point at; the defect is in how the device’s control board governs (or fails to govern) access to its debug port. The canonical NVD description states: “The ventilator’s microcontroller lacks memory protection. An attacker could connect to the internal JTAG interface and read or write to flash memory using an off-the-shelf debugging tool, which could disrupt the function of the device and/or cause unauthorized information disclosure” [1].

The root cause has two reinforcing parts, both drawn directly from the canonical record. First, the JTAG debug/test interface is left present and enabled on production/shipped units with improper access control (CWE-1191, “On-Chip Debug and Test Interface With Improper Access Control”) — it does not restrict flash read or write operations [1]. Second, the microcontroller lacks memory protection, so once the debug interface responds, there is nothing to stop arbitrary read/write of on-chip flash [1]. These two conditions compose: the interface is reachable, and nothing downstream of it constrains what a connected debugger can do to flash. That is the whole mechanism — a physically present, unauthenticated debug port wired to an MCU with no memory-access guard.

CWE-1191, the assigned weakness, describes a hardware condition in which the debug and test interface that manufacturers use during development or servicing is shipped in production without adequate access control [1]. Debug interfaces like JTAG and SWD are enormously powerful by design: they grant direct visibility into and control over CPU state, memory, and flash. The intended lifecycle is that such an interface be disabled, locked, or strongly authenticated (via one-time-programmable fuses, read-out protection, or authenticated-debug challenge/response) before a device leaves the factory. When it is not — as here — anyone who can physically reach the header inherits full silicon-level control of the part. On this MCU, the second defect makes that control complete: because the microcontroller lacks memory protection, there is no residual barrier (no memory protection unit gating flash regions, no locked read-out state) between the responsive debug port and the entire flash image. A debugger can therefore both dump the firmware (a confidentiality break exposing proprietary code and any embedded secrets) and rewrite it (an integrity break replacing the code the device executes).

Note on read-out protection: the canonical NVD record [1] makes no reference to a flash read-out protection (RDP) mechanism, an ICode bus, or CPU exception-handling behavior on this device, and the underlying MCU part is never named in any reviewed source, so no specific RDP feature can be attributed to this device. What is sourced is simpler and sufficient: the MCU lacks memory protection, so unrestricted flash read/write over the debug port does not depend on defeating any anti-readout control [1].

The trigger mechanism is direct and requires no software cleverness at the protocol level. The preconditions are: (a) local, board-level physical access to the internal JTAG header — the device must be opened or its internal hardware otherwise reached; (b) no authentication and no user interaction are needed (PR:N, UI:N); and (c) the target runs an affected version (06.08.00.00 or prior) [1]. The interface is not remotely or wirelessly reachable (AV:L) [1]. An off-the-shelf debugging tool is sufficient — no custom silicon, no bespoke exploit code [1]. Exploitation is trivial given physical access — an attacker essentially walks up to a device and plugs hardware into a port [6]; the “a teenager could do it” framing is offered as color, not as a load-bearing technical claim.

The step-by-step exploitation chain is:

  1. Obtain physical possession of, or unattended access to, a Life2000 ventilator — for example by walking up to a device in a clinical setting or acquiring a unit [6][7].
  2. Open the device or otherwise gain board-level access to reach the internal JTAG debug header [1].
  3. Attach a standard off-the-shelf JTAG/SWD debugger to the interface [1].
  4. Read flash memory over JTAG to dump firmware and any embedded secrets; because the MCU lacks memory protection, no read-out/memory-access control stands between the debugger and the full flash image [1].
  5. Write/modify the MCU’s flash to alter control firmware — changing device behavior or therapy [1]. (Whether rewritten firmware then executes and survives reboot is treated as an inference below, not as a sourced fact.)

Persistence note (inference, not directly sourced): NVD states only that flash read/write can “disrupt the function of the device and/or cause unauthorized information disclosure” [1]. It does not assert that attacker-written firmware executes as-is or survives reboot. Because the reviewed sources document no firmware-integrity/secure-boot control on this device, it is a reasonable inference that flash written over the debug port would persist in non-volatile memory across reboot; this is explicitly flagged as inference and is not carried into the consequence scoring, which lives in Section 6.

The bug is real and low-skill to exploit given physical access, but its reachability is gated entirely on getting hands on the device’s internals — which is why the whole class is exposure-limited rather than remotely wormable.

4. Discovery & timeline

The identity of the discovering/reporting researcher is not documented in the available sources. The vulnerability set was handled via coordinated disclosure and published in CISA ICS-Medical Advisory ICSMA-24-319-01 (November 2024), with Baxter acting as the assigning CNA for CVE-2024-48970 [2][3].

  • November 14, 2024 — CVE-2024-48970 published; CISA advisory ICSMA-24-319-01 discloses the Life2000 vulnerability set (coordinated disclosure) [1][3].
  • As of April 10, 2025 — Baxter reports no serious injuries or deaths attributable to the flaw [7].
  • April 7, 2025 — Baxter recalls Life2000 ventilators over cybersecurity concerns; the FDA classifies it as a Class I recall / permanent market removal [7]. (The commonly cited figure is “4,100+ units.”)
  • Later 2025 — permanent discontinuation of the product is confirmed rather than a firmware patch [6][8].

5. Technical reference

  • CVE: CVE-2024-48970 [1][2].
  • CWE: CWE-1191 — On-Chip Debug and Test Interface With Improper Access Control [1].
  • CVSS v3.1: base 9.3 CRITICAL, vector AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H (contributed by Baxter as CNA) [1]. Key metrics for this bug: AV:L captures that the interface is only reachable physically/locally — not over any network — which is the single most important limiter here. PR:N/UI:N mean that once physical access exists, no credentials and no operator interaction are required. S:C (scope changed) reflects that compromising the MCU’s debug interface affects the broader device (therapy delivery, data), not just the debugged component. C:H/I:H/A:H reflect full firmware/secret disclosure, arbitrary firmware rewrite, and disruption of a life-support function.
  • CVSS v4.0: base 9.4, vector CVSS4.0/AV:L/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H(not documented in public advisories). This figure is attributed to the CISA advisory [3]; NVD carries no CVSS v4.0 assessment for this CVE (“NVD assessment not yet provided”) [1].
  • Code/commit refs: not applicable — this is a hardware debug-interface defect, not a source-level flaw; no commit references exist.

6. Consequence & CFSE path analysis

Real-world consequence: an attacker who opens a Life2000 ventilator and connects a debugger can rewrite the control firmware of a life-support device — altering therapy settings and device behavior — and can extract proprietary firmware and embedded secrets. The FDA explicitly warned that if a device is left unattended, unauthorized individuals could change therapy settings or access device data [7]. Because a ventilator is life-sustaining, unauthorized firmware modification creates credible risk of serious patient injury or death, even though no such incident has been reported [7].

Why the CFSE Path Score differs from CVSS: CVSS produces a single 9.3/9.4 base score that collapses a physically-gated hardware defect and a life-safety consequence into one number. CFSE instead decomposes the CVE into distinct risk paths and scores each on its own consequence family, then reconciles reachability (exposure) separately rather than letting a “Local” attack vector silently deflate the safety consequence. This preserves the CRITICAL life-safety signal that a naive reading of “AV:L, needs physical access” might otherwise discount, while still being honest that exploitation is one-device-at-a-time.

  • verdict: CRITICAL. CVE-2024-48970 decomposes into two co-dominant risk paths, both scored CRITICAL, driving an overall path_verdict of CRITICAL.
  • Path 1 — DEVICE_CONTROL_SAFETY (safety family): writing device flash over the internal JTAG header can modify control firmware on a life-support ventilator and alter therapy, creating credible risk of serious patient injury or death (PH high).
  • Path 2 — FIRMWARE_TRUST_ROOT (authority family): unrestricted JTAG flash read/write on an MCU lacking memory protection lets an attacker read and rewrite firmware, owning the device’s code-execution trust root and exposing proprietary firmware and embedded secrets.
  • Exposure: both paths are exposure-limited (EX=1, reachability-bound): exploitation requires opening each device for board-level physical access to an internal header that is neither remotely nor wirelessly reachable, so the base CRITICAL band is retained under a low-exposure cap with no separate uplift.
  • Scaling / recovery: the technique and any extracted secrets are treated as reusable across the model line (SR high), but exploitation is strictly one device at a time (SX low), with recovery requiring per-device field service.
  • Status: the device is best characterized as recall / end-of-life — the product was discontinued and permanently recalled (FDA Class I) rather than patched [6][7][8].

7. Remediation & mitigations

There is no fixed software/firmware version for this bug. Baxter’s primary response was to permanently discontinue the Life2000 and issue an FDA Class I recall removing it from the market, rather than to patch [6][7][8]. Because the defect is in shipped hardware, remediation for deployed units is not a software update.

  • Interim vendor mitigation (deployed units): maintain physical possession and control of devices and do not leave them unattended — this directly addresses the only reachability path (board-level physical access to the internal JTAG header) [3][7].
  • Ultimate remediation: removal from service via the permanent recall [7][8].
  • Secure-by-design lessons applicable to this specific flaw [5]: disable, fuse-lock, or strongly authenticate the JTAG/debug/test/service interface before shipment so a shipped unit does not expose an unauthenticated debug port; enable and lock hardware flash read-out/memory protection so the MCU refuses debug-initiated flash read/write even if the port is reached; sign firmware and verify signatures before installation/execution; and implement secure boot to reject unauthorized code written to flash.
  • Detection reality for this specific bug: because the two defects are (1) an unauthenticated debug port and (2) an MCU with no memory protection, the only controls that actually break the chain are hardware/firmware ones applied at manufacture — locking the port and enabling flash protection. There is no software patch path for units already in the field.

No generic SOC/network-monitoring controls are meaningful here, because the attack is board-level physical and produces no network signal; physical custody and device-inventory control are the only operationally relevant detections.

8. Sources

  1. NVD - CVE-2024-48970 Detail — NIST National Vulnerability Database — https://nvd.nist.gov/vuln/detail/CVE-2024-48970 — Canonical record: MCU lacks memory protection; attacker connects to internal JTAG interface to read/write flash with an off-the-shelf debugging tool, disrupting function and/or disclosing information; CVSS v3.1 9.3, CWE-1191, affected versions 06.08.00.00 and prior. The record does not mention ICode bus, RDP, or CPU exception handling, and NVD carries no CVSS v4.0 assessment (“not yet provided”). — primary-advisory.
  2. CVE-2024-48970 Record — CVE Program / MITRE (Baxter CNA) — https://www.cve.org/CVERecord?id=CVE-2024-48970 — Authoritative CNA record; confirms Baxter as assigning CNA, identifier, CWE, versions. — primary-advisory.
  3. ICSMA-24-319-01: Baxter Life2000 Ventilation System — CISA (ICS Medical Advisory) — https://www.cisa.gov/news-events/ics-medical-advisories/icsma-24-319-01 — Coordinated-disclosure advisory; cited by NVD as the source of CVSS v3.1/v4.0 scores and mitigation guidance (physical control). The v4.0 score/vector attributed here is not corroborated by any other reviewed source and is marked unverified in Section 5. — primary-advisory.
  4. CVE-2024-48970 — CVEDetails (SecunTech) — https://www.cvedetails.com/cve/CVE-2024-48970/ — Aggregator mirror of the NVD/CVE record. Retained only as a CVE-facts mirror, not independent reporting. — aggregator.
  5. Case Study: Baxter Life2000 Ventilator Firmware Tampering — Secure-by-Design Handbook — https://www.securebydesignhandbook.com/docs/resources/real-world-vulnerabilities/baxter-life2000-ventilator-tampering — Secure-by-design remediation lessons (authenticate debug interfaces, sign firmware, secure boot). Names CVE-2024-48971 (hard-coded passwords) explicitly; used for remediation-lesson context, not as direct evidence of CVE-2024-48970 mechanics. — reputable-press.
  6. Baxter’s recalled ventilator was so easy to hack, ‘a teenager’ could have done it — Healthcare Brew — https://www.healthcare-brew.com/stories/2025/06/10/recalled-ventilator-easy-hack — Ease-of-exploitation and disclosure-timeline context; discontinue-not-patch decision. The “a teenager” characterization is presented as color, not a load-bearing technical claim. — reputable-press.
  7. FDA announces full recall of Baxter Life2000 ventilators over cybersecurity flaw — Health Exec — https://healthexec.com/topics/healthcare-management/healthcare-logistics/fda-announces-full-recall-baxter-life2000-ventilators-over-cybersecurity-flaw — FDA Class I recall, permanent removal, therapy-change/data-access warning, no injuries/deaths. The “4,100+ units” figure is press restatement. — reputable-press.
  8. Cyber Issue Leads to FDA Recall of Baxter Respiratory Gear — BankInfoSecurity (ISMG) — https://www.bankinfosecurity.com/cyber-issue-leads-to-fda-recall-baxter-respiratory-gear-a-30173 — Links Nov 2024 CISA advisory to 2025 recall; discontinue-rather-than-remediate decision. — reputable-press.

Causal model

How the exploit reaches this consequence

2 modeled paths · each transition states what supports it.

Safety · Co-dominant path

Device-control safety

Direct flash modification can alter ventilator therapy or disable life-support behavior, creating a credible risk of serious patient injury.

CRITICAL
  1. accessSource-backed

    Per-device physical access

    Internal JTAG header requires opening the device, board-level access, per-device.

    Evidence NVD

  2. boundaryModel inference

    Reusable multi-stage bridge

    Chains physical access into safety actuation across boundaries.

    Evidence Derived from the cited facts.

  3. capabilityModel inference

    Severe therapy or actuation consequence

    Direct flash modification can alter ventilator therapy or disable life-support behavior, creating a credible risk of serious patient injury.

    Evidence Derived from the cited facts.

  4. consequenceModel inference

    Device-control safety

    Direct flash modification can alter ventilator therapy or disable life-support behavior, creating a credible risk of serious patient injury.

    Evidence Derived from the cited facts.

  5. recoveryOperational assumption

    Fleet action or replacement

    Persistent and hard to detect, needs field service.

    Evidence Required deployment or recovery condition.

Decision trail

How the final band follows

  1. Base bandCRITICAL
  2. No adjustment

    The CRITICAL base band remains final because no separate cap or systemic uplift applies. Direct flash modification can alter ventilator therapy or disable life-support behavior, creating a credible risk of serious patient injury.

  3. Final bandCRITICAL
Inspect every metric judgment

Decision rationale

How this band was reached

Reach and effort
ReachabilityRE 1
Per-device physical access

Internal JTAG header requires opening the device, board-level access, per-device.

Source-backedNVD
Execution complexityEC 3
Reproducible exploit workflow

Changing therapy behavior requires more than dumping flash: the attacker must prepare and install a deliberate firmware or control modification.

Source-backedNVD
ExposureEX 1
Access position limits exposure

The technique is easier to perform than it is to position against a target, so access is the constraining factor.

Model inference
Consequence
Physical / safetyPH 4
Severe therapy or actuation consequence

Direct flash modification can alter ventilator therapy or disable life-support behavior, creating a credible risk of serious patient injury.

Model inference
Data / perceptionDP 3
Sensitive device or personal data

Modified device code can expose ventilator settings and other sensitive operational state.

Model inference
AuthorityAT 3
Administrative or command authority

Flash modification provides device-command and firmware authority, but it does not expose a vendor signing key.

Model inference
Scale and recovery
ChainabilityCH 3
Reusable multi-stage bridge

Chains physical access into safety actuation across boundaries.

Model inference
Reuse scaleSR 4
Shared fleet-wide primitive

The technique and any extracted secrets are reusable across the model.

Operational assumption
Execution scaleSX 1
One device at a time

Strictly per-device physical access.

Operational assumption
Recovery burdenOR 4
Fleet action or replacement

Persistent and hard to detect, needs field service.

Operational assumption
Confidence and status
Evidence strengthEV 2
Documented in a public report

NVD reports the condition.

Source-backedNVD
LivenessLS Patch available
A patch is available

A vendor fix is available.

Source-backedNVD
Technical vector
Compact machine notationCPATH:1.0/TT:DEVICE_CONTROL_SAFETY/RE:1/EC:3/EX:1/PH:4/DP:3/AT:3/CH:3/SR:4/SX:1/OR:4/EV:2/LS:PATCH_AVAILABLERead the scoring method →

Authority · Co-dominant path

Firmware trust root

Read and write access to internal flash lets an attacker replace trusted device code and take control beneath the application layer.

CRITICAL
  1. accessSource-backed

    Per-device physical access

    An attacker must open each ventilator and attach to its internal JTAG header; the interface is neither remotely nor wirelessly reachable.

    Evidence NVD

  2. boundaryModel inference

    Cross-domain authority chain

    Physical JTAG access crosses into firmware authority and then device control; extracted knowledge or secrets can be reused across units.

    Evidence Derived from the cited facts.

  3. capabilityModel inference

    Firmware or trust-root authority

    Read and write access to internal flash lets an attacker replace trusted device code and take control beneath the application layer.

    Evidence Derived from the cited facts.

  4. consequenceModel inference

    Firmware trust root

    Read and write access to internal flash lets an attacker replace trusted device code and take control beneath the application layer.

    Evidence Derived from the cited facts.

  5. recoveryOperational assumption

    Fleet action or replacement

    Persistent, hard to detect, requires field service to recover.

    Evidence Required deployment or recovery condition.

Decision trail

How the final band follows

  1. Base bandCRITICAL
  2. No adjustment

    The CRITICAL base band remains final because no separate cap or systemic uplift applies. Read and write access to internal flash lets an attacker replace trusted device code and take control beneath the application layer.

  3. Final bandCRITICAL
Inspect every metric judgment

Decision rationale

How this band was reached

Reach and effort
ReachabilityRE 1
Per-device physical access

An attacker must open each ventilator and attach to its internal JTAG header; the interface is neither remotely nor wirelessly reachable.

Source-backedNVD
Execution complexityEC 4
Straightforward operation

Once a JTAG connection is established, one hardware-debugging tool can read or write the flash.

Source-backedNVD
ExposureEX 1
Access position limits exposure

The technique is easier to perform than it is to position against a target, so access is the constraining factor.

Model inference
Consequence
Physical / safetyPH 3
Credible safety consequence

Firmware compromise can alter therapy-control behavior and reduce the ventilator’s safety margin.

Model inference
Data / perceptionDP 3
Sensitive device or personal data

Flash contents can expose proprietary firmware and embedded cryptographic secrets.

Model inference
AuthorityAT 4
Firmware or trust-root authority

Read and write access to internal flash lets an attacker replace trusted device code and take control beneath the application layer.

Model inference
Scale and recovery
ChainabilityCH 4
Cross-domain authority chain

Physical JTAG access crosses into firmware authority and then device control; extracted knowledge or secrets can be reused across units.

Model inference
Reuse scaleSR 4
Shared fleet-wide primitive

Extracted firmware and embedded keys can be reused across devices in the same product line.

Operational assumption
Execution scaleSX 1
One device at a time

Each device must be physically opened.

Operational assumption
Recovery burdenOR 4
Fleet action or replacement

Persistent, hard to detect, requires field service to recover.

Operational assumption
Confidence and status
Evidence strengthEV 2
Documented in a public report

NVD reports the condition.

Source-backedNVD
LivenessLS Patch available
A patch is available

A vendor fix is available.

Source-backedNVD
Technical vector
Compact machine notationCPATH:1.0/TT:FIRMWARE_TRUST_ROOT/RE:1/EC:4/EX:1/PH:3/DP:3/AT:4/CH:4/SR:4/SX:1/OR:4/EV:2/LS:PATCH_AVAILABLERead the scoring method →

Triage implication

Prioritize the safety transition.

Set remediation urgency from the deployment-specific transition between digital control or perception and physical action.

Evidence ledger

Public sources used by this record.

Published baseline

Why this band differs from CVSS

RelationshipDifferent consequence axis
Baseline confidencehigh
Scored2026-06-03
v3.1 · 9.3 CRITICALBaxter/Product Security via NVD
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H

Related paths

Compare trust boundaries across products.

Cite this entryCFSE Consequence Paths Registry 1.0, CPATH-2026-0004 (“Unprotected JTAG flash read/write access”), paths.cfse.ai/CPATH-2026-0004 (published 2026-06-03).