Linux 核心漏洞 CVE-2026-98432:暫時封鎖與套用核心修補程式

測試環境RHEL 系列AlmaLinux 9.8Lightsail核心 5.14.0-687.55.1.el9_8 → 5.14.0-687.64.1.el9_82026-11-03 確認
版本字串與 SSH 連接埠號碼為範例值,只有修正後的核心 5.14.0-687.64.1.el9_8是 AlmaLinux 公告的值

CVE-2026-98432 是 Linux 核心漏洞,接受 IPv4 TCP 連線的核心程式碼會再次讀取已釋放的記憶體,Linux 核心 CVE 團隊將其評為 Critical。由於這是不需驗證即可從遠端攻擊的缺陷,我們將採用 Nginx 與 Apache 的 AlmaLinux 9.8 Lightsail 伺服器更新為修正後的核心套件並重新開機,再以執行中的核心版本確認修補。

1️⃣ Linux 核心漏洞 CVE-2026-98432:缺陷原理與影響範圍

當 TCP 連線請求(SYN)帶著 IPv4 選項進來時,核心為了在回應(SYN-ACK)中送回這些選項,會把副本與等待中的連線一起保存。連線建立後,這份副本不會複製,而是直接交給新連線的通訊端。

若在這段期間用戶端重新送出 SYN,另一顆 CPU 可能正以相同選項建立 SYN-ACK。這時新連線關閉、核心立刻釋放選項記憶體,正在建立 SYN-ACK 的程式碼就會讀取已釋放的記憶體,也就是 use-after-free。

這段程式碼在應用程式看到連線之前、核心處理連線請求的階段執行。因此不論連接埠是由哪個服務開啟,只要以 IPv4 TCP 監聽,攻擊就能在沒有憑證的情況下從遠端觸及,分數依 CVSS 3.1 為 9.8。

此缺陷從 Linux 4.4 起就存在,因此大多數 Linux 伺服器都受影響。AWS 說明在 Lightsail 藍圖中列出 AlmaLinux 9、CentOS Stream 9、Debian、openSUSE Leap、Ubuntu 以及 Amazon Linux 2、Amazon Linux 2023。AlmaLinux 公告將 8、9、10 全部列為對象,Lightsail 的 WordPress 與 LAMP 等應用程式藍圖也在 Debian 或 Ubuntu 上執行,因此同樣受影響。

不使用 Linux 核心的 FreeBSD 與 Windows Server 不在影響範圍內。

關閉 MPTCP(Multipath TCP)的伺服器也需要修補。公開的攻擊鎖定的是開著 MPTCP 監聽器的伺服器,但缺陷本身位於一般的 IPv4 TCP 程式碼,所以 AlmaLinux 公告也表示沒有 MPTCP 的系統同樣必須修正。

修正後的核心會在 RCU 寬限期(grace period)過後才釋放選項記憶體,因此在另一顆 CPU 讀取選項建立 SYN-ACK 的期間,記憶體會保留下來。

🧩 CVE-2026-98432 use-after-free 흐름
설명 다이어그램
🔍 단계
🌐 클라이언트
📨SYN + IPv4 옵션
🔁SYN 다시 보냄
➜
🐧 커널
🧾IPv4 옵션 사본대기 중인 연결과 함께 보관복제 없이 새 연결의 소켓으로 넘어감새 연결이 닫히며 곧바로 해제RCU 유예 시간이 지난 뒤 해제
⚙️CPU 1새 연결을 맡음새 연결을 닫으며 옵션 해제새 연결을 닫고 해제는 미룸
⚙️CPU 2같은 옵션으로 SYN-ACK 만드는 중해제된 메모리를 읽음읽기를 마친 뒤 해제됨
SYN에 붙은 IPv4 옵션 사본을 대기 중인 연결에 보관합니다.
사본이 새 소켓으로 넘어간 사이, CPU 2가 같은 옵션으로 SYN-ACK를 만듭니다.
CPU 1이 연결을 닫으며 옵션을 해제하고, CPU 2는 해제된 메모리를 읽습니다.
해제를 RCU 유예 시간 뒤로 미뤄, CPU 2가 다 읽은 뒤에 해제합니다.

2️⃣ 確認 Linux 核心版本:是否為修正後的核心

是否需要修補取決於執行中的核心版本,因此在更新前,我們先確認了發行版與核心版本。

cat /etc/os-release
NAME="AlmaLinux"
VERSION="9.8 (Olive Jaguar)"
ID="almalinux"
ID_LIKE="rhel centos fedora"
VERSION_ID="9.8"
PLATFORM_ID="platform:el9"
PRETTY_NAME="AlmaLinux 9.8 (Olive Jaguar)"
ANSI_COLOR="0;34"
LOGO="fedora-logo-icon"
CPE_NAME="cpe:/o:almalinux:almalinux:9::baseos"
HOME_URL="https://almalinux.org/"
DOCUMENTATION_URL="https://wiki.almalinux.org/"
BUG_REPORT_URL="https://bugs.almalinux.org/"

ALMALINUX_MANTISBT_PROJECT="AlmaLinux-9"
ALMALINUX_MANTISBT_PROJECT_VERSION="9.8"
REDHAT_SUPPORT_PRODUCT="AlmaLinux"
REDHAT_SUPPORT_PRODUCT_VERSION="9.8"
SUPPORT_END=2032-06-01
uname -r
5.14.0-687.55.1.el9_8.x86_64
nft --version
-bash: nft: command not found

發行版為 AlmaLinux 9.8,執行中的核心為 5.14.0-687.55.1.el9_8。暫時封鎖規則要用的 nft 指令也不存在,代表 nftables 套件尚未安裝。

rpm -q kernel
kernel-5.14.0-611.30.1.el9_7.x86_64
kernel-5.14.0-687.49.1.el9_8.x86_64
kernel-5.14.0-687.55.1.el9_8.x86_64

[rpm -q kernel] 會列出已安裝的核心,但在重新開機前,實際運作的只有 [uname -r] 顯示的那一個。請將此版本與 AlmaLinux 公告中的修正版本比較。

發行版修正後的核心版本(此版本以上)
AlmaLinux 8kernel-4.18.0-553.182.1.el8_10
AlmaLinux 9kernel-5.14.0-687.64.1.el9_8
AlmaLinux 10kernel-6.12.0-211.72.1.el10_2

5.14.0-687.55.1.el9_8 低於 AlmaLinux 9 的修正版本 5.14.0-687.64.1.el9_8,因此需要更新。

為了確認攻擊是否有路徑可觸及,我們檢查了正在監聽的 IPv4 TCP 連接埠與 MPTCP 狀態。

ss -lnt4
State  Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0      128          0.0.0.0:22        0.0.0.0:*
LISTEN 0      511          0.0.0.0:443       0.0.0.0:*
LISTEN 0      511          0.0.0.0:80        0.0.0.0:*
sysctl net.mptcp.enabled
net.mptcp.enabled = 0
ss -lnM
State Recv-Q Send-Q Local Address:Port Peer Address:Port

在所有位址(0.0.0.0)上監聽的 IPv4 TCP 連接埠,是網頁伺服器的 80、443 與 SSH 的 22。

[net.mptcp.enabled] 為 0,也沒有 MPTCP 通訊端,因此公開攻擊所用的 MPTCP 路徑是關閉的。但缺陷是從一般的 IPv4 TCP 連線開始,所以監聽三個 IPv4 連接埠的伺服器仍需要修補。

3️⃣ 更新 Linux 核心:七個核心套件與重新開機

更換核心前,我們先在 Lightsail 主控台為執行個體建立了手動快照。Lightsail 沒有選擇開機核心的畫面,若伺服器無法以新核心啟動,就要用這份快照建立新的執行個體來還原。

🔲 Lightsail 快照模擬器

📍 Lightsail › 인스턴스 › AlmaLinux-9-1 › 스냅샷
AmazonLightsail문서 검색홈example (000000000000)▼
보안 업데이트를 권장합니다.

Linux 기반 블루프린트를 사용하는 인스턴스에 취약점(CVE-2026-98432)이 발생할 수 있습니다. 인스턴스가 영향을 받는지 확인하고 사용 중인 Linux 배포판에 최신 보안 업데이트를 적용하는 것이 좋습니다.

자세히 알아보기
AlmaLinux-9-1 정보
삭제재부팅중지
2 GB RAM, 2 vCPU, 60 GB SSD 플랜 변경
알마리눅스
AWS 리전
버지니아, 영역 A
(us-east-1a)
인스턴스 유형
범용
네트워킹 유형
듀얼 스택
네트워킹 유형 변경
고정 IP 주소
203.0.113.10
프라이빗 IPv4 주소
192.0.2.10
퍼블릭 IPv6 주소
2001:db8:1234:5678::a1b2
인스턴스 상태
실행 중
시스템 상태 확인
통과됨
인스턴스 상태 확인
통과됨
연결지표스냅샷스토리지네트워킹도메인고급도움말 및 지원
수동 스냅샷

스냅샷을 생성하여 인스턴스, 해당 시스템 디스크 및 연결된 디스크를 백업할 수 있습니다.

스냅샷을 생성 중…“”
2026년 11월 3일, 20:01 (UTC+0:00)“AlmaLinux-9-1-1762200000”
1 스냅샷 중 1 표시
자동 스냅샷
자동 스냅샷이 활성화됨

일일 스냅샷 시간은 오전 5:00 GMT+0입니다.Amazon은 가장 최근의 스냅샷 7개를 저장합니다.

🔲 確認 Linux 核心更新與重新開機

我們用 dnf 清單確認了儲存庫中提供的修正版核心版本。

dnf --showduplicates list available kernel kernel-core kernel-modules kernel-modules-core kernel-tools kernel-tools-libs kernel-headers
kernel.x86_64                 5.14.0-687.64.1.el9_8   baseos
kernel-core.x86_64            5.14.0-687.64.1.el9_8   baseos
kernel-modules.x86_64         5.14.0-687.64.1.el9_8   baseos
kernel-modules-core.x86_64    5.14.0-687.64.1.el9_8   baseos
kernel-tools.x86_64           5.14.0-687.64.1.el9_8   baseos
kernel-tools-libs.x86_64      5.14.0-687.64.1.el9_8   baseos
kernel-headers.x86_64         5.14.0-687.64.1.el9_8   appstream
dnf download kernel-core-5.14.0-687.64.1.el9_8

只把 kernel-core 套件檔下載到目前的資料夾,不進行安裝。

rpm -Kv kernel-core-5.14.0-687.64.1.el9_8.x86_64.rpm
    V4 RSA/SHA256 Signature, key ID b86b3716: OK
rpm -qp --changelog kernel-core-5.14.0-687.64.1.el9_8.x86_64.rpm | grep CVE-2026-98432
- ipv4: free inet_opt and ireq_opt after an RCU grace period (CKI Backport Bot) [RHEL-295635] {CVE-2026-98432}

簽章為 OK,變更記錄中有修正 CVE-2026-98432 的一行。我們在 11 月 3 日確認的 dnf 安全性公告(updateinfo)中還沒有這個 CVE,因此用 [dnf upgrade --security] 無法取得這個核心。

因此我們指定版本,安裝了七個核心套件。

dnf install -y kernel-5.14.0-687.64.1.el9_8 kernel-core-5.14.0-687.64.1.el9_8 kernel-modules-5.14.0-687.64.1.el9_8 kernel-modules-core-5.14.0-687.64.1.el9_8 kernel-tools-5.14.0-687.64.1.el9_8 kernel-tools-libs-5.14.0-687.64.1.el9_8 kernel-headers-5.14.0-687.64.1.el9_8
================================================================================
 Package                Architecture Version                    Repository    Size
================================================================================
Installing:
 kernel                 x86_64    5.14.0-687.64.1.el9_8      baseos       1.1 M
 kernel-core            x86_64    5.14.0-687.64.1.el9_8      baseos        17 M
 kernel-modules         x86_64    5.14.0-687.64.1.el9_8      baseos        40 M
 kernel-modules-core    x86_64    5.14.0-687.64.1.el9_8      baseos        31 M
Upgrading:
 kernel-headers         x86_64    5.14.0-687.64.1.el9_8      appstream    2.6 M
 kernel-tools           x86_64    5.14.0-687.64.1.el9_8      baseos       1.3 M
 kernel-tools-libs      x86_64    5.14.0-687.64.1.el9_8      baseos       1.1 M
Removing:
 kernel                 x86_64    5.14.0-611.30.1.el9_7      @baseos        0
 kernel-core            x86_64    5.14.0-611.30.1.el9_7      @baseos       64 M
 kernel-modules         x86_64    5.14.0-611.30.1.el9_7      @baseos       33 M
 kernel-modules-core    x86_64    5.14.0-611.30.1.el9_7      @baseos       27 M

Transaction Summary
================================================================================
Install  4 Packages
Upgrade  3 Packages
Remove  4 Packages

Total download size: 94 M

Complete!

新安裝了四個核心套件,kernel-headers、kernel-tools、kernel-tools-libs 三個套件已升級,其他套件沒有變動。由於保留最多三個已安裝核心的 [installonly_limit=3] 設定,最舊的 5.14.0-611.30.1.el9_7 的四個套件被移除,從下載到完成花了 74 秒。

AlmaLinux 公告所提供的官方標準指令,會重新取得儲存庫資訊後,升級所有有更新的套件。

sudo dnf clean metadata && sudo dnf upgrade

由於核心以外的套件也會一起升級,升級整個發行版版本的步驟請參閱 Alma Linux 更新:LightSail 上的 9.4 → 9.8。

新核心要重新開機後才會生效。

systemctl reboot

伺服器重新啟動後,我們依序確認了執行中的核心、已安裝的核心與預設核心。

uname -r
5.14.0-687.64.1.el9_8.x86_64
rpm -q kernel
kernel-5.14.0-687.49.1.el9_8.x86_64
kernel-5.14.0-687.55.1.el9_8.x86_64
kernel-5.14.0-687.64.1.el9_8.x86_64
grubby --default-kernel
/boot/vmlinuz-5.14.0-687.64.1.el9_8.x86_64

伺服器在重新開機指令後不到 1 分鐘就重新啟動,執行中的核心與下次開機使用的預設核心都已改為 5.14.0-687.64.1.el9_8。先前的核心 5.14.0-687.55.1.el9_8 仍保留著,若新核心出問題,可以把預設核心改回去。

項目修補前修補後
執行中的核心(uname -r)5.14.0-687.55.1.el9_85.14.0-687.64.1.el9_8
預設核心(grubby)5.14.0-687.55.1.el9_85.14.0-687.64.1.el9_8
已安裝的核心(rpm -q kernel)5.14.0-611.30.1.el9_7, 5.14.0-687.49.1.el9_8, 5.14.0-687.55.1.el9_85.14.0-687.49.1.el9_8, 5.14.0-687.55.1.el9_8, 5.14.0-687.64.1.el9_8

4️⃣ 重新開機前的暫時封鎖:nft 規則與限制

無法立即重新開機時,可以在安裝修正後的核心之前,用暫時規則封鎖觸發缺陷的封包。本章的指令並非我們實際執行,而是依據官方標準(AlmaLinux 與 AWS 公告)。

採用 Nginx 與 Apache 的 AlmaLinux 9.8 Lightsail 伺服器幾分鐘就能完成重新開機,因此我們沒有做暫時封鎖,直接更新了核心。

此缺陷只會由帶有 IPv4 選項的 TCP 連線請求觸發。一般流量幾乎不使用 IPv4 選項,因此只封鎖帶選項的 IPv4 TCP 封包,平常的連線仍能照常維持。

sudo dnf install -y nftables

nft 指令包含在與 firewalld 一起安裝的 nftables 套件中。若伺服器沒有這個指令,請先安裝。

sudo nft -f - <<'EOF'
add table ip cve_2026_98432
delete table ip cve_2026_98432
table ip cve_2026_98432 {
    chain prerouting {
        type filter hook prerouting priority -300; policy accept;
        meta l4proto tcp ip hdrlength > 5 counter drop
    }
}
EOF

建立一個 nftables 表,在 prerouting 階段封鎖 IPv4 標頭長度大於 5 的 TCP 封包,也就是帶有 IPv4 選項的封包。這是 AlmaLinux 在 8、9、10 上測試過的規則,可與 firewalld 一起使用,執行多次也安全。

sudo nft list table ip cve_2026_98432

確認規則是否已加入;輸出中的 counter 值是目前為止封鎖的封包數。

sudo nft delete table ip cve_2026_98432

以修正後的核心重新開機後,用這個指令刪除該表。

此規則在重新開機後會消失,若在安裝修正後的核心之前就重新開機,請再次執行建立表的指令。

有依賴 IPv4 選項之應用程式的伺服器不適用此規則。使用 IPv4 選項所攜帶之 CIPSO 安全標籤(NetLabel)的網路就是一例,預設設定中不會使用。

此規則會保護主機,以及透過主機接收流量的容器(Podman 與 Docker 的預設方式)。同一主機上容器之間互相傳送的流量可能繞過此規則。

在 Debian、Ubuntu、openSUSE 上,請使用 AWS 說明中的一行 iptables 規則。AlmaLinux 9 與 CentOS Stream 9 的核心沒有此規則使用的 u32 比對模組,因此請改用上方的 nft 規則。

sudo iptables -I INPUT 1 -p tcp -m u32 --u32 '0>>24&0x0f=6:15' -j DROP

u32 運算式會讀取 IPv4 標頭長度欄位,值大於 5 就是帶有 IPv4 選項的封包。安裝修正後的核心後,請用下方指令刪除此規則。

sudo iptables -D INPUT -p tcp -m u32 --u32 '0>>24&0x0f=6:15' -j DROP

在 Lightsail 防火牆關閉未使用的連接埠,並將其餘連接埠限縮為只允許可信任的 IP 位址,也是 AWS 說明一併建議的做法。

🔢 FAQ & 推薦內容

AlmaLinux 與 AWS 的公告都表示,IPv6 連線不受此缺陷主要問題的影響,也不需要暫時規則。不過,即使是您以為只用 IPv6 的伺服器,只要 SSH 或網頁伺服器有任何一個 IPv4 TCP 連接埠在監聽,攻擊就能經由該連接埠觸及,因此請用 [ss -lnt4] 確認,核心修補仍要照常進行。

AlmaLinux 公告表示,開啟 TCP 請求通訊端遷移(net.ipv4.tcp_migrate_req 設定或搬移請求的 BPF 程式)時也有類似問題。此設定預設為關閉;若您已開啟,請更新到修正後的核心,再查看 AlmaLinux 公告的更新內容。

AWS 說明指出,Debian 11 與 openSUSE Leap 15 已終止支援,可能無法收到核心更新。AWS 建議先在這類伺服器上套用暫時防火牆規則,並規劃移轉到受支援版本的執行個體。

ℹ️ 聯盟行銷說明
本站內容包含聯盟行銷連結。訪客透過這些連結購買商品或服務時,本站會從賣家獲得佣金。在這個過程中,購買者支付的金額(遇到活動折扣時金額會降低↓)並不會因此提高。刊登的價格、折扣與庫存資訊以撰寫當時為準,可能與實際情況不同,購買前請向賣家做最後確認。商品的挑選與評價依本站自訂的標準撰寫,是否支付佣金不會影響介紹順序或評價內容。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

Prove your humanity: 5   +   9   =