Skip to main content

U-Boot EUVDEUVD-2026-89435

| CVE-2026-74222 HIGH
Use After Free (CWE-416)
2026-09-29 VulnCheck GHSA-fm4f-g9jh-3qfq
8.8
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Attacker controls/MITMs HTTP server device fetches from
  2. Delivery
    Device performs lwIP wget during netboot
  3. Exploit
    Send response that forces data-storage failure
  4. Execution
    Callback frees PCB, returns ERR_BUF not ERR_ABRT
  5. Persist
    TCP input path dereferences freed PCB
  6. Impact
    Bootloader crashes, boot fails (DoS)

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Memory lifecycle management
MITRE ATT&CK

2 techniques across 2 tactics: Execution, Privilege Escalation

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires that the U-Boot device is actively performing an HTTP download through the lwIP wget implementation (typically during netboot/provisioning) - the bug lives in a receive callback that only runs during an in-progress transfer, so there is no persistently listening service. The attacker must control the HTTP server the device fetches from, or MITM that connection, and must drive the 'HTTP data storage fails' path (e.g., a response the client cannot store) to reach the mis-returned ERR_BUF and the subsequent use of the freed PCB. Limiting factors: requires the lwIP-based wget network stack to be built in and in use, a netboot/HTTP-fetch operation in progress, and attacker control over the served content or path; impact is limited to a bootloader crash (failed/interrupted boot), not code execution or data exposure.

Impact

The CVSS 4.0 vector (AV:N/AC:L/PR:N/UI:N, VA:H, VI:L, VC:N) scores 8.8 and correctly frames this as an availability-dominant memory-corruption bug: a use-after-free in U-Boot's lwIP wget receive callback that crashes the bootloader. The realistic risk, however, is narrower than the raw score suggests. There is no CISA KEV listing, no public exploit code, and no EPSS signal was provided - so exploitation status is 'no public exploit identified at time of analysis.' Critically, the network vector is only reachable while the device is actively performing an HTTP download via lwIP wget (i.e., during netboot/provisioning), and the freed-PCB path is only entered when 'HTTP data storage fails' - so the attacker must be the HTTP server the device is fetching from, or a MITM on that path, and must induce the storage-failure condition. This is a client-side, transient-window flaw rather than an always-listening remote service, which meaningfully reduces exposure despite the AV:N/PR:N metrics. The impact is a bootloader crash (denial of service / failed boot), not code execution or data disclosure, so the VI:L integrity metric is generous - this is best characterized as availability-only. Overall: a legitimate, patch-worthy defect with a clean vendor fix, but a targeted/opportunistic risk tied to netboot environments rather than a broadly automatable internet-facing threat.

Exploit ScenarioDerived

A device running U-Boot before 2026.10-rc5 initiates an HTTP download over lwIP wget during netboot. An attacker controlling the HTTP server (or positioned as a MITM) sends a response crafted so that the client's data-storage step fails; the httpc_recv_cb() callback then frees the connection PCB but returns ERR_BUF instead of ERR_ABRT, and lwIP's TCP input path dereferences the freed PCB, crashing the bootloader. No public exploit code is known, and the attack window is limited to the moment the device is fetching over HTTP.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.3% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Sep 29, 2026

A use-after-free in U-Boot's lwIP-based wget HTTP client lets an attacker who controls (or MITMs) the server a device downloads from crash the bootloader during a netboot/provisioning fetch, interrupting boot. The bug sits in the httpc_recv_cb() receive callback: when HTTP data storage fails, it frees the connection's protocol control block but returns ERR_BUF instead of ERR_ABRT, so the TCP input path continues on released memory. All U-Boot versions before 2026.10-rc5 are affected; the CVSS 4.0 vector scores 8.8 (AV:N/AC:L/PR:N/UI:N, VA:H, VI:L) and our independent CVSS 3.1 assessment rates it 7.5 as an availability-dominant issue - no public exploit identified at time of analysis, and impact is limited to a bootloader crash rather than code execution or data exposure.

RemediationAI

Upgrade to U-Boot 2026.10-rc5 or later, which contains the fix; if you build from source you can instead cherry-pick upstream commit 2d94618a58aeb7630f18eee33419ce48d0fd3616, a one-line change returning ERR_ABRT instead of ERR_BUF in httpc_recv_cb() (https://github.com/u-boot/u-boot/commit/2d94618a58aeb7630f18eee33419ce48d0fd3616). Because exploitation requires an in-progress HTTP fetch from a server the attacker controls or MITMs, effective compensating controls are: stop using the lwIP HTTP client for unattended netbooting and switch to TFTP or local/removable media boot (trade-off: loses HTTP-over-proxy/CDN flexibility and any HTTP-specific auth or TLS features your provisioning relies on); if HTTP fetch must stay, restrict the configured download URL to a fixed, trusted origin reachable only over a hardened network segment, since there is no persistent listening service to firewall on the device itself, so the exposure boundary is the fetch path and its upstream server. Builds that do not need HTTP downloads can drop the lwIP wget client from the configuration entirely, removing the vulnerable callback; the trade-off is loss of HTTP-based image retrieval in the field. Note the failure mode is a crash/interrupted boot, not code execution, so recovery is typically a reboot with a corrected fetch source, but repeated crashes can brick unattended provisioning flows until firmware is updated.

Affected VersionsENISA

U-Boot 0 <2026.10-rc5

Affected Packages

euvd u_boot fix: 2026.10-rc5

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

U-Boot bundles the lwIP embedded TCP/IP stack for its HTTP client (net/lwip/wget.c), built on lwIP's altcp (abstracted connection) API. Callbacks in that API return an err_t status that tells the stack what happened to the connection: ERR_ABRT signals that the callback has aborted the connection and, critically, that the pcb has already been freed, so the caller must not touch it again; ERR_BUF merely reports a buffering failure while the connection is still presumed live. In httpc_recv_cb(), the path taken when received HTTP data cannot be stored frees the connection pcb but returns ERR_BUF. The TCP input path consequently treats the freed control block as valid and dereferences released memory, a textbook CWE-416 use-after-free manifesting as memory corruption and a bootloader crash. The upstream patch is a minimal one-line correction - ERR_BUF changed to ERR_ABRT at net/lwip/wget.c - confirming the root cause is erroneous callback return semantics rather than a missing free or refcount error. The vulnerable code is present in the v2026.07 tree (wget.c line ~194) and the CPE cpe:2.3:a:u-boot:u-boot:*:*:*:*:*:*:*:* reflects that the flaw is version-wide rather than tied to a single board or configuration, though it is only reachable when the lwIP HTTP client is compiled in and actively downloading.

Know when U Boot gets its next vulnerability

  • 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.8 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:H/SC:N/SI:N/SA:N
vuln.today AI 7.5 HIGH

Network-delivered via the served HTTP response with no auth (PR:N); impact is a bootloader crash only, so A:H with C:N/I:N; requirement to catch an active wget is a state condition, not raised AC here.

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

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

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

DescriptionCVE.org

U-Boot before 2026.10-rc5 contains a use-after-free vulnerability in the httpc_recv_cb() function within the lwIP wget implementation. When HTTP data storage fails, the callback frees the connection PCB but returns ERR_BUF instead of ERR_ABRT, causing the TCP input path to access released memory and crash the bootloader.

Executive ViewAI

Why It Matters

U-Boot bootloaders used for netboot and provisioning can be crashed by an unauthenticated attacker who controls or man-in-the-middle's the HTTP download source, preventing affected devices from completing boot and disrupting deployment or recovery workflows. This is an availability-only bootloader failure with no code execution or data exposure, and no public exploit identified at time of analysis; a vendor patch is available as U-Boot 2026.10-rc5 or later. Leadership should prioritize remediation for environments that rely on network boot, because repeated provisioning failures can delay device rollouts and field recovery even without active exploitation.

Business Impact: Medium
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.3%
Top 79% exploitable
Prevalence
Ubiquitous
U-Boot is the de facto bootloader across embedded/IoT and many SoC platforms
Data Quality
5 sources
Confidence: Medium
EUVD NVD CVE.org EPSS Vulnrichment Vendor GitHub

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 0.3%
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
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
Yes
Human Impact
Medium
Technical Impact
Partial

Priority Score

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

Attack Technique

Use-after-free vulnerabilities occur when a program continues to access memory through a pointer after that memory has been deallocated.

Memory corruption occurs when a program writes data beyond the boundaries of allocated memory regions or accesses memory in unintended ways, violating the integrity of the process's address space.

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

More in U Boot

View all
CVE-2022-34835 CRITICAL POC
9.8 Jun 30

In Das U-Boot through 2022.07-rc5, an integer signedness error and resultant stack-based buffer overflow in the "i2c md"

CVE-2022-30790 HIGH POC
7.8 Jun 08

Das U-Boot 2022.01 has a Buffer Overflow, a different issue than CVE-2022-30552. Rated high severity (CVSS 7.8), this vu

CVE-2020-10648 HIGH POC
7.8 Mar 19

Das U-Boot through 2020.01 allows attackers to bypass verified boot restrictions and subsequently boot arbitrary images

CVE-2022-30767 CRITICAL POC
9.8 May 16

nfs_lookup_reply in net/nfs.c in Das U-Boot through 2022.04 (and through 2022.07-rc2) has an unbounded memcpy with a fai

CVE-2018-18439 CRITICAL POC
9.8 Nov 20

DENX U-Boot through 2018.09-rc1 has a remotely exploitable buffer overflow via a malicious TFTP server because TFTP traf

CVE-2022-2347 HIGH POC
7.7 Sep 23

There exists an unchecked length field in UBoot. Rated high severity (CVSS 7.7), this vulnerability is no authentication

CVE-2019-14199 CRITICAL
9.8 Jul 31

An issue was discovered in Das U-Boot through 2019.07. Rated critical severity (CVSS 9.8), this vulnerability is remotel

CVE-2019-14193 CRITICAL
9.8 Jul 31

An issue was discovered in Das U-Boot through 2019.07. Rated critical severity (CVSS 9.8), this vulnerability is remotel

CVE-2019-14203 CRITICAL
9.8 Jul 31

An issue was discovered in Das U-Boot through 2019.07. Rated critical severity (CVSS 9.8), this vulnerability is remotel

CVE-2019-14202 CRITICAL
9.8 Jul 31

An issue was discovered in Das U-Boot through 2019.07. Rated critical severity (CVSS 9.8), this vulnerability is remotel

CVE-2019-14201 CRITICAL
9.8 Jul 31

An issue was discovered in Das U-Boot through 2019.07. Rated critical severity (CVSS 9.8), this vulnerability is remotel

CVE-2019-14200 CRITICAL
9.8 Jul 31

An issue was discovered in Das U-Boot through 2019.07. Rated critical severity (CVSS 9.8), this vulnerability is remotel

Vendor StatusVendor

SUSE

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

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