Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2026-53359-Kernel-Fix — Linuxカーネルアップグレードガイド - CVE-2026-53359の修正 | Kitploit
ツール/GitHubGitHub/chuzhongyun/cve-2026-53359-kernel-fix
クラウドインフラストラクチャセキュリティ脆弱性分析学習と教育
GitHubchuzhongyun/cve-2026-53359-kernel-fix

CVE-2026-53359-Kernel-Fix

Linuxカーネルアップグレードガイド - CVE-2026-53359の修正

リポジトリを見る

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有
211ヶ月前未レビュー

中文 | 英語


中文

升级 Linux Kernel 7.1.3 修复 CVE-2026-53359 教程

声明: 本文仅记录本人服务器环境下的修复过程,并非安全专业分析。如有不当之处,欢迎指正。

验证说明: 经源码比对确认,Linux Kernel 7.1.3 已包含修复 commit 81ccda30b4e8("KVM: x86: Fix shadow paging use-after-free due to unexpected role"),该补丁在 arch/x86/kvm/mmu/mmu.c 的 kvm_mmu_get_child_sp() 函数中增加了 role.word 匹配条件,从根本上消除了因 role 不匹配导致的 shadow paging UAF。因此,升级至 7.1.3 可以有效修复此漏洞。

1. 简介

本文档提供两种方式将 Linux Kernel 升级至 7.1.3,用于修复 CVE-2026-53359:ELRepo RPM 安装(推荐)和源码编译。

项目说明
CVE 编号CVE-2026-53359
漏洞组件Linux Kernel KVM x86 Shadow MMU
漏洞类型Use After Free (UAF)
修复方式升级 Linux Kernel 至 7.1.3(ELRepo RPM 或源码编译)

漏洞影响:

KVM x86 Shadow Paging 场景中,异常情况下可能出现释放后的页面仍被 rmap 条目引用,引发内存安全问题。

漏洞参考:

  • NVD - CVE-2026-53359
  • Januscape - PoC

2. 环境信息

项目信息
系统CentOS Stream 8
升级前内核6.18.8-1.el8.elrepo.x86_64
升级后内核7.1.3
架构x86_64
虚拟化KVM Intel

查看当前环境:

root@kitploit:~
cat /etc/os-release
uname -r

3. 升级方法

本教程提供两种升级方式,可根据环境选择:

方法一:ELRepo RPM 安装(推荐)

适用于能正常访问 ELRepo 仓库的环境,无需编译,操作简单。

root@kitploit:~
# 导入 ELRepo GPG 密钥
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

# 安装 ELRepo 仓库
dnf install https://www.elrepo.org/elrepo-release-8.el8.elrepo.noarch.rpm

# 安装最新主线内核
dnf --enablerepo=elrepo-kernel install kernel-ml

# 设置新内核为默认启动项
grubby --set-default /boot/vmlinuz-7.1.3-1.el8.elrepo.x86_64

# 重启生效
reboot

注意: 内核版本号可能因 ELRepo 更新而变化,请以实际安装的版本为准。安装后可用 ls /boot/vmlinuz-* 查看。

方法二:源码编译

适用于无法访问 ELRepo 仓库,或需要使用 kernel.org 官方 stable 版本的环境。具体步骤见下方。


4. 源码编译步骤

由于本人服务器环境中:

  • ELRepo Kernel RPM 仓库无法稳定拉取;
  • 未找到适合当前环境的 RPM 更新包;
  • 需要直接使用 Linux Kernel 官方 stable 修复版本;

因此采用:

kernel.org 官方 stable 源码编译方式升级内核。

说明:

该方案仅为本人服务器环境下的解决方法,不代表所有环境必须使用源码编译。


5. 下载源码

官方下载:

root@kitploit:~
https://cdn.kernel.org/pub/linux/kernel/v7.x/linux-7.1.3.tar.xz

下载命令:

root@kitploit:~
wget https://cdn.kernel.org/pub/linux/kernel/v7.x/linux-7.1.3.tar.xz

上传位置(离线环境):

root@kitploit:~
/root/linux-7.1.3.tar.xz

6. 安装编译依赖

root@kitploit:~
dnf groupinstall "Development Tools" -y

dnf install -y \
  ncurses-devel \
  elfutils-libelf-devel \
  openssl-devel \
  bc \
  bison \
  flex \
  perl \
  dwarves

7. 解压源码

root@kitploit:~
mkdir -p /usr/src
cd /usr/src
tar -xf /root/linux-7.1.3.tar.xz
cd linux-7.1.3
ls Makefile  # 应显示: Makefile

8. 使用现有配置

root@kitploit:~
# 复制当前配置
cp /boot/config-$(uname -r) .config

# 生成新配置
make olddefconfig

# 检查 KVM 配置
grep -E "CONFIG_KVM|CONFIG_KVM_INTEL" .config

预期输出:

root@kitploit:~
CONFIG_KVM=m
CONFIG_KVM_X86=m
CONFIG_KVM_INTEL=m

9. 编译内核

root@kitploit:~
# 查看 CPU 线程数
nproc

# 编译(使用所有核心)
make -j$(nproc)

# 验证内核镜像
ls -lh arch/x86/boot/bzImage

注意: 编译时间取决于 CPU 和存储性能。


10. 安装内核模块

root@kitploit:~
# 安装模块
make modules_install

# 验证安装
ls /lib/modules/

# 检查 KVM 模块
find /lib/modules/7.1.3 -name "kvm*.ko*"

预期输出:

root@kitploit:~
kvm.ko
kvm-intel.ko
kvm-amd.ko

11. 安装内核镜像

root@kitploit:~
# 安装内核
make install

# 验证安装
ls -lh /boot | grep 7.1.3

预期输出:

root@kitploit:~
vmlinuz-7.1.3
initramfs-7.1.3.img
System.map-7.1.3

12. 更新启动项

root@kitploit:~
# 生成 GRUB 配置
grub2-mkconfig -o /boot/grub2/grub.cfg

# 设置默认内核
grubby --set-default /boot/vmlinuz-7.1.3

# 验证默认内核
grubby --default-kernel

预期输出:

root@kitploit:~
/boot/vmlinuz-7.1.3

13. 重启

root@kitploit:~
reboot

14. 验证

查看内核版本:

root@kitploit:~
uname -r
# 预期: 7.1.3

查看 KVM 模块:

root@kitploit:~
lsmod | grep kvm
# 预期: kvm_intel, kvm, irqbypass

验证 KVM 模块位置:

root@kitploit:~
modinfo kvm_intel | grep filename
# 预期: /lib/modules/7.1.3/kernel/arch/x86/kvm/kvm-intel.ko

15. 回滚

重要: 旧内核不应立即删除。

列出可用内核:

root@kitploit:~
grubby --info=ALL | grep kernel

如果新内核有问题,设置旧内核:

root@kitploit:~
grubby --set-default /boot/vmlinuz-6.18.8-1.el8.elrepo.x86_64
reboot

16. 最终结果

项目升级前升级后
内核版本6.18.8-1.el8.elrepo.x86_647.1.3
KVM 状态N/A已启用
CVE-2026-53359受影响已修复


英語

Linuxカーネルを7.1.3にアップグレードしてCVE-2026-53359を修正する

免責事項: このリポジトリは、特定のサーバー環境における私自身の修正プロセスを記録したものです。専門的なセキュリティ分析ではありません。訂正があれば歓迎します。

検証メモ: ソースコードの比較により、Linuxカーネル7.1.3には修正コミット 81ccda30b4e8("KVM: x86: Fix shadow paging use-after-free due to unexpected role")が含まれていることを確認しました。このパッチは arch/x86/kvm/mmu/mmu.c の kvm_mmu_get_child_sp() 関数に role.word マッチング条件を追加し、ロールの不一致によるシャドウページングUAFを根本的に排除します。したがって、7.1.3にアップグレードすることでこの脆弱性を効果的に修正できます。

1. はじめに

このガイドでは、CVE-2026-53359を修正するためにLinuxカーネルを7.1.3にアップグレードする2つの方法を提供します:ELRepo RPMインストール(推奨)およびソースからのビルド。

項目説明
CVE IDCVE-2026-53359
影響を受けるコンポーネントLinuxカーネル KVM x86 Shadow MMU
脆弱性の種類Use After Free (UAF)

この脆弱性はKVM x86シャドウページングに関連しています。特定の条件下では、解放されたページがrmapエントリによってまだ参照され、メモリ安全性の問題を引き起こす可能性があります。

参考文献:

  • NVD - CVE-2026-53359
  • Januscape - PoC

2. 環境

項目

現在の環境を確認:

root@kitploit:~
cat /etc/os-release
uname -r

3. アップグレード方法

このガイドでは2つのアップグレード方法を提供します。環境に応じて選択してください:

方法A: ELRepo RPMインストール(推奨)

ELRepoリポジトリに確実にアクセスできる環境向け。コンパイルは不要です。

root@kitploit:~
# ELRepo GPGキーをインポート
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

# ELRepoリポジトリをインストール
dnf install https://www.elrepo.org/elrepo-release-8.el8.elrepo.noarch.rpm

# 最新のメインラインカーネルをインストール
dnf --enablerepo=elrepo-kernel install kernel-ml

# 新しいカーネルをデフォルトの起動エントリに設定
grubby --set-default /boot/vmlinuz-7.1.3-1.el8.elrepo.x86_64

# 再起動して適用
reboot

注意: カーネルのバージョン番号はELRepoの更新に伴い変更される可能性があります。実際にインストールされたバージョンは ls /boot/vmlinuz-* で確認してください。

方法B: ソースからのビルド

ELRepoにアクセスできない環境、または公式のkernel.org安定版リリースが必要な環境向け。詳細な手順は以下をご覧ください。


4. ソースからのビルド手順

私の環境では:

  • ELRepoカーネルRPMリポジトリに安定してアクセスできませんでした。
  • 適切なRPM更新方法が見つかりませんでした。
  • 公式のLinuxカーネル安定版リリースをデプロイする必要がありました。

そのため:

公式のkernel.org安定版ソースコードを使用して、カーネル7.1.3を手動でビルドしました。

注意:

これは私自身の環境での解決策であり、すべてのシステムで必須のアップグレード方法ではありません。


5. カーネルソースのダウンロード

公式ソース:

root@kitploit:~
https://cdn.kernel.org/pub/linux/kernel/v7.x/linux-7.1.3.tar.xz

ダウンロード:

root@kitploit:~
wget https://cdn.kernel.org/pub/linux/kernel/v7.x/linux-7.1.3.tar.xz

アップロード場所(オフラインの場合):

root@kitploit:~
/root/linux-7.1.3.tar.xz

6. ビルド依存関係のインストール

root@kitploit:~
dnf groupinstall "Development Tools" -y

dnf install -y \
  ncurses-devel \
  elfutils-libelf-devel \
  openssl-devel \
  bc \
  bison \
  flex \
  perl \
  dwarves \
  tar \
  xz

コンパイラの確認:

root@kitploit:~
gcc --version

7. ソースコードの展開

root@kitploit:~
mkdir -p /usr/src
cd /usr/src
tar -xf /root/linux-7.1.3.tar.xz
cd linux-7.1.3
ls Makefile  # 表示されるはず: Makefile

8. 既存のカーネル設定のインポート

root@kitploit:~
# 現在のカーネル設定をコピー
cp /boot/config-$(uname -r) .config

# 新しい設定を生成
make olddefconfig

# KVM設定を確認
grep -E "CONFIG_KVM|CONFIG_KVM_INTEL" .config

期待される出力:

root@kitploit:~
CONFIG_KVM=m
CONFIG_KVM_X86=m
CONFIG_KVM_INTEL=m

9. カーネルのコンパイル

root@kitploit:~
# CPUスレッド数を確認
nproc

# コンパイル(利用可能なすべてのコアを使用)
make -j$(nproc)

# カーネルイメージを確認
ls -lh arch/x86/boot/bzImage

注意: コンパイル時間はCPUとストレージの性能に依存します。


10. カーネルモジュールのインストール

root@kitploit:~
# モジュールをインストール
make modules_install

# インストールを確認
ls /lib/modules/

# KVMモジュールを確認
find /lib/modules/7.1.3 -name "kvm*.ko*"

期待される出力:

root@kitploit:~
kvm.ko
kvm-intel.ko
kvm-amd.ko

11. カーネルイメージのインストール

root@kitploit:~
# カーネルをインストール
make install

# インストールを確認
ls -lh /boot | grep 7.1.3

期待される出力:

root@kitploit:~
vmlinuz-7.1.3
initramfs-7.1.3.img
System.map-7.1.3

12. GRUBブートローダの設定

root@kitploit:~
# GRUB設定を生成
grub2-mkconfig -o /boot/grub2/grub.cfg

# デフォルトカーネルを設定
grubby --set-default /boot/vmlinuz-7.1.3

# デフォルトカーネルを確認
grubby --default-kernel

期待される出力:

root@kitploit:~
/boot/vmlinuz-7.1.3

13. 再起動

root@kitploit:~
reboot

14. 再起動後の確認

カーネルバージョンの確認:

root@kitploit:~
uname -r
# 期待される: 7.1.3

KVMモジュールの確認:

root@kitploit:~
lsmod | grep kvm
# 期待される: kvm_intel, kvm, irqbypass

KVMモジュールの場所の確認:

root@kitploit:~
modinfo kvm_intel | grep filename
# 期待される: /lib/modules/7.1.3/kernel/arch/x86/kvm/kvm-intel.ko

15. ロールバック手順

重要: 古いカーネルはすぐに削除しないでください。

利用可能なカーネルを一覧表示:

root@kitploit:~
grubby --info=ALL | grep kernel

新しいカーネルに問題がある場合、古いカーネルを設定:

root@kitploit:~
grubby --set-default /boot/vmlinuz-6.18.8-1.el8.elrepo.x86_64
reboot

16. 最終結果

項目アップグレード前アップグレード後
カーネルバージョン6.18.8-1.el8.elrepo.x86_647.1.3
KVMステータスN/A有効
CVE-2026-53359影響あり修正済み

ライセンス / License

MIT

ツールをダウンロード
修正方法Linuxカーネルを7.1.3にアップグレード(ELRepo RPMまたはソースからのビルド)
値
OSCentOS Stream 8
旧カーネル6.18.8-1.el8.elrepo.x86_64
新カーネル7.1.3
アーキテクチャx86_64
仮想化KVM Intel
コンパイラGCC 8.5