Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAccess U-Boot serial or network console
-
DeliveryInvoke mv command with overflow-length path arguments
-
ExploitInteger overflow in string length addition
-
ExecutionHeap under-allocation returned by allocator
-
PersistUnchecked strcpy overflows heap buffer
-
ImpactArbitrary 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. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – 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
Local vector reflects mandatory U-Boot shell prerequisite; PR:L for shell access; scope change because pre-boot ACE undermines the loaded OS.
AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Description PRE-NVD
Executive ViewAI
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.
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
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
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 |
| SUSE Linux Enterprise Server 15 SP7 | Affected |
| SUSE Linux Enterprise Server 16.0 | Affected |
| SUSE Linux Enterprise Server 16.1 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP7 | Affected |
| SUSE Linux Micro 6.0 | Affected |
| SUSE Linux Micro 6.1 | Affected |
| SUSE Linux Micro 6.2 | Affected |
| SUSE Linux Micro Extras 6.0 | Affected |
| openSUSE Leap 16.0 | Affected |
| SUSE Linux Enterprise High Performance Computing 12 SP5 | Affected |
| SUSE Linux Enterprise High Performance Computing 12 SP5 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4-LTSS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5-LTSS | Affected |
| SUSE Linux Enterprise Server 12 SP5 | Affected |
| SUSE Linux Enterprise Server 12 SP5 | Affected |
| SUSE Linux Enterprise Server 12 SP5-LTSS | Affected |
| SUSE Linux Enterprise Server 12 SP5-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP4-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP5-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP6-LTSS | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP4 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP5 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP6 | Affected |
| SUSE CaaS Platform 4.0 | Affected |
| SUSE Enterprise Storage 6 | Affected |
| SUSE Enterprise Storage 6 | Affected |
| SUSE Linux Enterprise Desktop 15 SP1 | Affected |
| SUSE Linux Enterprise Desktop 15 SP1 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP1 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP1 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP1-ESPOS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP1-ESPOS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP1-LTSS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP1-LTSS | Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP1 | Affected |
| SUSE Linux Enterprise Module for Basesystem 15 SP1 | Affected |
| SUSE Linux Enterprise Server 15 SP1 | Affected |
| SUSE Linux Enterprise Server 15 SP1 | Affected |
| SUSE Linux Enterprise Server 15 SP1-BCL | Affected |
| SUSE Linux Enterprise Server 15 SP1-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP1-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP2-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP3-LTSS | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP1 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP1 | Affected |
| SUSE Manager Proxy 4.0 | Affected |
| SUSE Manager Proxy 4.0 | Affected |
| SUSE Manager Retail Branch Server 4.0 | Affected |
| SUSE Manager Retail Branch Server 4.0 | Affected |
| SUSE Manager Server 4.0 | Affected |
| SUSE Manager Server 4.0 | Affected |
CVE.org
GitHub PoC
Exploit-DB