Skip to main content

U-Boot CVE-2025-70291

MEDIUM
2026-08-28
View

Attack ChainAIDerived

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

  1. Access
    Access U-Boot serial or network console
  2. Delivery
    Invoke mv command with overflow-length path arguments
  3. Exploit
    Integer overflow in string length addition
  4. Execution
    Heap under-allocation returned by allocator
  5. Persist
    Unchecked strcpy overflows heap buffer
  6. Impact
    Arbitrary code execution in pre-boot environment

Vulnerability Assessment

Exploitation Conditions

Exploitation requires that the attacker already holds an interactive U-Boot shell session - do_mv is a shell-layer command, not reachable from a running OS or over the network without first having console access during the boot window. The U-Boot prompt is typically gated by physical serial console (UART/JTAG) or, in network-boot configurations, accessible over the local network only during the pre-OS boot stage. The vulnerability is not exploitable from a running operating system instance. No specific filesystem image or mounted volume is required; the overflow occurs in path string arithmetic within do_mv itself before any filesystem I/O. No user interaction beyond the attacker's own shell input is required. The limiting factors are: physical or boot-time console access as a hard prerequisite, U-Boot version ≤ v2026.01-rc4 with filesystem command support compiled in, and no boot-prompt password or autoboot protection configured on the target device.

Impact

No CVSS vector or EPSS score was provided; metrics below are independently assessed. The most significant real-world constraint is the prerequisite of U-Boot shell access, which typically requires physical serial console (UART), JTAG access, or - in network-boot deployments - access during the boot window before the OS loads. This substantially narrows the realistic attacker population relative to what a raw severity score might suggest. The vulnerability is not in CISA KEV and no POC has been identified, consistent with the relatively niche access requirement. However, for threat models involving physical access, supply-chain attacks on embedded firmware, or devices with exposed U-Boot network interfaces (TFTP, NFS), the impact is severe: arbitrary code execution in the pre-boot environment bypasses all OS security controls, secure boot attestation can be undermined, and persistent implantation is feasible. High-sensitivity embedded contexts - medical devices, automotive ECUs, industrial controllers, network appliances - warrant priority patching. General enterprise environments are largely unaffected unless managing embedded infrastructure.

Exploit ScenarioDerived

An attacker with access to the U-Boot interactive shell - obtained, for example, via an exposed UART serial port on an IoT gateway or an unsecured network-boot endpoint during the boot window - executes the mv command with source and destination path arguments whose combined lengths are carefully sized to wrap a signed integer. The resulting undersized heap allocation is overflowed by the subsequent strcpy() call, corrupting heap metadata or adjacent allocator structures. With sufficient control over the overflow, the attacker achieves arbitrary code execution in the pre-boot context, enabling firmware backdooring or bypassing secure boot verification before the target OS loads.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
No patch listed yet

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

Alert me

AnalysisAIv1 – Aug 28, 2026

Heap buffer overflow in U-Boot's do_mv shell command (fs/fs.c) affects all versions through v2026.01-rc4 and allows an attacker with U-Boot shell access to corrupt pre-boot heap memory and potentially execute arbitrary code before any OS-level security controls activate. The flaw is rooted in missing bounds checks during string length addition when constructing move-command path arguments: integer overflow causes a heap under-allocation, which is then overflowed by an unchecked strcpy() call. No public exploit code or active exploitation has been identified, and the upstream fix is confirmed in v2026.04-rc1.

RemediationAI

The primary remediation is upgrading to U-Boot v2026.04-rc1 or any subsequent release containing upstream commit adccdb2, available at https://source.denx.de/u-boot/u-boot/-/commit/adccdb2. The patch introduces safe string-length addition using compiler intrinsics to detect integer overflow before the heap allocation occurs. For deployments where an immediate firmware upgrade is not operationally feasible, the following compensating controls should be applied in combination: enable U-Boot's boot password or autoboot stop-string protection (CONFIG_AUTOBOOT_STOP_STR, CONFIG_AUTOBOOT_KEYED_BOOTDELAY) to prevent unauthenticated shell access; physically secure serial console and JTAG ports on exposed devices; and disable network-accessible boot services (TFTP, NFS boot) if not operationally required. Note that disabling the mv command at build time (by not compiling CMD_FS_GENERIC or the relevant command) eliminates the specific attack surface but requires a firmware rebuild and may affect operational tooling. These mitigations depend on deployment-specific configuration and do not address the underlying vulnerability.

Affected ProductsAI

Denx U-Boot all versions up to and including v2026.01-rc4 are confirmed affected across all supported hardware architectures and platform targets where the filesystem command set (including do_mv in fs/fs.c) is compiled in. The advisory imposes no restriction to specific chipsets or board configurations. The fixed release is v2026.04-rc1, incorporating upstream commit adccdb2. No CPE strings were included in the source data; the advisory references https://source.denx.de/u-boot/u-boot/-/commit/adccdb2 as the authoritative fix reference.

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

U-Boot (Das U-Boot) is the dominant open-source bootloader for embedded Linux platforms, IoT devices, single-board computers, and ARM-based systems. CVE-2025-70291 is located in the fs/fs.c file's do_mv function, which implements the interactive U-Boot shell command for moving or renaming files across supported filesystems. The root cause is an integer overflow during the arithmetic addition of source and destination path string lengths, consistent with CWE-190 (Integer Overflow) leading to CWE-122 (Heap-based Buffer Overflow). When the summed length wraps around the integer type's maximum, the resulting value is passed to the heap allocator, which provisions an undersized buffer. The subsequent strcpy() then writes beyond that buffer boundary, corrupting adjacent heap memory. The sibling CVEs in this advisory family (CVE-2025-70290, -70292, -70293) follow the same pattern across ZFS, SquashFS, and EXT4 parsing components, and the upstream fix family applies compiler intrinsics such as __builtin_add_overflow or __builtin_mul_overflow to detect overflow before allocation occurs, as confirmed by the linked EXT4 diff.

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

vuln.today AI 8.8 HIGH

Local vector reflects mandatory U-Boot shell prerequisite; PR:L for shell access; scope change because pre-boot ACE undermines the loaded OS.

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

Description PRE-NVD

Disclosed via oss-security. NVD scoring and full description are pending.

Executive ViewAI

Why It Matters

CVE-2025-70291 is a critical heap buffer overflow in U-Boot's move command (all versions through v2026.01-rc4) that enables arbitrary code execution during the pre-boot phase, bypassing all OS-level security controls. No public exploit identified at time of analysis, but the vulnerability's position in the boot chain means organizations using affected U-Boot versions face potential persistent compromise affecting embedded systems, IoT deployments, and server boot environments.

Business Impact: Severe
Compensating Controls

No vendor-released patch identified at time of analysis. Immediate interim mitigations include disabling interactive U-Boot shell access, enforcing secure-boot and signed-boot configurations, implementing strict physical and administrative access controls on boot environments, restricting shell access to U-Boot components, and enabling boot-stage audit logging where supported by hardware.

Threat Intelligence Overview

Prevalence
High
dominant open-source bootloader across embedded Linux, IoT, and ARM platforms
Data Quality
1 sources
Confidence: Low
CVE.org Vendor

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 MEDIUM
CISA KEV No
Public POC No
EPSS N/A
Patch available No
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.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.

Attack Technique

A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.

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

Vendor StatusVendor

SUSE

Severity: Important
Product Status
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise Micro 5.3 Affected
SUSE Linux Enterprise Micro 5.4 Affected
SUSE Linux Enterprise Micro 5.5 Affected
SUSE Linux Enterprise Module for Basesystem 15 SP7 Affected

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