ช่องโหว่ XSS แบบ Stored ที่ซ่อนตัวในที่แจ้ง
ช่องโหว่ที่เพิ่งเปิดเผยใน Zimbra Collaboration Suite กำลังทำให้ทีมความปลอดภัยต้องตรวจสอบบันทึกการแพตช์อย่างละเอียดอีกครั้ง โดยมีรหัส CVE-2025-66376 เป็นข้อบกพร่องแบบ Stored Cross-Site Scripting (XSS) ใน Classic Web Client ซึ่งเป็นอินเทอร์เฟซแบบ HTML รุ่นเก่าที่ยังคงใช้กันในหลายองค์กรควบคู่กับเว็บแอปสมัยใหม่
สิ่งที่ทำให้บั๊กนี้โดดเด่นคือเหยื่อแทบไม่ต้องทำอะไรเลยเพื่อให้เกิดการทำงาน ตามที่เปิดเผยไว้ แค่เปิดอีเมลที่สร้างขึ้นเป็นพิเศษใน Classic UI ก็เพียงพอให้โค้ดที่ผู้โจมตีควบคุมทำงานภายในเซสชันเว็บเมลที่ยืนยันตัวตนแล้วของผู้ใช้ จากจุดนั้นผู้โจมตีสามารถขโมยโทเค็นเซสชัน รหัสผ่านที่เบราว์เซอร์บันทึกไว้ และแม้แต่รหัสสำรองสำหรับการยืนยันตัวตนสองขั้นตอน (2FA scratch codes) ซึ่งเป็นรหัสสำรองที่ผู้ใช้พึ่งพาเมื่อวิธี 2FA หลักไม่พร้อมใช้งาน
การโจมตีทำงานอย่างไร
ช่องโหว่ Stored XSS เป็นอันตรายอย่างยิ่งเพราะไม่จำเป็นต้องคลิกหรือดาวน์โหลดเพย์โหลดแยกต่างหาก เพย์โหลดจะถูกฝังลงในเนื้อหาที่เมลไคลเอนต์แสดงผลโดยตรง ในกรณีนี้คือผ่านคำสั่ง Cascading Style Sheets (CSS) ที่แทรกลงในอีเมล Zimbra Classic Web Client ไม่สามารถตรวจสอบและทำความสะอาดเนื้อหานี้ได้ ทำให้ CSS สามารถเรียกใช้ JavaScript ในบริบทของเซสชันกล่องจดหมายของผู้ใช้ที่ล็อกอินอยู่
เมื่อโค้ดนั้นทำงาน มันจะได้รับสิทธิ์ทุกอย่างที่เซสชันของเหยื่อเข้าถึงได้อยู่แล้ว นั่นคือเหตุผลที่มันสามารถเข้าถึงได้เกินกว่ากล่องจดหมายและขโมยโทเค็นการยืนยันตัวตน ข้อมูลประจำตัวที่เบราว์เซอร์เก็บไว้ และรหัสสำรอง 2FA ที่เก็บไว้สำหรับการกู้คืนบัญชี ในทางปฏิบัติ สิ่งนี้เปลี่ยนอีเมลที่ถูกเปิดเพียงฉบับเดียวให้กลายเป็นการครอบครองบัญชีแบบสมบูรณ์ โดยที่เหยื่อไม่ต้องป้อนรหัสผ่านหรือคลิกลิงก์น่าสงสัยเลย
นี่ไม่ใช่ครั้งแรกที่การจัดการเนื้อหาฝังของ Classic Web Client ก่อให้เกิดปัญหา ก่อนหน้านี้ Zimbra ต้องแพตช์ปัญหาเกี่ยวกับการทำความสะอาด HTML และไฟล์ ICS ในอินเทอร์เฟซเดียวกัน ซึ่งเป็นรูปแบบที่ตอกย้ำว่าทำไมองค์กรที่ยังใช้ไคลเอนต์รุ่นเก่านี้จึงต้องเผชิญความเสี่ยงซ้ำซากจนกว่าจะรีบแพตช์หรือย้ายออกจากมันโดยสิ้นเชิง
ใครบ้างที่ต้องดำเนินการ
ช่องโหว่นี้มีผลกับ Zimbra Collaboration (ZCS) 10 ก่อนเวอร์ชัน 10.0.18 และ 10.1 ก่อนเวอร์ชัน 10.1.13 Zimbra ได้ปล่อยบิลด์ที่แก้ไขแล้ว และคำแนะนำด้านความปลอดภัยของบริษัทระบุว่าแพตช์นี้แก้ไขปัญหาช่องโหว่ Stored XSS ที่สำคัญใน Classic Web Client องค์กรที่ใช้เวอร์ชันที่ได้รับผลกระทบควรมองว่านี่เป็นการอัปเดตลำดับความสำคัญสูง แทนที่จะรอจัดตารางในกรอบเวลาบำรุงรักษาปกติครั้งถัดไป เพราะการโจมตีไม่ต้องการการโต้ตอบจากผู้ใช้เลยนอกจากการเปิดอีเมล
เนื่องจากข้อบกพร่องนี้อยู่ในระดับการเข้าถึงเซสชัน การแพตช์เพียงอย่างเดียวอาจไม่เพียงพอหากมีบัญชีถูกยึดก่อนที่จะติดตั้งอัปเดต ผู้ดูแลระบบควรพิจารณาตรวจสอบกิจกรรมการเข้าสู่ระบบล่าสุด หมุนเวียนโทเค็นเซสชัน และออก Scratch Codes 2FA ใหม่ให้กับบัญชีที่สามารถเข้าถึง Classic UI ในช่วงเวลาที่ช่องโหว่ยังไม่ได้รับการแพตช์
สิ่งที่คุณควรรู้
หากคุณใช้ Zimbra เว็บเมล ไม่ว่าจะเป็นส่วนตัว ธุรกิจขนาดเล็ก หรือเป็นส่วนหนึ่งของโครงสร้างพื้นฐานอีเมลขององค์กรขนาดใหญ่ ช่องโหว่นี้เป็นเครื่องเตือนใจว่าโทเค็นยืนยันตัวตนและรหัสสำรองจะปลอดภัยเท่ากับซอฟต์แวร์ที่ใช้แสดงกล่องจดหมายของคุณเท่านั้น การยืนยันตัวตนสองขั้นตอนเป็นการป้องกันที่แข็งแกร่งต่อการโจมตีด้วยรหัสผ่าน แต่บั๊ก Stored XSS ที่สามารถขโมย Scratch Codes ได้โดยตรงจากเซสชันเบราว์เซอร์แสดงให้เห็นว่า 2FA ไม่ใช่ยาวิเศษหากตัวเว็บไคลเอนต์พื้นฐานถูกบุกรุกเสียเอง
สำหรับผู้ใช้ทั่วไป ความเสี่ยงในทางปฏิบัติขึ้นอยู่กับว่าผู้ให้บริการอีเมลหรือแผนกไอทีของคุณใช้ Zimbra หรือไม่ โดยเฉพาะอย่างยิ่งว่า Classic Web Client ยังคงเปิดใช้งานอยู่หรือไม่ คนส่วนใหญ่ไม่จำเป็นต้องดำเนินการใด ๆ นอกจากรอให้ผู้ดูแลระบบติดตั้งแพตช์ แต่สำหรับผู้ดูแลระบบและทีมไอทีแล้ว นี่คือสิ่งที่ต้องลงมือทำทันที
ข้อสรุปที่นำไปปฏิบัติได้
- ตรวจสอบว่า Zimbra ที่คุณใช้งานเป็น ZCS 10.0.18, 10.1.13 หรือใหม่กว่า หากรุ่นเก่ากว่านี้มีความเสี่ยงต่อ CVE-2025-66376
- หากองค์กรของคุณยังพึ่งพา Classic Web Client ให้จัดลำดับความสำคัญในการแพตช์ก่อนแผนการย้ายไปใช้อินเทอร์เฟซสมัยใหม่ที่คุณอาจวางแผนไว้
- หลังจากแพตช์แล้ว ตรวจสอบบันทึกการยืนยันตัวตนล่าสุดเพื่อหาความผิดปกติ และพิจารณาหมุนเวียนโทเค็นเซสชันสำหรับบัญชีที่ใช้งานในช่วงเวลาที่มีความเสี่ยง
- ออกรหัส 2FA Scratch Codes ใหม่ให้กับบัญชีใด ๆ ที่มีสัญญาณของกิจกรรมน่าสงสัย เพราะรหัสสำรองที่ถูกขโมยสามารถข้ามการป้องกันแบบสองขั้นตอนได้โดยสิ้นเชิง
- จากนี้ไปให้ถือว่าคำแนะนำความปลอดภัยแบบ Stored XSS จากผู้ให้บริการอีเมลของคุณเป็นเรื่องสำคัญลำดับสูง เพราะนี่ไม่ใช่ครั้งแรกที่ไคลเอนต์รุ่นเก่าของ Zimbra ต้องการแพตช์ทำความสะอาดฉุกเฉิน
การก้าวนำหน้าช่องโหว่แบบนี้ขึ้นอยู่กับวินัยในการแพตช์ตามรอบและการรู้ว่าแท้จริงแล้วองค์กรของคุณใช้เว็บไคลเอนต์ตัวไหนเป็นประจำทุกวัน การสละเวลาไม่กี่นาทีเพื่อยืนยันเวอร์ชัน Zimbra ตอนนี้ถูกกว่าการกู้คืนกล่องจดหมายที่ถูกบุกรุกในภายหลังมาก




