Description
In the Linux kernel, the following vulnerability has been resolved:

bootconfig: Fix integer overflow in initrd size check

Sashiko reported that in get_boot_config_from_initrd(), a crafted initrd
with a huge bootconfig size (such as 0xFFFFFFFF) can cause the pointer
arithmetic:

data = ((void *)hdr) - size;

to wrap around on 32-bit systems (or when pointer subtraction overflows).
Because data wraps around, the subsequent bounds check:

if ((unsigned long)data < initrd_start)

evaluates to false, bypassing the check. The kernel then calls
xbc_calc_checksum(data, size), which attempts to read 4GB of memory,
hitting unmapped pages and triggering a fatal kernel page fault during
early boot. Furthermore, on 64-bit systems with an initrd > 4.29 GB, an
unbounded 32-bit size can similarly bypass the initrd_start check.

Fix this by:
1. Ensuring the initrd is at least large enough to contain the bootconfig
footer and verifying hdr is within the initrd bounds.
2. Checking that size does not exceed XBC_DATA_MAX and does not exceed
the available space between initrd_start and hdr before performing
pointer subtraction.
Published: 2026-09-25
Score: 5.5 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Kernel Crash during Early Boot (Denial of Service)
Action: Immediate Patch
AI Analysis

Impact

The flaw involves an integer overflow in the Linux kernel’s boot configuration parsing function. An attacker can craft an initrd image with an excessively large bootconfig section, causing pointer arithmetic to wrap around. This bypasses bounds checks and forces the kernel to calculate a checksum over an unrealistic >4GB memory region, leading to unmapped page access and a fatal page fault. The result is a kernel crash during the boot process, effectively denying service to the affected system.

Affected Systems

Any Linux kernel device that loads an initrd during boot is at risk until the upstream patch is applied. The specific vendor/product is Linux kernel, and no particular release or version was listed in the advisory. All builds that use the get_boot_config_from_initrd() code are potentially affected.

Risk and Exploitability

The CVSS score of 5.5 indicates moderate severity, and the EPSS score of less than 1% suggests a low probability of exploitation. The vulnerability can be exploited by an entity able to supply a malicious initrd to the target system—this could occur during system installation or by an attacker who can replace the initrd on a pre‑boot environment. The impact is a denial of service through a kernel crash during early boot. The advisory does not claim privilege escalation. The absence from the CISA KEV catalog indicates the flaw has not yet been reported in the wild, yet the serious nature of an early‑boot crash warrants attention.

Generated by OpenCVE AI on October 1, 2026 at 08:47 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Apply the Linux kernel patch that implements the integer‑overflow fix in get_boot_config_from_initrd(), mitigating CWE‑125 related integer overflow.
  • Verify that any custom initrd images used during boot do not exceed the kernel’s XBC_DATA_MAX and that the bootconfig footer lies within the initrd bounds—use tools or scripts to validate initrd size before deployment to prevent integer overflow (CWE‑125).
  • After applying the patch or validating initrd sizes, reboot to ensure the system starts normally and monitor dmesg for any kernel panics related to initrd parsing.

Generated by OpenCVE AI on October 1, 2026 at 08:47 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Sat, 03 Oct 2026 11:15:00 +0000


Wed, 30 Sep 2026 00:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-125
References
Metrics threat_severity

None

cvssV3_1

{'score': 5.5, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H'}

threat_severity

Low


Fri, 25 Sep 2026 10:30:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: bootconfig: Fix integer overflow in initrd size check Sashiko reported that in get_boot_config_from_initrd(), a crafted initrd with a huge bootconfig size (such as 0xFFFFFFFF) can cause the pointer arithmetic: data = ((void *)hdr) - size; to wrap around on 32-bit systems (or when pointer subtraction overflows). Because data wraps around, the subsequent bounds check: if ((unsigned long)data < initrd_start) evaluates to false, bypassing the check. The kernel then calls xbc_calc_checksum(data, size), which attempts to read 4GB of memory, hitting unmapped pages and triggering a fatal kernel page fault during early boot. Furthermore, on 64-bit systems with an initrd > 4.29 GB, an unbounded 32-bit size can similarly bypass the initrd_start check. Fix this by: 1. Ensuring the initrd is at least large enough to contain the bootconfig footer and verifying hdr is within the initrd bounds. 2. Checking that size does not exceed XBC_DATA_MAX and does not exceed the available space between initrd_start and hdr before performing pointer subtraction.
Title bootconfig: Fix integer overflow in initrd size check
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-10-03T11:00:26.189Z

Reserved: 2026-09-25T10:18:58.200Z

Link: CVE-2026-97906

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-09-25T11:17:17.517

Modified: 2026-10-03T11:18:08.970

Link: CVE-2026-97906

cve-icon Redhat

Severity : Low

Publid Date: 2026-09-25T00:00:00Z

Links: CVE-2026-97906 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-10-01T09:00:05Z

Weaknesses