
Linux-Kernel-Upgrade-Anleitung - Behebung von CVE-2026-53359
Hinweis: Dieser Artikel dokumentiert lediglich den Reparaturprozess auf meiner Server-Umgebung. Es handelt sich nicht um eine professionelle Sicherheitsanalyse. Bei Unstimmigkeiten bitte ich um Korrektur.
Überprüfungshinweis: Ein Quellcode-Vergleich bestätigt, dass Linux Kernel 7.1.3 den Fix-Commit
81ccda30b4e8(„KVM: x86: Fix shadow paging use-after-free due to unexpected role“) enthält. Der Patch fügt in der Funktionkvm_mmu_get_child_sp()inarch/x86/kvm/mmu/mmu.ceinerole.word-Übereinstimmungsbedingung hinzu, wodurch der Shadow-Paging-UAF aufgrund von Rollenkonflikten grundlegend beseitigt wird. Daher behebt das Upgrade auf 7.1.3 diese Schwachstelle effektiv.
Dieses Dokument bietet zwei Methoden zum Upgrade des Linux-Kernels auf Version 7.1.3 zur Behebung von CVE-2026-53359: ELRepo RPM-Installation (empfohlen) und Kompilierung aus dem Quellcode.
| Element | Beschreibung |
|---|---|
| CVE-ID | CVE-2026-53359 |
| Betroffene Komponente | Linux-Kernel KVM x86 Shadow MMU |
| Schwachstellentyp | Use After Free (UAF) |
| Behebungsmethode | Upgrade des Linux-Kernels auf 7.1.3 (ELRepo RPM oder Quellcode-Bau) |
Auswirkungen der Schwachstelle:
Im Shadow-Paging-Szenario von KVM x86 kann es unter bestimmten Umständen vorkommen, dass freigegebene Seiten weiterhin von rmap-Einträgen referenziert werden, was zu einer Speichersicherheitslücke führt.
Referenzen:
| Element | Information |
|---|---|
| System | CentOS Stream 8 |
| Kernel vor Upgrade | 6.18.8-1.el8.elrepo.x86_64 |
| Kernel nach Upgrade | 7.1.3 |
| Architektur | x86_64 |
| Virtualisierung | KVM Intel |
Aktuelle Umgebung anzeigen:
cat /etc/os-release
uname -r
Dieses Tutorial bietet zwei Upgrade-Methoden, je nach Umgebung:
Geeignet für Umgebungen mit zuverlässigem Zugriff auf das ELRepo-Repository. Keine Kompilierung erforderlich.
# ELRepo GPG-Schlüssel importieren
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
# ELRepo-Repository installieren
dnf install https://www.elrepo.org/elrepo-release-8.el8.elrepo.noarch.rpm
# Neuesten Mainline-Kernel installieren
dnf --enablerepo=elrepo-kernel install kernel-ml
# Neuen Kernel als Standard-Boot-Eintrag setzen
grubby --set-default /boot/vmlinuz-7.1.3-1.el8.elrepo.x86_64
# Neustart zur Anwendung
reboot
Hinweis: Die Kernel-Versionsnummer kann sich durch ELRepo-Updates ändern. Bitte die tatsächlich installierte Version mit
ls /boot/vmlinuz-*überprüfen.
Geeignet für Umgebungen ohne ELRepo-Zugriff oder wenn die offizielle stabile Version von kernel.org benötigt wird. Die detaillierten Schritte finden Sie unten.
Da in meiner Server-Umgebung:
wurde folgender Ansatz gewählt:
Kompilierung des offiziellen stabilen Quellcodes von kernel.org zur Aktualisierung des Kernels.
Hinweis:
Diese Lösung gilt nur für meine Server-Umgebung und stellt keine zwingende Upgrade-Methode für alle Systeme dar.
Offizieller Download:
https://cdn.kernel.org/pub/linux/kernel/v7.x/linux-7.1.3.tar.xz
Download-Befehl:
wget https://cdn.kernel.org/pub/linux/kernel/v7.x/linux-7.1.3.tar.xz
Upload-Pfad (Offline-Umgebung):
/root/linux-7.1.3.tar.xz
dnf groupinstall "Development Tools" -y
dnf install -y \
ncurses-devel \
elfutils-libelf-devel \
openssl-devel \
bc \
bison \
flex \
perl \
dwarves \
tar \
xz
Compiler überprüfen:
gcc --version
mkdir -p /usr/src
cd /usr/src
tar -xf /root/linux-7.1.3.tar.xz
cd linux-7.1.3
ls Makefile # Sollte anzeigen: Makefile
# Aktuelle Kernel-Konfiguration kopieren
cp /boot/config-$(uname -r) .config
# Neue Konfiguration generieren
make olddefconfig
# KVM-Konfiguration überprüfen
grep -E "CONFIG_KVM|CONFIG_KVM_INTEL" .config
Erwartete Ausgabe:
CONFIG_KVM=m
CONFIG_KVM_X86=m
CONFIG_KVM_INTEL=m
# CPU-Threads prüfen
nproc
# Kompilieren (alle verfügbaren Kerne nutzen)
make -j$(nproc)
# Kernel-Image überprüfen
ls -lh arch/x86/boot/bzImage
Hinweis: Die Kompilierungszeit hängt von der CPU- und Speicherleistung ab.
# Module installieren
make modules_install
# Installation überprüfen
ls /lib/modules/
# KVM-Module prüfen
find /lib/modules/7.1.3 -name "kvm*.ko*"
Erwartete Ausgabe:
kvm.ko
kvm-intel.ko
kvm-amd.ko
# Kernel installieren
make install
# Installation überprüfen
ls -lh /boot | grep 7.1.3
Erwartete Ausgabe:
vmlinuz-7.1.3
initramfs-7.1.3.img
System.map-7.1.3
# GRUB-Konfiguration generieren
grub2-mkconfig -o /boot/grub2/grub.cfg
# Standard-Kernel setzen
grubby --set-default /boot/vmlinuz-7.1.3
# Standard-Kernel überprüfen
grubby --default-kernel
Erwartete Ausgabe:
/boot/vmlinuz-7.1.3
reboot
Kernel-Version prüfen:
uname -r
# Erwartet: 7.1.3
KVM-Module prüfen:
lsmod | grep kvm
# Erwartet: kvm_intel, kvm, irqbypass
KVM-Modul-Pfad prüfen:
modinfo kvm_intel | grep filename
# Erwartet: /lib/modules/7.1.3/kernel/arch/x86/kvm/kvm-intel.ko
Wichtig: Alte Kernel sollten nicht sofort gelöscht werden.
Verfügbare Kernel auflisten:
grubby --info=ALL | grep kernel
Wenn der neue Kernel Probleme bereitet, alten Kernel setzen:
grubby --set-default /boot/vmlinuz-6.18.8-1.el8.elrepo.x86_64
reboot
| Element | Vorher | Nachher |
|---|---|---|
| Kernel-Version | 6.18.8-1.el8.elrepo.x86_64 | 7.1.3 |
| KVM-Status | N/A | Aktiviert |
| CVE-2026-53359 | Anfällig | Behandelt |
Disclaimer: This repository only documents my personal fix process on a specific server environment. It is not a professional security analysis. Corrections are welcome.
Verification Note: Source code comparison confirms that Linux Kernel 7.1.3 includes the fix commit
81ccda30b4e8("KVM: x86: Fix shadow paging use-after-free due to unexpected role"). The patch adds arole.wordmatching condition in thekvm_mmu_get_child_sp()function inarch/x86/kvm/mmu/mmu.c, eliminating the shadow paging UAF caused by role mismatch. Therefore, upgrading to 7.1.3 effectively remediates this vulnerability.
This guide provides two methods to upgrade Linux Kernel to 7.1.3 for fixing CVE-2026-53359: ELRepo RPM installation (recommended) and building from source.