โปรเจกต์ Node.js ออกอัปเดตความปลอดภัยให้กับสาขาเวอร์ชัน 26.x, 24.x และ 22.x เมื่อวันที่ 21 ที่ผ่านมา (เวลาท้องถิ่น) โดยเวอร์ชันที่แก้ไขแล้วคือ 26.12.1, 24.22.1 และ 22.23.4 ตามลำดับ
ทีม Node.js ระบุในประกาศว่าครั้งนี้เปิดเผยช่องโหว่รวม 10 รายการ แบ่งเป็นระดับความเสี่ยงสูง 4 รายการ ระดับกลาง 3 รายการ และระดับต่ำ 3 รายการ ขอบเขตผลกระทบแตกต่างกันไปในแต่ละสาขาเวอร์ชัน ผู้ที่ใช้งาน Node.js จึงควรตรวจสอบเป็นรายกรณีว่าเวอร์ชันของตนเข้าข่ายช่องโหว่ใดบ้าง
Node.js เป็นรันไทม์สำหรับรันจาวาสคริปต์บนฝั่งเซิร์ฟเวอร์ ซึ่งถูกใช้งานอย่างแพร่หลายทั้งในระบบหลังบ้านของบริการเว็บและเครื่องมือพัฒนาซอฟต์แวร์ ความบกพร่องในตัวรันไทม์เองจึงส่งผลกระทบต่อบริการทั้งหมดที่ทำงานอยู่บนนั้นได้
ช่องโหว่ที่น่าจับตามากที่สุดคือ CVE-2026-111497 ซึ่งอยู่ในระดับความเสี่ยงสูง เป็นข้อบกพร่องแบบเขียนข้อมูลเกินขอบเขต (out-of-bounds write) ในตัวถอดรหัส (decoder) ของ Brotli หนึ่งในวิธีการบีบอัดข้อมูล ซึ่งอาจนำไปสู่การรันโค้ดจากระยะไกล (Remote Code Execution หรือ RCE) ได้ โดยส่งผลกระทบต่อทั้งสามสาขาเวอร์ชัน การรันโค้ดจากระยะไกลหมายถึงการที่ผู้โจมตีสามารถสั่งรันคำสั่งที่ตนสร้างขึ้นบนระบบเป้าหมายจากที่ห่างไกลได้
ช่องโหว่ระดับความเสี่ยงสูงอีก 2 รายการ รายการหนึ่งเกี่ยวกับปัญหาการจัดการอักขระ null ในกระบวนการค้นหาชื่อโดเมน (DNS) และอีกรายการเป็นข้อบกพร่องที่อาจเลี่ยงการตรวจสอบชื่อโฮสต์ (hostname verification) ของใบรับรอง TLS ได้ ซึ่งการตรวจสอบชื่อโฮสต์คือขั้นตอนยืนยันว่าเซิร์ฟเวอร์ที่กำลังเชื่อมต่อนั้นตรงกับเซิร์ฟเวอร์ที่ระบุไว้ในใบรับรองหรือไม่
การอัปเดตครั้งนี้ยังรวมการแก้ไขปัญหาการจัดการการตอบสนองของการเชื่อมต่อแบบต่อเนื่อง (persistent connection) ปัญหาการซ้ำกันของแคชตัวเลขสุ่ม และปัญหาที่เกี่ยวข้องกับโมเดลสิทธิ์การเข้าถึง นอกจากนี้ ส่วนประกอบที่ใช้งานร่วมกันอย่าง c-ares, OpenSSL และ Undici ก็ได้รับการอัปเดตด้วยเช่นกัน
ทีม Node.js ย้ำว่าเวอร์ชันที่สิ้นสุดการสนับสนุนแล้วก็อาจได้รับผลกระทบจากช่องโหว่ความปลอดภัยเช่นกัน จึงแนะนำให้ผู้ใช้งานอัปเดตเป็นเวอร์ชันล่าสุดที่ยังอยู่ในการสนับสนุน เนื่องจากเวอร์ชันที่แก้ไขแล้วออกมาเพียง 3 สาขาเท่านั้น ระบบที่ยังใช้เวอร์ชันที่หมดการสนับสนุนจึงยากที่จะได้รับการแก้ไขอย่างเป็นทางการ นอกจากจะอัปเกรดข้ามสาขาเวอร์ชัน
ก่อนหน้านี้ก็มีการแจ้งเตือนด้านความปลอดภัยของสภาพแวดล้อมการรันฝั่งเซิร์ฟเวอร์จาก PHP เช่นกัน โดยPHP ได้แก้ไขช่องโหว่ร้ายแรง 2 รายการที่เปิดให้รันโค้ดจากระยะไกลได้โดยไม่ต้องยืนยันตัวตน ซึ่งเวอร์ชันที่แก้ไขแล้วคือ 8.5.12, 8.4.27, 8.3.36 และ 8.2.35 โดยทาง PHP เรียกร้องให้ผู้ใช้งานอัปเกรดโดยเร็วที่สุด
ยังไม่มีรายงานหรือการยืนยันว่าช่องโหว่ครั้งนี้ถูกนำไปใช้โจมตีจริงกับตลาดซื้อขายสินทรัพย์ดิจิทัลหรือบริการกระเป๋าเงินดิจิทัลแต่อย่างใด ผู้ดูแลบริการควรตรวจสอบเวอร์ชัน Node.js ที่ตนใช้งานอยู่ก่อน แล้วเปรียบเทียบกับเวอร์ชันที่แก้ไขแล้วของสาขานั้นๆ
ความคิดเห็น 0