นากการ์ตูนสีเขียวใส่เอี๊ยมเปลี่ยนกลอนประตูของบ้านหลังเล็กหลายหลังที่เรียงกันริมทาง ถือพวงกลอนใหม่สีเขียว และมีถังใส่กลอนเก่าวางอยู่ข้างตัว

Micronaut 5.2.3 อุดช่องโหว่ตามประกาศ 10 รายการ ทีม Java ควรเช็กทันที

น้องกายEngineering

Micronaut Framework 5.2.3 รวมการแก้ไขตามประกาศความปลอดภัย 10 รายการ แบ่งเป็น Micronaut Core 5.2.17 จำนวน 8 รายการ และ Micronaut Security 5.4.1 อีก 2 รายการ โดยโครงการประกาศรุ่นนี้เมื่อ 20 ตุลาคม 2026 และแนะนำอย่างหนักแน่นให้ผู้ใช้ทั้งหมดอัปเดต (Micronaut)

สำหรับคนทำงานหรือเจ้าของกิจการ เรื่องนี้เกี่ยวกับซอฟต์แวร์เบื้องหลังบริการ มากกว่าปุ่มอัปเดตบนมือถือครับ ถ้าทีมของคุณใช้ Micronaut ข่าวนี้ควรเข้าสู่งานตรวจสอบระบบ เพราะในหน้าประกาศช่องโหว่ของ Core มีทั้งปัญหาหน่วยความจำและปัญหาการระบุตัวตนของการเชื่อมต่อ ซึ่งเป็นเรื่องที่ควรให้ผู้ดูแลประเมินกับระบบจริง ไม่ใช่ดูเลขรุ่นแล้วผ่านไป (GitHub)

สรุป 30 วินาที: เกิดอะไรขึ้น

รุ่นนี้เป็น security release หรือรุ่นที่ออกมาเพื่อแก้ปัญหาความปลอดภัย ไม่ได้มีแค่ความสามารถใหม่ ประกาศทางการระบุจำนวนประกาศความปลอดภัยของ Core และ Security รวมกันเป็น 10 รายการ และบทสรุปของ daily.dev วันที่ 22 ตุลาคม 2026 ก็รายงานตัวเลขเดียวกัน อย่างไรก็ดี บทสรุปนั้นไม่ได้ทำให้เรารู้รายละเอียดทางเทคนิคของทั้งสิบรายการเพิ่มขึ้น (Micronaut, daily.dev)

ทางอัปเดตที่ผู้พัฒนาระบุมีสามสาย เลือกให้ตรงกับโครงการที่ใช้อยู่ ไม่จำเป็นต้องตีความว่าทุกทีมต้องย้ายรุ่นใหญ่ในงานเดียวกัน (Micronaut)

สายที่ใช้อยู่รุ่นเป้าหมายตามประกาศส่วนประกอบที่ระบุ
Framework 5Framework 5.2.3Core 5.2.17 และ Security 5.4.1
Framework 4Platform 4.10.22Core 4.10.33 และ Security 4.18.1
Framework 3Core 3.10.17ประกาศระบุว่ารวมการแก้ไขความปลอดภัยเหล่านี้

ตารางนี้อ้างตามประกาศวันที่ 20 ตุลาคมโดยตรง ส่วน daily.dev สรุปเส้นทางสำหรับสาย 4 และ 3 สอดคล้องกัน ผู้ที่ยังอยู่สายเก่าจึงมีรุ่นเป้าหมายให้ตรวจสอบ ไม่ควรปล่อยงานค้างเพียงเพราะยังไม่พร้อมวางแผนย้ายไป Framework 5 (Micronaut, daily.dev)

ทำไมเรื่องนี้เกี่ยวกับคุณ

Micronaut คือเฟรมเวิร์ก Java หรือชุดเครื่องมือพื้นฐานสำหรับสร้างแอป เหมาะกับ microservice ซึ่งหมายถึงการแบ่งระบบออกเป็นบริการย่อย โดยมีจุดเด่นเรื่องเริ่มทำงานเร็วและใช้หน่วยความจำน้อย สำหรับข่าวนี้ ส่วนที่ต้องสนใจเป็นพิเศษคือ Core ซึ่งเป็นส่วนหลัก และ Security ซึ่งเป็นส่วนด้านความปลอดภัย เพราะประกาศรุ่นระบุว่าทั้งสองส่วนได้รับการแก้ไข (Micronaut)

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

สำหรับเจ้าของธุรกิจ ผมแนะนำให้แยกคำว่า “มีแพตช์แล้ว” ออกจาก “ระบบเราใช้แพตช์แล้ว” แพตช์หมายถึงการแก้ไขซอฟต์แวร์ แต่ประกาศจากโครงการยืนยันได้เพียงว่ามีรุ่นแก้ไขให้ใช้ ยังต้องให้ทีมตรวจว่ารุ่นนั้นถูกนำไปประกอบและใช้งานในบริการจริงหรือยัง โดยรุ่นเป้าหมายสำหรับแต่ละสายมีระบุไว้ชัดเจนในประกาศนี้ (Micronaut)

ถ้าเป็นทีมไอทีในไทยที่ใช้ Micronaut ผมแนะนำให้ตรวจบริการที่เปิดรับการเชื่อมต่อจากอินเทอร์เน็ตและใช้ micronaut-security ก่อน เป็นการจัดลำดับงานตรวจสอบตามบริบทของระบบ ไม่ใช่การกล่าวว่าบริการกลุ่มนี้ถูกโจมตีแล้ว ข่าวที่ให้มาไม่ได้ระบุเหตุโจมตีจริงหรือจำนวนผู้เสียหาย

ทำงานยังไง

เลข Framework, Core และ Security ไม่จำเป็นต้องเท่ากัน รุ่น Framework 5.2.3 ในข่าวนี้ประกอบด้วย Core 5.2.17 และ Security 5.4.1 อีกทั้งยังรวม Data 5.2.3, Object Storage 3.1.1 และ Serialization 3.2.5 ด้วย ดังนั้นการเห็นเลข 5.2.3 เพียงจุดเดียวจึงยังไม่ใช่หลักฐานว่าอ่านรุ่นของทุกส่วนครบแล้ว (Micronaut)

ในงานพัฒนา จะมีคำว่า BOM หรือ Bill of Materials หมายถึงรายการกำหนดรุ่นของชุดส่วนประกอบ ส่วน Platform คือชุดรุ่นที่ใช้จัดการส่วนประกอบให้ไปด้วยกัน คำแนะนำในทางปฏิบัติคือเริ่มจากตรวจว่าระบบใช้รายการกำหนดรุ่นชุดใด แล้วอัปเดตตามสายที่โครงการระบุ สำหรับสาย 4 ประกาศใช้ชื่อเป้าหมายว่า Micronaut Platform 4.10.22 โดยตรง (Micronaut)

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

คำว่า dependency คือส่วนประกอบซอฟต์แวร์ที่แอปนำมาใช้ ส่วน transitive dependency คือส่วนประกอบที่ถูกนำเข้ามาต่อผ่านอีกส่วนหนึ่ง ผมแนะนำให้ดูรายการที่เครื่องมือสร้างโปรแกรมเลือกใช้จริงด้วย mvn dependency:tree สำหรับ Maven หรือ gradle dependencies สำหรับ Gradle ทั้งสองคำสั่งใช้ประกอบการตรวจรุ่น ไม่ใช่การทดสอบว่าระบบปลอดช่องโหว่ทั้งหมด

ส่วนข้อมูลช่องโหว่ที่มีให้ดูจาก GitHub บอกภาพความเสี่ยงได้หลายแบบ เช่น โปรแกรมฝั่งรับข้อมูลอาจใช้หน่วยความจำเพิ่มโดยไม่มีขีดจำกัดจนหยุดทำงาน และเซิร์ฟเวอร์ HTTP/3 ซึ่งเป็นรูปแบบหนึ่งของการสื่อสารเว็บ อาจผูกข้อมูลการเชื่อมต่อที่เข้ารหัสและใบรับรองของลูกค้าอีกรายเข้ากับคำขอผิดรายการ รายละเอียดเหล่านี้ช่วยกำหนดหัวข้อทดสอบ แต่รายการที่ให้มายังไม่พอจับคู่กับการแก้ไขทั้งสิบรายการอย่างครบถ้วน (GitHub)

จุดสังเกต: เลขรุ่นเดียวครอบคลุมหลายงาน แต่วันประกาศไม่ได้ตรงกันทั้งหมด

จุดที่ผมอยากให้สะดุดตาคือ ข่าวออกรุ่นลงวันที่ 20 ตุลาคม 2026 ขณะที่รายการใหม่หลายรายการในหน้า GitHub Security Advisories ระบุวันเผยแพร่ 22 ตุลาคม 2026 เราจึงควรแยกวันออกรุ่นกับวันเผยแพร่ประกาศช่องโหว่ ไม่ควรใช้วันที่ใดวันที่หนึ่งแทนอีกวันที่โดยอัตโนมัติ (Micronaut, GitHub)

อีกจุดคือก่อนหน้านี้ก็มีรุ่นด้านความปลอดภัยแล้ว หน้า Security Announcements ระบุ Framework 5.2.2 เมื่อ 7 ตุลาคม และ Framework 4.10.21 กับ Framework 3.10.15 เมื่อ 9 ตุลาคม 2026 การที่ทีมเพิ่งอัปเดตเมื่อต้นเดือนจึงยังไม่ตอบว่าตอนนี้ตรงกับรุ่นเป้าหมายในประกาศวันที่ 20 ตุลาคมหรือไม่ ต้องตรวจเลขอีกครั้ง (Micronaut Security Announcements)

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

เรื่องเงิน / ผลกระทบ

ผลกระทบที่มีหลักฐานในชุดข้อมูลนี้อยู่ในระดับลักษณะปัญหาของซอฟต์แวร์ หน้า GitHub มีทั้งหน่วยความจำรั่ว การสะสมข้อมูลจนหน่วยความจำไม่พอ และการจัดการการเชื่อมต่อที่ผิดไปจากที่ควรเป็น หน่วยความจำรั่วหมายถึงทรัพยากรถูกใช้แล้วไม่ได้คืนอย่างถูกต้อง ส่วน JVM คือสภาพแวดล้อมที่ใช้รันโปรแกรม Java ซึ่งรายการหนึ่งระบุว่าอาจหยุดทำงานเมื่อหน่วยความจำไม่พอ (GitHub)

สำหรับธุรกิจ ผมเสนอให้ใช้ความต่อเนื่องของบริการเป็นเกณฑ์จัดคิวงาน หากบริการสำคัญมีปัญหา ทีมอาจต้องใช้เวลาไล่สาเหตุและประสานผู้เกี่ยวข้อง การจองเวลาทดสอบและอัปเดตจึงเป็นงานบริหารความเสี่ยงที่จับต้องได้ แต่ยังไม่ควรนำข่าวนี้ไปคำนวณยอดเสียหาย เพราะแหล่งข่าวไม่ได้ให้จำนวนเหตุขัดข้อง ระยะเวลาหยุดบริการ หรือมูลค่าความเสียหาย

รุ่นนี้ยังมีการแก้บั๊กที่อาจเกี่ยวกับการทดสอบงานประจำด้วย Core แก้ปัญหาการขอข้อมูลบางช่วงผ่าน HTTP การอัปโหลดแบบส่งข้อมูลต่อเนื่อง และการตอบกลับแบบต่อเนื่อง ส่วน Data แก้การแปลงข้อมูลพิกัด รวมถึงลำดับลองจิจูดกับละติจูดของข้อมูล MySQL WKT ทีมที่ใช้ความสามารถเหล่านี้ควรรวมกรณีใช้งานจริงไว้ในแผนทดสอบ (Micronaut)

Serialization ซึ่งเป็นส่วนแปลงข้อมูลให้อยู่ในรูปแบบส่งต่อหรือจัดเก็บ มีการแก้การรองรับเมธอดที่ติดคำกำกับ @JsonProperty และ @JsonGetter พร้อมให้ตัวแปลงที่ผู้ใช้กำหนดเองมีลำดับเหนือกว่าตัวที่สร้างให้อัตโนมัติสำหรับชนิดข้อมูลเดียวกัน ผมแนะนำให้ทีมที่กำหนดการแปลงข้อมูลเองตรวจผลลัพธ์ก่อนส่งขึ้นใช้งานจริงด้วย เพราะงานนี้มีมากกว่าการเปลี่ยนเลขรุ่น (Micronaut, daily.dev)

ข้อมูลที่ยังไม่ชัด และจุดที่แหล่งข่าวพูดไม่ตรงกัน

จำนวนประกาศตรงกัน แต่รายละเอียดที่เห็นยังไม่ครบชุด ข่าวทางการระบุ 8 รายการใน Core และ 2 รายการใน Security ส่วน daily.dev สรุปรวมเป็น 10 เช่นกัน อย่างไรก็ตาม ข้อความประกาศออกรุ่นที่เราได้รับไม่ได้แจกแจงชื่อ ระดับความรุนแรง หรือรหัส CVE ซึ่งเป็นรหัสอ้างอิงช่องโหว่ ของทั้งสิบรายการ เราจึงไม่ควรเติมข้อมูลเหล่านี้เอง (Micronaut, daily.dev)

หน้า GitHub เป็นรายการประกาศของ Core ไม่ใช่ตารางจับคู่แพตช์ทั้งรุ่น ในข้อความที่ให้มา มีรายการเผยแพร่วันที่ 22 ตุลาคมปะปนกับรายการวันที่ 12 กันยายน 2026 จึงนำจำนวนรายการที่มองเห็นมาสรุปว่าเป็นสิบรายการของรุ่นนี้ทั้งหมดไม่ได้ และข้อมูลดังกล่าวก็ไม่ได้ให้รายละเอียดของประกาศสองรายการใน Micronaut Security (GitHub)

ตัวอย่างที่อ่านได้จากหน้านั้น ได้แก่ ปัญหาโปรแกรมรับข้อมูลเหตุการณ์ต่อเนื่องสะสมข้อมูลจน JVM หยุดทำงาน ระดับ High หรือสูง ปัญหา HTTP/3 ผูกข้อมูลเซสชันและใบรับรองของลูกค้าผิดคำขอ ระดับ High และปัญหาหน่วยความจำรั่วระหว่างการรับไฟล์บางกรณี ระดับ Moderate หรือปานกลาง ตัวอย่างเหล่านี้ช่วยอธิบายลักษณะความเสี่ยงเท่านั้น เรายังยืนยันจากข้อความที่ได้รับไม่ได้ว่าแต่ละรายการอยู่ในแปดรายการของ Core 5.2.17 อย่างไร (GitHub)

วันที่ต่างกันมีบริบทต่างกัน Micronaut ลงวันที่ออกรุ่นเป็น 20 ตุลาคม daily.dev ลงวันที่บทสรุปเป็น 22 ตุลาคม และรายการใหม่หลายรายการบน GitHub ก็เผยแพร่ 22 ตุลาคม 2026 ข้อมูลนี้ยังไม่พอสรุปว่าฝ่ายใดลงวันผิด และไม่มีเวลาเผยแพร่พร้อมเขตเวลาให้แปลงเป็นเวลาไทย จึงใช้วันที่ตามแหล่งข้อมูลเท่านั้น (Micronaut, daily.dev, GitHub)

สิ่งที่ยังไม่ทราบจากชุดข้อมูลนี้ ได้แก่ ช่วงรุ่นที่ได้รับผลกระทบของแต่ละช่องโหว่ เงื่อนไขของปัญหา Security สองรายการ การถูกโจมตีจริง และองค์กรไทยที่ได้รับผลกระทบ ผู้ดูแลควรตามรายละเอียดจากหน้า GitHub Security Advisories ที่ให้มาเพื่อประกอบการประเมิน โดยไม่ใช้ข่าวสรุปแทนการตรวจเงื่อนไขของระบบตนเอง (GitHub)

แล้วเราควรทำอะไร

ขั้นตอนต่อไปนี้เป็นคำแนะนำของผมสำหรับนำประกาศไปทำงานต่อ ส่วนเลขรุ่นเป้าหมายยึดตามผู้พัฒนา ไม่ได้หมายความว่าระบบทุกแบบมีความเสี่ยงเท่ากัน

ผู้ใช้ทั่วไป พนักงาน นักศึกษา และผู้ปกครอง

  1. หากเกี่ยวข้องกับการประสานงานระบบ ให้ส่งข่าวนี้ให้ผู้ดูแลและขอให้ตรวจว่ามี Micronaut อยู่ในบริการหรือไม่ เริ่มจากหาคนรับผิดชอบให้เจอก่อน
  2. หากบริการขัดข้อง ให้แจ้งอาการที่พบตามปกติ อย่าสรุปเองว่าเกิดจากช่องโหว่ในข่าว เพราะแหล่งข้อมูลไม่ได้ผูกเหตุขัดข้องของบริการใดเข้ากับรุ่นนี้
  3. รอข้อมูลจากผู้ดูแลว่าต้องมีการดำเนินการฝั่งผู้ใช้หรือไม่ ข้อมูลที่มีอยู่ยังไม่ได้ระบุขั้นตอนแก้ไขบนอุปกรณ์ส่วนบุคคล

เจ้าของกิจการและผู้จัดการทีม

  1. ขอรายการบริการที่ใช้ Micronaut พร้อมสายรุ่น ผู้ดูแล และสถานะการตรวจสอบ ให้แยกข้อมูลที่ทราบแล้วออกจากข้อมูลที่ยังต้องถามผู้รับจ้าง
  2. ให้ทีมเริ่มตรวจบริการที่เปิดรับจากอินเทอร์เน็ตและใช้ micronaut-security ก่อน พร้อมจัดเวลาทดสอบและนำรุ่นแก้ไขขึ้นใช้งาน
  3. ขอหลักฐานปิดงานเป็นรุ่นที่ใช้งานจริงกับผลทดสอบ ไม่ควรใช้เพียงข้อความว่าได้รับทราบข่าวแล้ว

นักพัฒนา Java และผู้ดูแลระบบ

  1. ตรวจ BOM หรือ Platform และรุ่นที่กำหนดแยกในโครงการ จากนั้นเลือกเป้าหมายให้ตรงสาย: Framework 5.2.3, Platform 4.10.22 สำหรับสาย 4 หรือ Core 3.10.17 สำหรับสาย 3 ตามประกาศ (Micronaut)
  2. อัปเดตรายการกำหนดรุ่น แล้วตรวจส่วนประกอบทางอ้อมด้วย mvn dependency:tree หรือ gradle dependencies โดยดูว่ามีการกำหนดรุ่นเองที่ทำให้ยังเลือกส่วนประกอบเก่าหรือไม่
  3. รันชุดทดสอบของแอป รวมการเข้าใช้งานและการกำหนดสิทธิ์ ตลอดจนการรับส่งข้อมูลที่ระบบใช้จริง สำหรับระบบที่ใช้การส่งข้อมูลต่อเนื่องหรือแปลงข้อมูลเอง ให้เพิ่มความใส่ใจตามขอบเขตการเปลี่ยนแปลงที่ประกาศไว้ (Micronaut)
  4. ตรวจรายละเอียดประกาศช่องโหว่ก่อนตีความว่าระบบได้รับผลกระทบข้อใด และติดตามหน่วยความจำ ข้อผิดพลาด และความต่อเนื่องของบริการหลังอัปเดต เป็นการเฝ้าดูระดับสูง ไม่ใช่หลักฐานยืนยันว่าระบบเคยถูกโจมตี (GitHub)
  5. บันทึกรุ่นที่นำขึ้นใช้งาน ผลทดสอบ และวิธีกลับไปยังสถานะก่อนหน้าเผื่อพบปัญหาจากการอัปเดต ให้คนที่รับงานต่อเข้าใจได้โดยไม่ต้องไล่อ่านบทสนทนาทั้งหมด

ผมมองว่า…

ผมมองว่า นี่เป็นงานดูแลความต่อเนื่องของบริการ ไม่ใช่การแข่งขันว่าใครใช้เลขรุ่นใหม่กว่า แต่คือการทำให้แน่ใจว่าการแก้ไขไปถึงระบบที่คนใช้อยู่จริง ข้อนี้เป็นความเห็นของผมจากการที่ประกาศมีทางอัปเดตให้ทั้งสาย 5, 4 และ 3 ทีมจึงควรเริ่มจากทำให้สายที่ดูแลอยู่ได้รับการแก้ไข แล้วค่อยจัดแผนย้ายรุ่นใหญ่ตามข้อจำกัดของงาน (Micronaut)

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

ปิดท้าย: สิ่งที่ต้องจับตา

หลังจากนี้ควรติดตามรายละเอียดของประกาศทั้งสองส่วน โดยเฉพาะการจับคู่รายการกับรุ่นที่ได้รับผลกระทบและรุ่นแก้ไข หน้า GitHub ที่มีในข้อมูลชุดนี้เป็นของ Core ส่วนประกาศออกรุ่นระบุอีกสองรายการใน Security แต่ไม่ได้แจกแจงรายละเอียดให้ครบในข้อความเดียวกัน (GitHub, Micronaut)

สำหรับทีมที่ต้องลงมือวันนี้ จุดหมายที่ตรวจสอบได้คือรู้ว่าตนใช้สายไหน อัปเดตไปยังรุ่นเป้าหมาย ตรวจส่วนประกอบที่ถูกเลือกจริง และทดสอบบริการจนพร้อมใช้งาน ส่วนการติดตามรุ่นถัดไปควรมีเจ้าภาพชัดเจน เพราะหน้า Security Announcements แสดงว่ามีประกาศด้านความปลอดภัยหลายครั้งในเดือนตุลาคมนี้แล้ว (Micronaut Security Announcements)

Recap

  • รับทราบว่า Framework 5.2.3 เป็นรุ่นแก้ความปลอดภัย รวมประกาศ 8 รายการใน Core และ 2 รายการใน Security (Micronaut)
  • ตรวจว่าบริการของตนใช้ Micronaut และอยู่สายรุ่นใด
  • สาย 5 ตรวจเป้าหมาย Framework 5.2.3 พร้อม Core 5.2.17 และ Security 5.4.1 (Micronaut)
  • สาย 4 ใช้เป้าหมาย Platform 4.10.22 ส่วนสาย 3 ใช้ Core 3.10.17 ตามประกาศ (Micronaut)
  • อัปเดต BOM แล้วตรวจรุ่นส่วนประกอบทางอ้อมด้วยเครื่องมือของโครงการ
  • ทดสอบบริการจริง โดยเริ่มตรวจบริการที่เปิดสู่อินเทอร์เน็ตและใช้ micronaut-security ก่อน
  • อ่านรายละเอียดจาก GitHub โดยไม่เหมารายการที่เห็นว่าเป็นสิบรายการของรุ่นนี้ทั้งหมด (GitHub)
  • บันทึกผลทดสอบและรุ่นที่ใช้งานจริง พร้อมติดตามประกาศความปลอดภัยรอบต่อไป