EST. 2026 — บันทึกงานเซิร์ฟเวอร์จริง SYSADMIN · SECURITY · AI · DIRECTADMIN เล่มที่ 01
THE SYSADMIN ALMANAC
หน้าหลัก / Security Update / Linux kernel 6 ช่องโหว่ลง CISA KEV ส.ค.-ต.ค. 2026 อัปเดตแล้วต้องรีบูต
Security Update

Linux kernel 6 ช่องโหว่ลง CISA KEV ส.ค.-ต.ค. 2026 อัปเดตแล้วต้องรีบูต

โดย Ton-Or ·28 ต.ค. 2026·อ่าน 7 นาที
Linux kernel 6 ช่องโหว่ลง CISA KEV ส.ค.-ต.ค. 2026 อัปเดตแล้วต้องรีบูต

ใครมีเครื่อง Linux ที่ให้คนอื่นรันโค้ดได้ ทั้ง shared hosting, container host และเครื่องที่เว็บเคยถูกฝัง webshell ให้อัปเดต kernel แล้วรีบูตเร็วที่สุด

สรุปใน 1 นาที

อาการ/ปัญหา
ช่องโหว่ Linux kernel 6 ตัวถูกใช้โจมตีจริงและอยู่ใน CISA KEV เกือบทั้งหมดเปลี่ยนบัญชีธรรมดาเป็น root
ใครควรอ่าน
ทุกเครื่องที่รัน kernel รุ่นเก่ากว่ารุ่นที่แก้ โดยเฉพาะเครื่องที่มีหลายผู้ใช้ มีเว็บหลายเว็บ หรือรัน container
ทางแก้แบบสั้น
อัปเดต package kernel จาก distro แล้วรีบูต จากนั้นเช็กว่า uname -v ตรงกับรุ่นที่ติดตั้งจริง
ข้ามไปขั้นตอน

พอดีไล่ดูรายการ CISA KEV ย้อนหลังแล้วเห็นว่าตั้งแต่ปลายเดือน ส.ค. ถึง 28 ต.ค. 2026 มี Linux kernel เข้าไปอยู่ในรายการถึง 6 ตัว ผมเลยรวมไว้ในโพสต์เดียว เพราะวิธีรับมือเหมือนกันหมด คือ อัปเดต kernel แล้ว รีบูต และเกือบทุกตัวเป็นช่องโหว่ฝั่ง local ที่เปลี่ยนบัญชีสิทธิ์ต่ำให้กลายเป็น root

6 CVELinux kernel ใน KEV
KEV 28 ต.ค.ตัวล่าสุด 46300
9.8CVSS สูงสุด (39682)
6.12.115-2Debian 13 แก้แล้ว

เกิดอะไรขึ้น

ทั้ง 6 ตัวเป็นบั๊กในโค้ด kernel ฝั่ง network, crypto และ subsystem อื่นๆ ไม่ใช่ช่องโหว่ของเว็บแอป ตารางด้านล่างสรุปตามข้อมูลใน CVE record และ KEV

CVE ส่วนของ kernel CVSS 3.1 ลง KEV รุ่น upstream ที่แก้ (6.12 / 6.6 / 6.1)
CVE-2022-0995 watch_queue เขียนนอกขอบเขต 7.8 26 ส.ค. record ไม่ระบุเลขรุ่น (มี fix commit)
CVE-2026-53362 IPv6 __ip6_append_data() บัฟเฟอร์ล้น 7.8 27 ส.ค. 6.12.95 / 6.6.144 / 6.1.177
CVE-2026-53266 ebtables SNAT เขียนลงหน้าไฟล์ 8.8 18 ก.ย. 6.12.94 / 6.6.143 / 6.1.176
CVE-2025-39964 AF_ALG race condition 7.8 18 ก.ย. 6.12.49 / 6.6.108 / 6.1.154
CVE-2025-39682 TLS receive path (tls_sw) 9.8 18 ก.ย. 6.12.44 / 6.6.103 / 6.1.149
CVE-2026-46300 ESP input กับ page cache 7.8 28 ต.ค. 6.12.91 / 6.6.141 / 6.1.174

ตัวที่น่าสนใจที่สุดคือ CVE-2026-46300 ที่ Red Hat เรียกว่า "Fragnesia" ตัว skb_try_coalesce() ย้ายชิ้นข้อมูลโดยไม่เก็บธง shared-fragment ไว้ ทำให้ฝั่ง ESP ถอดรหัสทับหน้า page cache ที่เป็นของไฟล์จริง ผู้โจมตี local เลยเขียนไบต์ลงไฟล์ที่อ่านได้อย่างเดียว เช่น binary ที่มีสิทธิ์สูง และไต่ไปเป็น root ได้ ข้อความใน KEV ระบุด้วยว่าตัวนี้เอาไปต่อกับ CVE-2026-109618 และ CVE-2026-109619 ฝัง PHP webshell แล้วรันคำสั่งเป็น root ได้ ซึ่งตรงกับเรื่อง php2shell ที่ผมเขียนไว้ก่อนหน้า

ทำไมช่องโหว่ local ถึงสำคัญบนเครื่องที่มีหลายเว็บบัญชีธรรมดาwebuser / webshellช่องโหว่ kernelทั้ง 6 ตัวใน KEVrootคุมทั้งเครื่องทุกเว็บบนเครื่องอ่านข้ามเว็บได้ทางแก้ตามลำดับapt / dnf upgradeติดตั้ง kernel ใหม่รีบูตยังไม่รีบูต = ยังเสี่ยงuname -vต้องตรงรุ่นที่แก้
ผู้โจมตีไม่ต้องเจาะ root ตรงๆ แค่ได้บัญชีสิทธิ์ต่ำสักบัญชีก็พอ ส่วนการอัปเดตจะมีผลหลังรีบูตเท่านั้น

ระดับความรุนแรง

ทั้ง 6 ตัวอยู่ใน CISA KEV แปลว่ามีการโจมตีใช้งานจริง ข้อมูล SSVC ที่ CISA แนบใน CVE record ของแต่ละตัวระบุ exploitation เป็น active ตัว CVE-2025-39682 ได้ CVSS 9.8 เพราะ CNA ให้เวกเตอร์ AV:N/PR:N ส่วนอีก 5 ตัวเป็น AV:L คือต้องมีบัญชีบนเครื่องอยู่แล้ว ฟังดูเบากว่า แต่บนเครื่องที่รันเว็บหลายเว็บ เว็บเดียวที่โดนฝัง webshell ก็คือบัญชีบนเครื่องแล้ว

เรื่องที่ผมอยากให้ดูเป็นพิเศษคือ container ครับ ทุก container ใช้ kernel ตัวเดียวกับ host Ubuntu ระบุในหน้า CVE-2026-46300 ว่าผู้โจมตี local อาจยกสิทธิ์หรือหลุดออกจาก container ได้ ส่วน CISA หมายเหตุใน KEV ว่า CVE-2026-53266 และ CVE-2025-39682 อาจกระทบ product ที่หมดอายุซัพพอร์ตแล้ว แนะนำให้เลิกใช้หรือย้ายไปรุ่นที่ยังดูแลอยู่

รุ่นที่แก้ใน Debian และ Ubuntu

Debian ออก DSA-6602-1 เมื่อ 2 พ.ย. 2026 รวมช่องโหว่กว่า 600 CVE ในประกาศเดียว ตัวประกาศระบุรุ่นที่แก้สำหรับ Debian 13 (trixie) คือ 6.12.115-2 ตัวประกาศ DSA-6602-1 เองไม่มี CVE-2026-46300 อยู่ในรายการ ผมเลยไล่ดู Debian security tracker รายตัวแทน ที่เปิดอ่านได้ครบคือ 46300, 53266, 39964 และ 39682 ซึ่งระบุรุ่นแก้ขั้นต่ำต่างกันไป (เช่น 39682 แก้ตั้งแต่ trixie 6.12.48-1 และ bookworm 6.1.153-1, 46300 และ 53266 แก้ตั้งแต่ trixie 6.12.107-1 และ bookworm 6.1.176-1) แต่ทุกตัวมีรุ่นใน security suite ล่าสุดตรงกันคือ trixie 6.12.115-2 และ bookworm 6.1.190-1 ผมเลยแนะนำให้ใช้สองเลขนี้เป็นเป้าเดียวจบ ส่วน 53362 กับ 2022-0995 ผมยังไม่ได้ยืนยันรายตัวใน tracker

ฝั่ง Ubuntu ผมเปิดแค่หน้า CVE-2026-46300 รุ่นที่แก้ของแพ็กเกจ linux หลักคือ 26.04 ที่ 7.0.0-22.22, 25.10 ที่ 6.17.0-35.35, 24.04 ที่ 6.8.0-124.124 และ 22.04 ที่ 5.15.0-181.191 ส่วนตัวอื่นให้ไปเปิดหน้า ubuntu.com/security/CVE-... ของแต่ละตัว และดูรุ่นของ kernel flavor ที่ใช้อยู่ เช่น linux-aws ด้วย เพราะแต่ละ flavor มีเลขรุ่นของตัวเอง

วิธีแก้

ลำดับคือ ติดตั้ง kernel ใหม่ แล้วรีบูต แล้วเช็กว่าเครื่องบูตเข้ารุ่นใหม่จริง

  1. เรียงเครื่องตามความเสี่ยง เริ่มจากเครื่องที่มีหลายผู้ใช้ หลายเว็บ หรือรัน container ของคนอื่น
  2. อัปเดต kernel ผ่าน apt หรือ dnf ของ distro
  3. รีบูต แจ้งช่วงดับเครื่องล่วงหน้าตามปกติ
  4. เทียบรุ่น ด้วย uname -v กับรุ่นที่ติดตั้ง แล้วค่อยปิดงาน
อัปเดตแล้วแต่ไม่รีบูต = ยังโดนอยู่

kernel ที่รันอยู่ในหน่วยความจำไม่เปลี่ยนจนกว่าจะบูตใหม่ เครื่องที่ uptime ยาวหลายร้อยวันมักเป็นเครื่องที่ติดตั้งแพตช์ไว้แล้วแต่ยังรัน kernel เก่า

# Debian / Ubuntu
sudo apt update
sudo apt full-upgrade
sudo reboot

# RHEL / Rocky / AlmaLinux
sudo dnf upgrade --refresh 'kernel*'
sudo reboot

หลังบูตกลับมา เทียบรุ่นที่รันอยู่กับรุ่นที่ติดตั้งไว้ เพราะ package ใหม่ที่ลงแล้วยังไม่รีบูตจะไม่ทำให้ kernel ที่รันอยู่เปลี่ยน

uname -r        # kernel ที่รันอยู่ตอนนี้
uname -v        # Debian จะแสดงเลขแพ็กเกจ เช่น Debian 6.12.115-2
dpkg -l 'linux-image-*' | grep '^ii'    # ที่ติดตั้งไว้ทั้งหมด

# Ubuntu: ไฟล์นี้มีเมื่อต้องรีบูต
ls -l /var/run/reboot-required 2>/dev/null

# ตัวช่วยเช็ก kernel ที่รันกับที่ควรเป็น
sudo needrestart -k -b      # เทียบ NEEDRESTART-KCUR กับ NEEDRESTART-KEXP
sudo needs-restarting -r    # RHEL ตระกูลเดียวกัน (ต้องมีแพ็กเกจ dnf-utils)

ถ้ารีบูตทันทีไม่ได้และต้องเลื่อนไปก่อน Ubuntu มีบริการ Livepatch แต่ผมไม่ได้เปิดรายการ CVE ที่ livepatch ครอบคลุม เลยไม่ขอยืนยันว่าทั้ง 6 ตัวถูกปิดด้วยวิธีนี้ ให้เช็กสถานะด้วย canonical-livepatch status --verbose และเทียบ CVE กับรายการของ Canonical เอง อย่าเดา

มาตรการชั่วคราวมีผลข้างเคียง

สำหรับกลุ่ม Dirty Frag/Fragnesia Ubuntu แนะนำให้ปิดโมดูล esp4, esp6 และ rxrpc ด้วย install esp4 /bin/false ใน /etc/modprobe.d/ แล้วรัน update-initramfs -u -k all แต่จะทำให้ IPsec (เช่น strongSwan) กับ AFS ใช้ไม่ได้ และ Ubuntu เองก็บอกว่าไม่จำเป็นอีกเมื่อลง kernel ที่แก้แล้ว ใช้เฉพาะเครื่องที่ยังอัปเดตไม่ได้เท่านั้น

เช็กว่าโดนหรือยัง

ในแหล่งที่ผมเปิดอ่านไม่มี IOC ที่เป็นทางการสำหรับ 6 ตัวนี้ สิ่งที่ผมไล่ดูได้คือพฤติกรรมทั่วไปหลังเว็บถูกฝังโค้ด

# บัญชี UID 0 ที่ไม่ควรมี
awk -F: '$3==0 {print $1}' /etc/passwd

# ไฟล์ setuid ที่ถูกแก้ภายใน 30 วัน
sudo find / -xdev -perm -4000 -type f -mtime -30 -ls 2>/dev/null

# เว็บเก่าที่มีไฟล์ PHP แปลกๆ ใน uploads
find /home/webuser/public_html -name '*.php' -path '*uploads*' -mtime -30

ถ้าเจออะไรผิดปกติ อย่าแค่ลบไฟล์ เพราะผู้โจมตีที่เคยเป็น root แล้วอาจฝังของไว้ที่อื่น แนวทางที่ปลอดภัยกว่าคือสร้างเครื่องใหม่จาก backup ที่สะอาด ผมเขียนวิธีตรวจเครื่อง Debian ไว้ใน debian-server-security-scan

ส่วนตัวผม ถ้าเป็นเครื่องที่ให้คนหลายคนรันโค้ดได้ หรือมี container ของคนอื่นอยู่ ผมจะอัปเดตกับรีบูตภายในวันที่เห็นประกาศเลย ส่วนเครื่องใช้งานคนเดียวที่ไม่ได้เปิดบริการให้ใคร เลื่อนไปรอบบำรุงรักษาถัดไปได้ แต่ไม่ควรปล่อยเกินหนึ่งสัปดาห์ เพราะช่องโหว่ 6 ตัวนี้ถูกใช้จริงแล้ว

ปล. KEV ของตัวล่าสุด (CVE-2026-46300) มีกำหนดแก้ภายใน 31 ต.ค. 2026 ตามเงื่อนไขของหน่วยงานรัฐบาลกลางสหรัฐ เป็นสัญญาณว่าเรื่องนี้ไม่ได้รอได้นาน

ที่มา: CISA Known Exploited Vulnerabilities Catalog (https://www.cisa.gov/known-exploited-vulnerabilities-catalog), CVE records ของทั้ง 6 ตัวบน cve.org (https://www.cve.org/CVERecord?id=CVE-2026-46300), Debian DSA-6602-1 (https://lists.debian.org/debian-security-announce/2026/msg00521.html), Debian Security Tracker (https://security-tracker.debian.org/tracker/CVE-2026-46300), Ubuntu CVE tracker (https://ubuntu.com/security/CVE-2026-46300), Ubuntu blog Dirty Frag (https://ubuntu.com/blog/dirty-frag-linux-vulnerability-fixes-available) ข้อมูลถึง 5 พ.ย. 2026 ถ้า distro อื่นหรือ kernel flavor อื่นออกรุ่นแก้ตามมา เดี๋ยวกลับมาแก้เพิ่มให้ภายหลังครับ

อยากให้เราทำให้ไหม?

ให้เราช่วยติดตั้ง ตั้งค่า ย้ายระบบ หรือแก้ปัญหาเซิร์ฟเวอร์ เพื่อให้คุณมีเวลาไปทำงานที่สำคัญกว่า

คุยเรื่องงานกับเรา

เคยเจองานแบบนี้ไหม? ติดตรงไหน?

มาแลกวิธีกันต่อในบอร์ด LinuxThai

→ คุยต่อในบอร์ด

ความคิดเห็น 0

ยังไม่มีความคิดเห็น — เป็นคนแรกเลย