OpenJDK 21 บน Ubuntu แก้ช่องโหว่หลายจุด USN-9015-1
ผู้ดูแลระบบและนักพัฒนาที่ใช้ OpenJDK 21 บน Ubuntu ควรตรวจแพตช์โดยเร็ว โดยให้บริการที่รับข้อมูลจากภายนอกมาก่อน
สรุปใน 1 นาที
- อาการ/ปัญหา
- การยืนยันตัวตนและตรวจสิทธิ์บางส่วนผิดพลาด อาจเปิดทางให้ผู้โจมตีทางไกลแก้ไขข้อมูลที่แอปเข้าถึงได้
- ใครควรอ่าน
- ผู้ดูแลระบบและนักพัฒนาที่ใช้ OpenJDK 21 จากแพ็กเกจ Ubuntu ในรุ่นที่ประกาศครอบคลุม
- ทางแก้แบบสั้น
- ตรวจอัปเดต OpenJDK 21 จากคลัง Ubuntu และเทียบเลขรุ่นกับ USN-9015-1 ก่อนยืนยันว่าแพตช์ครบ
พอดีเห็น Ubuntu ออกประกาศ USN-9015-1 แก้ช่องโหว่หลายจุดใน OpenJDK 21 ซึ่งเป็นชุดเครื่องมือและสภาพแวดล้อมสำหรับรัน Java ประเด็นหนึ่งคือส่วน Security ยืนยันตัวตนไม่ถูกต้อง ผู้โจมตีจากระยะไกลอาจใช้ช่องนี้แก้ไขข้อมูลสำคัญได้ งานนี้ควรเริ่มจากตรวจว่าแอปเรียกใช้ Java ตัวไหน แล้วตามแพตช์ให้ตรงกับ Ubuntu ที่ติดตั้ง
ใครต้องทำอะไร
- ผู้ดูแลระบบ: ตรวจเครื่องที่รัน OpenJDK 21 และติดตั้งอัปเดตโดยเร็ว โดยให้บริการที่รับข้อมูลจากภายนอกมาก่อน
- นักพัฒนา: ตรวจ Java ที่แอปและอิมเมจคอนเทนเนอร์ใช้งาน แล้วอัปเดตพร้อมทดสอบก่อนนำขึ้นใช้งานรอบถัดไป
เกิดอะไรขึ้น
ปัญหายืนยันตัวตนในส่วน Security ใช้รหัส CVE-2026-83374 โดยหน้ารายการ CVE ของ Ubuntu อธิบายว่าผู้โจมตีไม่ต้องมีบัญชีผู้ใช้ แต่การโจมตีมีความซับซ้อนสูง ผลสำเร็จอาจทำให้สร้าง ลบ หรือแก้ไขข้อมูลสำคัญที่ Java เข้าถึงได้ เงื่อนไขหนึ่งคือแอปส่งข้อมูลเข้า API ของส่วนที่มีช่องโหว่ เช่น ผ่านเว็บเซอร์วิส รายละเอียดนี้ช่วยให้แยกความเสี่ยงตามการใช้งานจริงได้ (รายละเอียด Ubuntu)
อีกจุดคือ JSSE ซึ่งเกี่ยวข้องกับการสื่อสารแบบเข้ารหัส ใน CVE-2026-83376 ผู้โจมตีที่เข้าถึงผ่าน TLS อาจแก้ไข เพิ่ม หรือลบข้อมูลบางส่วนได้ การใช้ TLS เลยไม่ได้ทดแทนการอัปเดตตัว Java ที่แอปเรียกใช้อยู่ (รายละเอียด Ubuntu)
หน้ารวม USN ระบุช่องโหว่ทั้งหมด 40 รายการ แต่หน้า USN ฉบับเต็มเปิดไม่สำเร็จ บทความนี้เลยยกเฉพาะรายละเอียดที่ตรวจได้จากหน้า CVE ทางการ ต้องตรวจรายการเต็มจาก Ubuntu ประกอบการปิดงานแพตช์
ใครโดนและรุ่นที่แก้
หน้ารวมประกาศ Ubuntu ระบุรุ่นที่ครอบคลุมตามตาราง ส่วนหน้าประกาศฉบับเต็มเปิดอ่านไม่สำเร็จระหว่างตรวจข้อมูล เลยยังยืนยันเลขแพ็กเกจที่แก้และรายละเอียดของช่องโหว่ทั้งหมดไม่ได้ หน้า CVE-2026-83374 และ CVE-2026-83376 ยังแสดง OpenJDK 21 ว่า Needs evaluation แม้หน้ารวม USN จะระบุว่ามีอัปเดตแล้ว ข้อมูลสองหน้ายังไม่ตรงกัน เลยยังใช้ยืนยันรุ่นแพ็กเกจที่แก้ไม่ได้
| Ubuntu / แพ็กเกจ | รุ่นที่แก้ |
|---|---|
| 26.10 / OpenJDK 21 | ต้องเทียบเลขแพ็กเกจกับ USN-9015-1 |
| 26.04 LTS / OpenJDK 21 | ต้องเทียบเลขแพ็กเกจกับ USN-9015-1 |
| 24.04 LTS / OpenJDK 21 | ต้องเทียบเลขแพ็กเกจกับ USN-9015-1 |
| 22.04 LTS / OpenJDK 21 | ต้องเทียบเลขแพ็กเกจกับ USN-9015-1 |
| 20.04 LTS / OpenJDK 21 | ต้องเทียบเลขแพ็กเกจกับ USN-9015-1 |
ต้องทำอะไร
เริ่มจากตรวจแพ็กเกจที่ติดตั้งและรุ่นที่คลังเสนอ คำสั่งชุดนี้ใช้กับเครื่องที่ติดตั้ง openjdk-21-jre-headless อยู่แล้ว ส่วนเครื่องที่มี JRE แบบกราฟิกหรือ JDK ให้ตรวจและอัปเดตแพ็กเกจ OpenJDK 21 ที่ติดตั้งร่วมด้วย
dpkg-query -W 'openjdk-21-*'
sudo apt update
apt-cache policy openjdk-21-jre-headless
sudo apt install --only-upgrade openjdk-21-jre-headless
java -version
หลังติดตั้ง ให้เปิดแอปหรือเริ่มบริการ Java ที่เกี่ยวข้องใหม่ตามขั้นตอนดูแลระบบ แล้วทดสอบการทำงานที่สำคัญ การตรวจ java -version แสดงตัวที่คำสั่งในเชลล์เรียกใช้ ควรตรวจเส้นทาง Java ของบริการด้วย เพราะแอปอาจใช้ runtime คนละชุด สำหรับคอนเทนเนอร์ ต้องอัปเดตแพ็กเกจในอิมเมจและนำอิมเมจที่แก้แล้วขึ้นใช้งานด้วย
ก่อนปิดงาน ให้เทียบรุ่นแพ็กเกจที่ติดตั้งกับตารางใน USN ฉบับเต็มอีกครั้ง โดยเฉพาะกรณีคลังยังไม่เสนอรุ่นใหม่หรือมีแพ็กเกจถูกพักการอัปเดตไว้ เลขรุ่นที่แสดงหลังสั่งอัปเดตเพียงอย่างเดียวยังใช้ยืนยันว่าครบทุกช่องโหว่ในประกาศนี้ไม่ได้
ส่วนตัวผมให้บริการ Java ที่รับข้อมูลจากภายนอกเร่งตรวจแพตช์ก่อน ที่มา: USN-9015-1: OpenJDK 21 vulnerabilities (ประกาศ Ubuntu) เดี๋ยวกลับมาแก้เพิ่มให้ภายหลังครับ
อยากให้เราทำให้ไหม?
ให้เราช่วยติดตั้ง ตั้งค่า ย้ายระบบ หรือแก้ปัญหาเซิร์ฟเวอร์ เพื่อให้คุณมีเวลาไปทำงานที่สำคัญกว่า
เคยเจองานแบบนี้ไหม? ติดตรงไหน?
มาแลกวิธีกันต่อในบอร์ด LinuxThai



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