ยังไม่ตาย! นักวิจัยพบ Backdoor ตัวร้าย XZ Utils ยังคงแฝงตัวใน Docker Hub เสี่ยงกระทบซัพพลายเชนซอฟต์แวร์วงกว้าง
ดูเหมือนว่ามหากาพย์ช่องโหว่ซัพพลายเชนที่ร้ายแรงที่สุดครั้งหนึ่งในประวัติศาสตร์โอเพนซอร์สจะยังไม่จบลงง่ายๆ เมื่อล่าสุดมีงานวิจัยใหม่จาก Binarly REsearch บริษัทด้านความปลอดภัยเฟิร์มแวร์ ค้นพบว่า Docker image หรือไฟล์ต้นแบบสำหรับสร้างคอนเทนเนอร์จำนวนมากบน Docker Hub ยังคงมีโค้ดของ Backdoor หรือประตูหลังสุดอันตรายอย่าง XZ Utils แฝงตัวอยู่ แม้ว่าเหตุการณ์จะถูกค้นพบมานานกว่าหนึ่งปีแล้วก็ตาม
เรื่องที่น่ากังวลยิ่งกว่านั้นคือ มี Image อื่นๆ ถูกสร้างขึ้นโดยใช้ Image ที่ติดเชื้อเหล่านี้เป็นฐาน (Base Images) ส่งผลให้ช่องโหว่ถูก "แพร่กระจายต่อไปเป็นทอดๆ" ขยายความเสี่ยงในวงกว้างออกไปอีก โดยทาง Binarly ระบุว่าได้ค้นพบ Image ที่มี Backdoor ดังกล่าวรวมทั้งสิ้น 35 รายการ ตอกย้ำถึงความเสี่ยงที่ห่วงโซ่อุปทานซอฟต์แวร์ (Software Supply Chain) กำลังเผชิญ
ย้อนรอยช่องโหว่ XZ Utils (CVE-2024-3094)
เหตุการณ์ช่องโหว่ XZ Utils ถูกเปิดโปงครั้งแรกเมื่อปลายเดือนมีนาคม 2024 หลังจากนักพัฒนาซอฟต์แวร์รายหนึ่งได้ค้นพบความผิดปกติในไลบรารี XZ Utils เวอร์ชัน 5.6.0 และ 5.6.1 ซึ่งเป็นเครื่องมือบีบอัดไฟล์ที่ใช้กันอย่างแพร่หลายในระบบปฏิบัติการ Linux
การวิเคราะห์ในเวลาต่อมาเผยให้เห็นความจริงที่น่าตกใจว่า นี่ไม่ใช่บั๊กธรรมดา แต่เป็นการโจมตีที่วางแผนมาอย่างแยบยล โดยแฮกเกอร์ที่ใช้นามแฝงว่า "Jia Tan" ได้ใช้เวลาเกือบ 2 ปีในการสร้างความน่าเชื่อถือและเข้ามาเป็นผู้ดูแลหลัก (Maintainer) ของโปรเจกต์โอเพนซอร์สนี้ ก่อนที่จะฝัง Backdoor เข้าไปในโค้ด
Backdoor ดังกล่าวถูกออกแบบมาให้ทำงานเมื่อมีการเชื่อมต่อผ่าน SSH โดยจะเข้ามาขัดขวางกระบวนการตรวจสอบสิทธิ์ ทำให้ผู้โจมตีที่มีกุญแจส่วนตัว (Private Key) ที่ถูกต้อง สามารถเข้าควบคุมเครื่องเซิร์ฟเวอร์จากระยะไกลในระดับผู้ดูแลระบบ (Root) ได้ทันที ซึ่งผู้เชี่ยวชาญชี้ว่านี่เป็นการโจมตีระดับรัฐสนับสนุน (State-sponsored operation) ที่มีความซับซ้อนและวางแผนมานานหลายปี
"สิ่งตกค้างทางประวัติศาสตร์" หรือ "ระเบิดเวลาที่รอวันทำงาน"
จากการตรวจสอบล่าสุดของ Binarly พบว่ามี Debian Docker image จำนวน 12 รายการที่ยังคงมี Backdoor ของ XZ Utils อยู่ และมี Image อื่นๆ ที่นำ Image เหล่านี้ไปใช้พัฒนาต่ออีกทอดหนึ่ง
แม้ว่า Binarly จะได้รายงานเรื่องนี้ไปยังผู้ดูแลของ Debian แล้ว แต่กลับได้รับคำตอบว่า พวกเขา "ตั้งใจที่จะคงไฟล์เหล่านี้ไว้เพื่อเป็นสิ่งตกค้างทางประวัติศาสตร์ (historical curiosity)" โดยให้เหตุผลว่าโอกาสที่จะเกิดการโจมตีสำเร็จในสภาพแวดล้อมของคอนเทนเนอร์นั้นมีน้อยมาก เพราะต้องอาศัยปัจจัยหลายอย่าง เช่น การเปิดให้เข้าถึง SSH จากเครือข่ายภายนอก
อย่างไรก็ตาม Binarly แย้งว่า การทิ้ง Docker image ที่มี Backdoor ซึ่งสามารถเข้าถึงผ่านเครือข่ายได้ให้ดาวน์โหลดแบบสาธารณะ ถือเป็นความเสี่ยงด้านความปลอดภัยที่สำคัญอย่างยิ่ง
"เหตุการณ์ Backdoor ของ xz-utils แสดงให้เห็นว่า แม้โค้ดอันตรายจะมีช่วงเวลาที่ใช้งานได้สั้นๆ แต่มันสามารถตกค้างอยู่ใน Official Container Image ได้เป็นเวลานาน และสามารถแพร่กระจายต่อไปในระบบนิเวศของ Docker ได้" รายงานระบุ
เหตุการณ์นี้ชี้ให้เห็นถึงความจำเป็นของการมีระบบตรวจสอบความปลอดภัยในระดับไบนารี (Binary-level Monitoring) อย่างต่อเนื่อง ซึ่งเป็นสิ่งที่ลึกซึ้งกว่าแค่การตรวจสอบหมายเลขเวอร์ชันของซอฟต์แวร์เพียงอย่างเดียว เพื่อป้องกันไม่ให้โค้ดอันตรายเหล่านี้เล็ดลอดและแพร่กระจายไปในระบบพัฒนาและใช้งานซอฟต์แวร์ได้อย่างเงียบๆ
#ดรกฤษฎาแก้ววัดปริง #ไทยสมาร์ทซิตี้ #SmartCity #DRKRIT #สมาร์ทซิตี้คลิก