Cloudanix VulnDB

CVE-2022-28734

High · 7.0

CVSS

7.0

EPSS

1.1%

Published

Jul 20, 2023

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A problem in the software that starts computers over a network could let attackers interfere with the startup process, potentially causing systems to fail or be taken over before they fully boot.

Exploitation
Remote Unauthenticated
Attacker needs
None
Complexity
High
Impact
Denial Of Service
Component
Application
Class
Memory Corruption
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

Out-of-bounds write in GRUB2 HTTP handling caused by off-by-one buffer pointer advancement during split header processing, resulting in a NULL byte written past the allocated buffer and potential corruption of internal memory metadata structures.

Why it matters to the business

Remote attackers could corrupt bootloader memory during network boot operations, risking boot failures, early-stage code execution, or system integrity compromise before the operating system loads; low EPSS and absence from KEV indicate limited observed exploitation but still requires attention for environments relying on GRUB2 network capabilities.

How an attack unfolds

An attacker positioned to serve HTTP responses to a GRUB2 client sends crafted packets containing split HTTP headers; the flawed pointer arithmetic writes a NULL byte outside the buffer, corrupting memory metadata and enabling further attacker-controlled memory manipulation leading to code execution or denial of service.

How to fix it

Upgrade GRUB2 to a patched release that corrects the HTTP header buffer handling logic; apply vendor updates for affected products such as NetApp Active IQ Unified Manager once available; consider network segmentation or disabling HTTP boot sources where feasible.

How to confirm the fix worked

Verify GRUB2 version against vendor advisories, inspect HTTP header parsing routines in source for corrected buffer pointer arithmetic, and test network boot scenarios with malformed split-header responses in a lab environment.

Typical attack path

  1. Position to intercept or control HTTP responses delivered to GRUB2 network boot client
  2. Transmit HTTP responses with deliberately split headers to trigger pointer miscalculation
  3. Cause out-of-bounds NULL write and subsequent memory metadata corruption
  4. Leverage corrupted state for code execution or boot process disruption

How to detect it

Examine network traffic logs for unusual HTTP responses during boot phases, review any available GRUB2 debug or memory logs for signs of buffer overruns, and correlate with boot failures or unexpected behavior on systems using GRUB2 HTTP functionality.

What your security team should do

  • Prioritize patching GRUB2 in all network-boot or PXE environments
  • Restrict HTTP boot sources to trusted internal servers only
  • Monitor bootloader update processes and maintain offline copies of known-good GRUB2 binaries
  • Review downstream dependents and ecosystem usage of GRUB2 for broader exposure assessment

The record

Out-of-bounds write when handling split HTTP headers; When handling split HTTP headers, GRUB2 HTTP code accidentally moves its internal data buffer point by one position. This can lead to a out-of-bound write further when parsing the HTTP request, writing a NULL byte past the buffer. It's conceivable that an attacker controlled set of packets can lead to corruption of the GRUB2's internal memory metadata.

Affected packages

Ecosystem Package Introduced Fixed
AlmaLinux:8 grub2-common 0 1:2.02-123.el8_6.8.alma
AlmaLinux:8 grub2-efi-aa64 0 1:2.02-123.el8_6.8.alma
AlmaLinux:8 grub2-efi-aa64-cdboot 0 1:2.02-123.el8_6.8.alma
AlmaLinux:8 grub2-efi-aa64-modules 0 1:2.02-123.el8_6.8.alma
AlmaLinux:8 grub2-efi-ia32 0 1:2.02-123.el8_6.8.alma
AlmaLinux:8 grub2-efi-ia32-cdboot 0 1:2.02-123.el8_6.8.alma
AlmaLinux:8 grub2-efi-ia32-modules 0 1:2.02-123.el8_6.8.alma
AlmaLinux:8 grub2-efi-x64 0 1:2.02-123.el8_6.8.alma
AlmaLinux:8 grub2-efi-x64-cdboot 0 1:2.02-123.el8_6.8.alma
AlmaLinux:8 grub2-efi-x64-modules 0 1:2.02-123.el8_6.8.alma
AlmaLinux:8 grub2-pc 0 1:2.02-123.el8_6.8.alma
AlmaLinux:8 grub2-pc-modules 0 1:2.02-123.el8_6.8.alma
AlmaLinux:8 grub2-ppc64le-modules 0 1:2.02-123.el8_6.8.alma
AlmaLinux:8 grub2-tools 0 1:2.02-123.el8_6.8.alma
AlmaLinux:8 grub2-tools-efi 0 1:2.02-123.el8_6.8.alma
AlmaLinux:8 grub2-tools-extra 0 1:2.02-123.el8_6.8.alma
AlmaLinux:8 grub2-tools-minimal 0 1:2.02-123.el8_6.8.alma
AlmaLinux:8 shim-aa64 0 15.6-1.el8.alma
AlmaLinux:8 shim-ia32 0 15.6-1.el8.alma
AlmaLinux:8 shim-unsigned-x64 0 15.6-1.el8.alma
AlmaLinux:8 shim-x64 0 15.6-1.el8.alma
AlmaLinux:9 grub2-common 0 1:2.06-27.el9_0.7.alma
AlmaLinux:9 grub2-efi-aa64 0 1:2.06-27.el9_0.7.alma
AlmaLinux:9 grub2-efi-aa64-cdboot 0 1:2.06-27.el9_0.7.alma
AlmaLinux:9 grub2-efi-aa64-modules 0 1:2.06-27.el9_0.7.alma
AlmaLinux:9 grub2-efi-x64 0 1:2.06-27.el9_0.7.alma
AlmaLinux:9 grub2-efi-x64-cdboot 0 1:2.06-27.el9_0.7.alma
AlmaLinux:9 grub2-efi-x64-modules 0 1:2.06-27.el9_0.7.alma
AlmaLinux:9 grub2-pc 0 1:2.06-27.el9_0.7.alma
AlmaLinux:9 grub2-pc-modules 0 1:2.06-27.el9_0.7.alma
AlmaLinux:9 grub2-ppc64le 0 1:2.06-27.el9_0.7.alma
AlmaLinux:9 grub2-ppc64le-modules 0 1:2.06-27.el9_0.7.alma
AlmaLinux:9 grub2-tools 0 1:2.06-27.el9_0.7.alma
AlmaLinux:9 grub2-tools-efi 0 1:2.06-27.el9_0.7.alma
AlmaLinux:9 grub2-tools-extra 0 1:2.06-27.el9_0.7.alma
AlmaLinux:9 grub2-tools-minimal 0 1:2.06-27.el9_0.7.alma
AlmaLinux:9 shim-aa64 0 15.6-1.el9.alma
AlmaLinux:9 shim-unsigned-x64 0 15.6-1.el9.alma
AlmaLinux:9 shim-x64 0 15.6-1.el9.alma
Debian:11 grub2 0 2.06-3~deb11u1
Debian:12 grub2 0 2.06-3
Debian:13 grub2 0 2.06-3
Red Hat:enterprise_linux:8::baseos grub2 0 1:2.02-123.el8_6.8
Red Hat:enterprise_linux:8::baseos grub2-common 0 1:2.02-123.el8_6.8
Red Hat:enterprise_linux:8::baseos grub2-debuginfo 0 1:2.02-123.el8_6.8
Red Hat:enterprise_linux:8::baseos grub2-debugsource 0 1:2.02-123.el8_6.8
Red Hat:enterprise_linux:8::baseos grub2-efi-aa64 0 1:2.02-123.el8_6.8
Red Hat:enterprise_linux:8::baseos grub2-efi-aa64-cdboot 0 1:2.02-123.el8_6.8
Red Hat:enterprise_linux:8::baseos grub2-efi-aa64-modules 0 1:2.02-123.el8_6.8
Red Hat:enterprise_linux:8::baseos grub2-efi-ia32 0 1:2.02-123.el8_6.8
Red Hat:enterprise_linux:8::baseos grub2-efi-ia32-cdboot 0 1:2.02-123.el8_6.8
Red Hat:enterprise_linux:8::baseos grub2-efi-ia32-modules 0 1:2.02-123.el8_6.8
Red Hat:enterprise_linux:8::baseos grub2-efi-x64 0 1:2.02-123.el8_6.8
Red Hat:enterprise_linux:8::baseos grub2-efi-x64-cdboot 0 1:2.02-123.el8_6.8
Red Hat:enterprise_linux:8::baseos grub2-efi-x64-modules 0 1:2.02-123.el8_6.8
Red Hat:enterprise_linux:8::baseos grub2-pc 0 1:2.02-123.el8_6.8
Red Hat:enterprise_linux:8::baseos grub2-pc-modules 0 1:2.02-123.el8_6.8
Red Hat:enterprise_linux:8::baseos grub2-ppc64le 0 1:2.02-123.el8_6.8
Red Hat:enterprise_linux:8::baseos grub2-ppc64le-modules 0 1:2.02-123.el8_6.8
Red Hat:enterprise_linux:8::baseos grub2-tools 0 1:2.02-123.el8_6.8
Red Hat:enterprise_linux:8::baseos grub2-tools-debuginfo 0 1:2.02-123.el8_6.8
Red Hat:enterprise_linux:8::baseos grub2-tools-efi 0 1:2.02-123.el8_6.8
Red Hat:enterprise_linux:8::baseos grub2-tools-efi-debuginfo 0 1:2.02-123.el8_6.8
Red Hat:enterprise_linux:8::baseos grub2-tools-extra 0 1:2.02-123.el8_6.8
Red Hat:enterprise_linux:8::baseos grub2-tools-extra-debuginfo 0 1:2.02-123.el8_6.8
Red Hat:enterprise_linux:8::baseos grub2-tools-minimal 0 1:2.02-123.el8_6.8
Red Hat:enterprise_linux:8::baseos grub2-tools-minimal-debuginfo 0 1:2.02-123.el8_6.8
Red Hat:enterprise_linux:8::baseos shim 0 0:15.6-1.el8
Red Hat:enterprise_linux:8::baseos shim-aa64 0 0:15.6-1.el8
Red Hat:enterprise_linux:8::baseos shim-ia32 0 0:15.6-1.el8
Red Hat:enterprise_linux:8::baseos shim-x64 0 0:15.6-1.el8
Red Hat:enterprise_linux:8::crb shim-unsigned-x64 0 0:15.6-1.el8
Red Hat:enterprise_linux:9::baseos grub2 0 1:2.06-27.el9_0.7
Red Hat:enterprise_linux:9::baseos grub2-common 0 1:2.06-27.el9_0.7
Red Hat:enterprise_linux:9::baseos grub2-debuginfo 0 1:2.06-27.el9_0.7
Red Hat:enterprise_linux:9::baseos grub2-debugsource 0 1:2.06-27.el9_0.7
Red Hat:enterprise_linux:9::baseos grub2-efi-aa64 0 1:2.06-27.el9_0.7
Red Hat:enterprise_linux:9::baseos grub2-efi-aa64-cdboot 0 1:2.06-27.el9_0.7
Red Hat:enterprise_linux:9::baseos grub2-efi-aa64-modules 0 1:2.06-27.el9_0.7
Red Hat:enterprise_linux:9::baseos grub2-efi-x64 0 1:2.06-27.el9_0.7
Red Hat:enterprise_linux:9::baseos grub2-efi-x64-cdboot 0 1:2.06-27.el9_0.7
Red Hat:enterprise_linux:9::baseos grub2-efi-x64-modules 0 1:2.06-27.el9_0.7
Red Hat:enterprise_linux:9::baseos grub2-emu-debuginfo 0 1:2.06-27.el9_0.7
Red Hat:enterprise_linux:9::baseos grub2-pc 0 1:2.06-27.el9_0.7
Red Hat:enterprise_linux:9::baseos grub2-pc-modules 0 1:2.06-27.el9_0.7
Red Hat:enterprise_linux:9::baseos grub2-ppc64le 0 1:2.06-27.el9_0.7
Red Hat:enterprise_linux:9::baseos grub2-ppc64le-modules 0 1:2.06-27.el9_0.7
Red Hat:enterprise_linux:9::baseos grub2-tools 0 1:2.06-27.el9_0.7
Red Hat:enterprise_linux:9::baseos grub2-tools-debuginfo 0 1:2.06-27.el9_0.7
Red Hat:enterprise_linux:9::baseos grub2-tools-efi 0 1:2.06-27.el9_0.7
Red Hat:enterprise_linux:9::baseos grub2-tools-efi-debuginfo 0 1:2.06-27.el9_0.7
Red Hat:enterprise_linux:9::baseos grub2-tools-extra 0 1:2.06-27.el9_0.7
Red Hat:enterprise_linux:9::baseos grub2-tools-extra-debuginfo 0 1:2.06-27.el9_0.7
Red Hat:enterprise_linux:9::baseos grub2-tools-minimal 0 1:2.06-27.el9_0.7
Red Hat:enterprise_linux:9::baseos grub2-tools-minimal-debuginfo 0 1:2.06-27.el9_0.7
Red Hat:enterprise_linux:9::baseos shim 0 0:15.6-1.el9
Red Hat:enterprise_linux:9::baseos shim-aa64 0 0:15.6-1.el9
Red Hat:enterprise_linux:9::baseos shim-x64 0 0:15.6-1.el9
Red Hat:enterprise_linux:9::crb shim-unsigned-x64 0 0:15.6-1.el9
Red Hat:rhel_e4s:8.1::baseos grub2 0 1:2.02-87.el8_1.10
Red Hat:rhel_e4s:8.1::baseos grub2-common 0 1:2.02-87.el8_1.10
Red Hat:rhel_e4s:8.1::baseos grub2-debuginfo 0 1:2.02-87.el8_1.10
Red Hat:rhel_e4s:8.1::baseos grub2-debugsource 0 1:2.02-87.el8_1.10
Red Hat:rhel_e4s:8.1::baseos grub2-efi-aa64-modules 0 1:2.02-87.el8_1.10
Red Hat:rhel_e4s:8.1::baseos grub2-efi-ia32 0 1:2.02-87.el8_1.10
Red Hat:rhel_e4s:8.1::baseos grub2-efi-ia32-cdboot 0 1:2.02-87.el8_1.10
Red Hat:rhel_e4s:8.1::baseos grub2-efi-ia32-modules 0 1:2.02-87.el8_1.10
Red Hat:rhel_e4s:8.1::baseos grub2-efi-x64 0 1:2.02-87.el8_1.10
Red Hat:rhel_e4s:8.1::baseos grub2-efi-x64-cdboot 0 1:2.02-87.el8_1.10
Red Hat:rhel_e4s:8.1::baseos grub2-efi-x64-modules 0 1:2.02-87.el8_1.10
Red Hat:rhel_e4s:8.1::baseos grub2-pc 0 1:2.02-87.el8_1.10
Red Hat:rhel_e4s:8.1::baseos grub2-pc-modules 0 1:2.02-87.el8_1.10
Red Hat:rhel_e4s:8.1::baseos grub2-ppc64le 0 1:2.02-87.el8_1.10
Red Hat:rhel_e4s:8.1::baseos grub2-ppc64le-modules 0 1:2.02-87.el8_1.10
Red Hat:rhel_e4s:8.1::baseos grub2-tools 0 1:2.02-87.el8_1.10
Red Hat:rhel_e4s:8.1::baseos grub2-tools-debuginfo 0 1:2.02-87.el8_1.10
Red Hat:rhel_e4s:8.1::baseos grub2-tools-efi 0 1:2.02-87.el8_1.10
Red Hat:rhel_e4s:8.1::baseos grub2-tools-efi-debuginfo 0 1:2.02-87.el8_1.10
Red Hat:rhel_e4s:8.1::baseos grub2-tools-extra 0 1:2.02-87.el8_1.10
Red Hat:rhel_e4s:8.1::baseos grub2-tools-extra-debuginfo 0 1:2.02-87.el8_1.10
Red Hat:rhel_e4s:8.1::baseos grub2-tools-minimal 0 1:2.02-87.el8_1.10
Red Hat:rhel_e4s:8.1::baseos grub2-tools-minimal-debuginfo 0 1:2.02-87.el8_1.10
Red Hat:rhel_e4s:8.1::baseos shim 0 0:15.6-1.el8
Red Hat:rhel_e4s:8.1::baseos shim-ia32 0 0:15.6-1.el8
Red Hat:rhel_e4s:8.1::baseos shim-x64 0 0:15.6-1.el8
Red Hat:rhel_eus:8.2::baseos grub2 0 1:2.02-87.el8_2.10
Red Hat:rhel_eus:8.2::baseos grub2-common 0 1:2.02-87.el8_2.10
Red Hat:rhel_eus:8.2::baseos grub2-debuginfo 0 1:2.02-87.el8_2.10
Red Hat:rhel_eus:8.2::baseos grub2-debugsource 0 1:2.02-87.el8_2.10
Red Hat:rhel_eus:8.2::baseos grub2-efi-aa64 0 1:2.02-87.el8_2.10
Red Hat:rhel_eus:8.2::baseos grub2-efi-aa64-cdboot 0 1:2.02-87.el8_2.10
Red Hat:rhel_eus:8.2::baseos grub2-efi-aa64-modules 0 1:2.02-87.el8_2.10
Red Hat:rhel_eus:8.2::baseos grub2-efi-ia32 0 1:2.02-87.el8_2.10
Red Hat:rhel_eus:8.2::baseos grub2-efi-ia32-cdboot 0 1:2.02-87.el8_2.10
Red Hat:rhel_eus:8.2::baseos grub2-efi-ia32-modules 0 1:2.02-87.el8_2.10
Red Hat:rhel_eus:8.2::baseos grub2-efi-x64 0 1:2.02-87.el8_2.10
Red Hat:rhel_eus:8.2::baseos grub2-efi-x64-cdboot 0 1:2.02-87.el8_2.10
Red Hat:rhel_eus:8.2::baseos grub2-efi-x64-modules 0 1:2.02-87.el8_2.10
Red Hat:rhel_eus:8.2::baseos grub2-pc 0 1:2.02-87.el8_2.10
Red Hat:rhel_eus:8.2::baseos grub2-pc-modules 0 1:2.02-87.el8_2.10
Red Hat:rhel_eus:8.2::baseos grub2-ppc64le 0 1:2.02-87.el8_2.10
Red Hat:rhel_eus:8.2::baseos grub2-ppc64le-modules 0 1:2.02-87.el8_2.10
Red Hat:rhel_eus:8.2::baseos grub2-tools 0 1:2.02-87.el8_2.10
Red Hat:rhel_eus:8.2::baseos grub2-tools-debuginfo 0 1:2.02-87.el8_2.10
Red Hat:rhel_eus:8.2::baseos grub2-tools-efi 0 1:2.02-87.el8_2.10
Red Hat:rhel_eus:8.2::baseos grub2-tools-efi-debuginfo 0 1:2.02-87.el8_2.10
Red Hat:rhel_eus:8.2::baseos grub2-tools-extra 0 1:2.02-87.el8_2.10
Red Hat:rhel_eus:8.2::baseos grub2-tools-extra-debuginfo 0 1:2.02-87.el8_2.10
Red Hat:rhel_eus:8.2::baseos grub2-tools-minimal 0 1:2.02-87.el8_2.10
Red Hat:rhel_eus:8.2::baseos grub2-tools-minimal-debuginfo 0 1:2.02-87.el8_2.10
Red Hat:rhel_eus:8.2::baseos shim 0 0:15.6-1.el8
Red Hat:rhel_eus:8.2::baseos shim-aa64 0 0:15.6-1.el8
Red Hat:rhel_eus:8.2::baseos shim-ia32 0 0:15.6-1.el8
Red Hat:rhel_eus:8.2::baseos shim-x64 0 0:15.6-1.el8
Red Hat:rhel_eus:8.2::crb shim-unsigned-x64 0 0:15.6-1.el8
Red Hat:rhel_eus:8.4::baseos grub2 0 1:2.02-99.el8_4.9
Red Hat:rhel_eus:8.4::baseos grub2-common 0 1:2.02-99.el8_4.9
Red Hat:rhel_eus:8.4::baseos grub2-debuginfo 0 1:2.02-99.el8_4.9
Red Hat:rhel_eus:8.4::baseos grub2-debugsource 0 1:2.02-99.el8_4.9
Red Hat:rhel_eus:8.4::baseos grub2-efi-aa64 0 1:2.02-99.el8_4.9
Red Hat:rhel_eus:8.4::baseos grub2-efi-aa64-cdboot 0 1:2.02-99.el8_4.9
Red Hat:rhel_eus:8.4::baseos grub2-efi-aa64-modules 0 1:2.02-99.el8_4.9
Red Hat:rhel_eus:8.4::baseos grub2-efi-ia32 0 1:2.02-99.el8_4.9
Red Hat:rhel_eus:8.4::baseos grub2-efi-ia32-cdboot 0 1:2.02-99.el8_4.9
Red Hat:rhel_eus:8.4::baseos grub2-efi-ia32-modules 0 1:2.02-99.el8_4.9
Red Hat:rhel_eus:8.4::baseos grub2-efi-x64 0 1:2.02-99.el8_4.9
Red Hat:rhel_eus:8.4::baseos grub2-efi-x64-cdboot 0 1:2.02-99.el8_4.9
Red Hat:rhel_eus:8.4::baseos grub2-efi-x64-modules 0 1:2.02-99.el8_4.9
Red Hat:rhel_eus:8.4::baseos grub2-pc 0 1:2.02-99.el8_4.9
Red Hat:rhel_eus:8.4::baseos grub2-pc-modules 0 1:2.02-99.el8_4.9
Red Hat:rhel_eus:8.4::baseos grub2-ppc64le 0 1:2.02-99.el8_4.9
Red Hat:rhel_eus:8.4::baseos grub2-ppc64le-modules 0 1:2.02-99.el8_4.9
Red Hat:rhel_eus:8.4::baseos grub2-tools 0 1:2.02-99.el8_4.9
Red Hat:rhel_eus:8.4::baseos grub2-tools-debuginfo 0 1:2.02-99.el8_4.9
Red Hat:rhel_eus:8.4::baseos grub2-tools-efi 0 1:2.02-99.el8_4.9
Red Hat:rhel_eus:8.4::baseos grub2-tools-efi-debuginfo 0 1:2.02-99.el8_4.9
Red Hat:rhel_eus:8.4::baseos grub2-tools-extra 0 1:2.02-99.el8_4.9
Red Hat:rhel_eus:8.4::baseos grub2-tools-extra-debuginfo 0 1:2.02-99.el8_4.9
Red Hat:rhel_eus:8.4::baseos grub2-tools-minimal 0 1:2.02-99.el8_4.9
Red Hat:rhel_eus:8.4::baseos grub2-tools-minimal-debuginfo 0 1:2.02-99.el8_4.9
Red Hat:rhel_eus:8.4::baseos shim 0 0:15.6-1.el8
Red Hat:rhel_eus:8.4::baseos shim-aa64 0 0:15.6-1.el8
Red Hat:rhel_eus:8.4::baseos shim-ia32 0 0:15.6-1.el8
Red Hat:rhel_eus:8.4::baseos shim-x64 0 0:15.6-1.el8
Red Hat:rhel_eus:8.4::crb shim-unsigned-x64 0 0:15.6-1.el8
Rocky Linux:8 grub2 0 1:2.02-123.el8_6.8
Rocky Linux:8 mokutil 0 1:0.3.0-11.el8_6.1
Rocky Linux:8 shim 0 0:15.6-1.el8
Rocky Linux:8 shim-unsigned-x64 0 0:15.6-1.el8
Rocky Linux:9 mokutil 0 2:0.4.0-8.el9_0.1
Rocky Linux:9 shim 0 0:15.6-1.el9
SUSE:Enterprise Storage 6 grub2 0 2.02-150100.123.12.2
SUSE:Enterprise Storage 7 grub2 0 2.04-150200.9.63.2
SUSE:HPE Helion OpenStack 8 grub2 0 2.02-137.2
SUSE:Linux Enterprise High Performance Computing 15 SP1-ESPOS grub2 0 2.02-150100.123.12.2
SUSE:Linux Enterprise High Performance Computing 15 SP1-LTSS grub2 0 2.02-150100.123.12.2
SUSE:Linux Enterprise High Performance Computing 15 SP2-ESPOS grub2 0 2.04-150200.9.63.2
SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS grub2 0 2.04-150200.9.63.2
SUSE:Linux Enterprise High Performance Computing 15-ESPOS grub2 0 2.02-150000.122.12.2
SUSE:Linux Enterprise High Performance Computing 15-LTSS grub2 0 2.02-150000.122.12.2

Related vulnerabilities