Lỗ hổng kernel Linux CVE-2026-98432: chặn tạm thời và áp dụng bản vá kernel

Môi trường thử nghiệmHọ RHELAlmaLinux 9.8LightsailKernel 5.14.0-687.55.1.el9_8 → 5.14.0-687.64.1.el9_8Kiểm tra ngày 2026-11-03
Chuỗi phiên bản và số cổng SSH là giá trị ví dụ; chỉ kernel đã sửa 5.14.0-687.64.1.el9_8 là giá trị lấy từ thông báo của AlmaLinux

CVE-2026-98432 là lỗ hổng kernel Linux, trong đó mã kernel nhận kết nối TCP IPv4 đọc lại vùng nhớ đã được giải phóng, và nhóm CVE của kernel Linux đánh giá ở mức Critical. Vì đây là lỗi có thể bị tấn công từ xa mà không cần xác thực, chúng tôi đã cập nhật máy chủ Lightsail AlmaLinux 9.8 dùng Nginx và Apache lên các gói kernel đã sửa, khởi động lại, rồi xác nhận bản vá qua phiên bản kernel đang chạy.

1️⃣ Lỗ hổng kernel Linux CVE-2026-98432: cơ chế lỗi và phạm vi ảnh hưởng

Khi một yêu cầu kết nối TCP (SYN) đến kèm tùy chọn IPv4, kernel giữ một bản sao của các tùy chọn đó cùng với kết nối đang chờ để gửi lại trong phản hồi (SYN-ACK). Khi kết nối được thiết lập, bản sao này được chuyển thẳng sang socket của kết nối mới mà không nhân bản.

Nếu trong lúc đó máy khách gửi lại SYN, một CPU khác có thể đang tạo SYN-ACK với cùng tùy chọn. Lúc này nếu kết nối mới bị đóng và kernel giải phóng ngay vùng nhớ tùy chọn, đoạn mã đang tạo SYN-ACK sẽ đọc vùng nhớ đã được giải phóng, tức là use-after-free.

Đoạn mã này chạy ở giai đoạn kernel xử lý yêu cầu kết nối, trước khi ứng dụng thấy kết nối. Vì vậy, dù cổng do dịch vụ nào mở, chỉ cần cổng đó đang lắng nghe qua TCP IPv4 thì cuộc tấn công có thể tiếp cận từ xa mà không cần thông tin xác thực, và điểm số là 9.8 theo CVSS 3.1.

Lỗi này có từ Linux 4.4 nên phần lớn máy chủ Linux đều bị ảnh hưởng. Trong các blueprint của Lightsail, hướng dẫn của AWS nêu AlmaLinux 9, CentOS Stream 9, Debian, openSUSE Leap, Ubuntu cùng Amazon Linux 2, Amazon Linux 2023. Thông báo của AlmaLinux nêu cả 8, 9 và 10 là đối tượng, và các blueprint ứng dụng của Lightsail như WordPress và LAMP cũng chạy trên Debian hoặc Ubuntu nên cũng bị ảnh hưởng.

FreeBSD và Windows Server, vốn không dùng kernel Linux, không bị ảnh hưởng.

Máy chủ đã tắt MPTCP (Multipath TCP) vẫn cần vá. Cuộc tấn công được công bố nhắm vào máy chủ có listener MPTCP đang mở, nhưng bản thân lỗi nằm trong mã TCP IPv4 thông thường, nên thông báo của AlmaLinux cũng cho biết hệ thống không có MPTCP vẫn phải sửa.

Kernel đã sửa chỉ giải phóng vùng nhớ tùy chọn sau khi hết thời gian ân hạn RCU (grace period), nên vùng nhớ vẫn được giữ trong lúc CPU khác đọc tùy chọn để tạo 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️⃣ Kiểm tra phiên bản kernel Linux: kernel đã được sửa chưa?

Có cần vá hay không phụ thuộc vào phiên bản kernel đang chạy, nên trước khi cập nhật, chúng tôi kiểm tra bản phân phối và phiên bản kernel trước.

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

Bản phân phối là AlmaLinux 9.8, kernel đang chạy là 5.14.0-687.55.1.el9_8. Lệnh nft dùng cho quy tắc chặn tạm thời cũng không có, nghĩa là gói nftables chưa được cài.

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] in ra danh sách kernel đã cài, nhưng cho đến khi khởi động lại, kernel thực sự đang chạy chỉ là kernel hiện trong [uname -r]. Hãy so sánh phiên bản này với phiên bản đã sửa trong thông báo của AlmaLinux.

Bản phân phốiPhiên bản kernel đã sửa (phiên bản này trở lên)
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 thấp hơn 5.14.0-687.64.1.el9_8, phiên bản đã sửa của AlmaLinux 9, nên cần cập nhật.

Để xem đường tấn công có đang mở hay không, chúng tôi kiểm tra các cổng TCP IPv4 đang lắng nghe và trạng thái 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

Các cổng TCP IPv4 lắng nghe trên mọi địa chỉ (0.0.0.0) là 80, 443 của máy chủ web và 22 của SSH.

[net.mptcp.enabled] là 0 và không có socket MPTCP nào, nên đường MPTCP mà cuộc tấn công được công bố sử dụng đã bị đóng. Tuy vậy lỗi bắt đầu từ kết nối TCP IPv4 thông thường, nên máy chủ lắng nghe ba cổng IPv4 vẫn cần vá.

3️⃣ Cập nhật kernel Linux: bảy gói kernel và khởi động lại

Trước khi thay kernel, chúng tôi đã tạo snapshot thủ công của instance trong bảng điều khiển Lightsail. Lightsail không có màn hình chọn kernel khởi động, nên nếu máy chủ không lên được với kernel mới, bạn khôi phục bằng cách tạo instance mới từ snapshot này.

🔲 Trình mô phỏng snapshot 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개를 저장합니다.

🔲 Kiểm tra cập nhật kernel Linux và khởi động lại

Chúng tôi kiểm tra phiên bản kernel đã sửa có trong kho bằng danh sách của 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

Chỉ tải tệp gói kernel-core về thư mục hiện tại, không cài đặt.

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}

Chữ ký là OK, và nhật ký thay đổi có dòng sửa CVE-2026-98432. Các thông báo bảo mật của dnf (updateinfo) mà chúng tôi kiểm tra ngày 3 tháng 11 vẫn chưa có CVE này, nên chưa thể lấy kernel này bằng [dnf upgrade --security].

Vì vậy, chúng tôi đã cài bảy gói kernel và chỉ định cả phiên bản.

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!

Bốn gói kernel mới được cài, ba gói kernel-headers, kernel-tools và kernel-tools-libs được nâng cấp, và không gói nào khác thay đổi. Do thiết lập [installonly_limit=3] chỉ giữ tối đa ba kernel đã cài, bốn gói của kernel cũ nhất 5.14.0-611.30.1.el9_7 đã bị xóa, và từ lúc tải về đến khi hoàn tất mất 74 giây.

Lệnh chuẩn chính thức mà thông báo của AlmaLinux hướng dẫn sẽ tải lại thông tin kho rồi nâng cấp mọi gói có bản cập nhật.

sudo dnf clean metadata && sudo dnf upgrade

Vì các gói khác ngoài kernel cũng được nâng cấp theo, các bước nâng cấp toàn bộ phiên bản bản phân phối có trong Cập nhật Alma Linux: 9.4 → 9.8 trên LightSail.

Kernel mới chỉ có hiệu lực sau khi khởi động lại.

systemctl reboot

Sau khi máy chủ khởi động lại, chúng tôi lần lượt kiểm tra kernel đang chạy, các kernel đã cài và kernel mặc định.

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

Máy chủ hoạt động trở lại chưa đến một phút sau lệnh khởi động lại, và cả kernel đang chạy lẫn kernel mặc định cho lần khởi động tiếp theo đều đổi sang 5.14.0-687.64.1.el9_8. Kernel trước đó 5.14.0-687.55.1.el9_8 vẫn còn, nên nếu kernel mới gặp sự cố, bạn có thể đặt lại kernel mặc định.

Hạng mụcTrước khi váSau khi vá
Kernel đang chạy (uname -r)5.14.0-687.55.1.el9_85.14.0-687.64.1.el9_8
Kernel mặc định (grubby)5.14.0-687.55.1.el9_85.14.0-687.64.1.el9_8
Kernel đã cài (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️⃣ Chặn tạm thời trước khi khởi động lại: quy tắc nft và giới hạn

Khi chưa thể khởi động lại ngay, bạn có thể chặn các gói tin gây ra lỗi bằng quy tắc tạm thời cho đến khi cài kernel đã sửa. Các lệnh trong phần này chúng tôi không tự chạy mà theo hướng dẫn chính thức (thông báo của AlmaLinux và AWS).

Máy chủ Lightsail AlmaLinux 9.8 dùng Nginx và Apache chỉ mất vài phút để khởi động lại, nên chúng tôi cập nhật kernel ngay mà không chặn tạm thời.

Lỗi chỉ bắt đầu từ yêu cầu kết nối TCP có kèm tùy chọn IPv4. Lưu lượng thông thường hầu như không dùng tùy chọn IPv4, nên chỉ chặn gói TCP IPv4 có tùy chọn thì các kết nối bình thường vẫn giữ nguyên.

sudo dnf install -y nftables

Lệnh nft nằm trong gói nftables, được cài cùng với firewalld. Nếu máy chủ của bạn không có lệnh này, hãy cài gói trước.

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

Tạo một bảng chặn ở giai đoạn prerouting các gói TCP có độ dài header IPv4 lớn hơn 5, tức là gói có tùy chọn IPv4. Đây là quy tắc AlmaLinux đã thử trên 8, 9 và 10; có thể dùng cùng firewalld và chạy nhiều lần vẫn an toàn.

sudo nft list table ip cve_2026_98432

Kiểm tra quy tắc đã được thêm chưa; giá trị counter trong kết quả là số gói đã bị chặn đến nay.

sudo nft delete table ip cve_2026_98432

Sau khi khởi động lại bằng kernel đã sửa, hãy xóa bảng bằng lệnh này.

Quy tắc này mất đi khi khởi động lại, nên nếu bạn đã khởi động lại trước khi cài kernel đã sửa, hãy chạy lại lệnh tạo bảng.

Quy tắc này không phù hợp với máy chủ có ứng dụng phụ thuộc vào tùy chọn IPv4. Ví dụ là các mạng dùng nhãn bảo mật CIPSO (NetLabel) được mang trong tùy chọn IPv4; cấu hình mặc định không dùng đến.

Quy tắc bảo vệ máy chủ host và các container nhận lưu lượng qua host (cách mặc định của Podman và Docker). Lưu lượng trao đổi giữa các container trên cùng một host có thể vượt qua quy tắc này.

Trên Debian, Ubuntu và openSUSE, hãy dùng quy tắc iptables một dòng trong hướng dẫn của AWS. Kernel của AlmaLinux 9 và CentOS Stream 9 không có match u32 mà quy tắc này dùng, nên hãy dùng quy tắc nft ở trên.

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

Biểu thức u32 đọc trường độ dài header IPv4; nếu giá trị lớn hơn 5 thì gói có tùy chọn IPv4. Sau khi cài kernel đã sửa, hãy xóa quy tắc này bằng lệnh bên dưới.

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

Đóng các cổng không dùng trong tường lửa Lightsail và chỉ cho phép các cổng còn lại từ địa chỉ IP tin cậy cũng là cách được hướng dẫn của AWS khuyến nghị kèm theo.

🔢 FAQ & nội dung đề xuất

Thông báo của AlmaLinux và AWS đều cho biết kết nối IPv6 không bị ảnh hưởng bởi vấn đề chính của lỗi này và cũng không cần quy tắc tạm thời. Tuy nhiên, ngay cả máy chủ bạn tưởng chỉ dùng IPv6, nếu SSH hoặc máy chủ web đang lắng nghe dù chỉ một cổng TCP IPv4 thì cuộc tấn công vẫn có thể đến qua cổng đó, vì vậy hãy kiểm tra bằng [ss -lnt4] và vẫn tiến hành vá kernel như bình thường.

Thông báo của AlmaLinux cho biết cũng có vấn đề tương tự khi bật tính năng di chuyển socket yêu cầu TCP (thiết lập net.ipv4.tcp_migrate_req hoặc chương trình BPF di chuyển yêu cầu). Thiết lập này mặc định tắt; nếu bạn đã bật, hãy cập nhật lên kernel đã sửa rồi kiểm tra nội dung cập nhật trong thông báo của AlmaLinux.

Hướng dẫn của AWS cho biết Debian 11 và openSUSE Leap 15 đã hết hỗ trợ nên có thể không nhận được bản cập nhật kernel. AWS khuyên áp dụng quy tắc tường lửa tạm thời cho những máy chủ này trước và lên kế hoạch chuyển sang instance có phiên bản còn được hỗ trợ.

ℹ️ Thông báo tiếp thị liên kết
Nội dung trên trang này có chứa liên kết affiliate (tiếp thị liên kết). Khi khách truy cập mua sản phẩm hoặc dịch vụ qua các liên kết này, trang sẽ nhận hoa hồng từ bên bán. Trong quá trình đó, số tiền người mua phải trả (sẽ giảm khi có chương trình khuyến mãi ↓) không hề tăng lên. Giá, khuyến mãi và tình trạng hàng được đăng theo thời điểm viết bài và có thể khác với thực tế, vì vậy hãy kiểm tra lại lần cuối với bên bán trước khi mua. Việc chọn và đánh giá sản phẩm dựa trên tiêu chí riêng của trang; việc có nhận hoa hồng hay không không ảnh hưởng đến thứ tự giới thiệu hay nội dung đánh giá.

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Prove your humanity: 5   +   10   =