สรุปสั้น

กลุ่มจารกรรมที่ได้รับการสนับสนุนจากรัฐรัสเซียใช้เวลานานหลายเดือนแอบอ่านกล่องอีเมลของหน่วยงานฝั่งตะวันตก ผ่านช่องโหว่ที่ยังไม่มีใครรู้จัก (zero-day) ในไคลเอนต์เว็บเมลของ Zimbra จุดที่น่ากลัวคือเพย์โหลดจะเริ่มทำงานทันทีเพียงแค่เหยื่อ “เปิดอ่าน” อีเมลที่ถูกดัดแปลง โดยไม่ต้องคลิกลิงก์หรือเปิดไฟล์แนบใด ๆ เมื่อทำงานแล้ว มันจะพุ่งเป้าไปที่อีเมล 90 วันย้อนหลัง สมุดที่อยู่อีเมลทั้งองค์กร รหัสผ่านที่บันทึกไว้ในเบราว์เซอร์ และรหัสกู้คืนสำหรับการยืนยันตัวตนสองปัจจัย (2FA) หน่วยงาน NSA, CISA และพันธมิตรได้ออกคำเตือนร่วม (joint advisory) เกี่ยวกับแคมเปญนี้ พร้อมกับงานวิจัยจาก Unit 42 ของบริษัท Palo Alto Networks และบริษัท Proofpoint

ช่องโหว่ดังกล่าวคือ CVE-2025-66376 ซึ่งเป็นช่องโหว่ stored cross-site scripting (XSS — การฝังสคริปต์อันตรายให้รันในเซสชันของเหยื่อ) ใน Classic UI ของ Zimbra โดยอีเมล HTML ที่ถูกสร้างขึ้นเป็นพิเศษจะฉวยใช้การประมวลผลคำสั่ง CSS @import เพื่อรันจาวาสคริปต์ภายในเซสชันเว็บเมลที่ล็อกอินอยู่ ทำให้เพย์โหลดได้สิทธิ์เข้าถึงกล่องเมลเทียบเท่าตัวผู้ใช้เอง คำเตือนร่วมระบุว่ากลุ่มนี้เล็งเป้าและเจาะหน่วยงานรัฐและองค์กรเชิงพาณิชย์ฝั่งตะวันตกผ่าน Zimbra มาตั้งแต่อย่างน้อยเดือนกรกฎาคม 2568 Zimbra ได้แก้ไขช่องโหว่เมื่อวันที่ 6 พฤศจิกายน 2568 และ CISA เพิ่มเข้าแคตตาล็อกช่องโหว่ที่ถูกใช้โจมตีจริง (KEV) เมื่อวันที่ 18 มีนาคม 2569 ส่วน Proofpoint ซึ่งติดตามกลุ่มนี้ในชื่อ TA488 ระบุว่าผู้โจมตีใช้บั๊กนี้เป็นช่องโหว่ที่ยังไม่มีใครรู้จักนานอย่างน้อย 5 เดือนในปี 2568

รายละเอียดข่าว

เว็บไซต์ The Hacker News รายงานเมื่อวันที่ 24 กรกฎาคม 2569 ว่า NSA, CISA และหน่วยงานพันธมิตรได้เผยแพร่คำเตือนร่วมในวันพฤหัสบดี เกี่ยวกับแคมเปญจารกรรมที่กลุ่มซึ่งรัฐรัสเซียหนุนหลังใช้ช่องโหว่ zero-day ใน Zimbra เจาะเข้าอ่านอีเมลของหน่วยงานฝั่งตะวันตก คำเตือนเรียกเทคนิคนี้ว่า “view-based exploit ที่ต้องการเพียงให้ผู้ใช้เปิดดูอีเมลอันตราย” ในไคลเอนต์ที่มีช่องโหว่เท่านั้น

ช่องโหว่ CVE-2025-66376 เป็น stored XSS ใน Classic UI ของ Zimbra กระทบ Zimbra Collaboration เวอร์ชัน 10.0 ก่อน 10.0.18 และ 10.1 ก่อน 10.1.13 ประเด็นที่ถกเถียงกันคือการ “เปิดดู” อีเมลนับเป็น user interaction หรือไม่ โดย NVD ให้คะแนน 6.1 และระบุว่านับ ส่วน MITRE ให้ 7.2 และระบุว่าไม่นับ ขณะที่ Unit 42 เรียกมันว่าเป็นการโจมตีแบบ zero-click ทั้งสามฝ่ายอธิบายพฤติกรรมเดียวกันคือ ข้อความจะรันตัวเองทันทีเมื่อถูกเรนเดอร์ โดยไม่ต้องมีการกระทำอื่นใด

บริษัท Proofpoint ซึ่งติดตามผู้โจมตีในชื่อ TA488 ระบุว่ากลุ่มนี้ใช้บั๊กดังกล่าวเป็นช่องโหว่ที่ยังไม่มีใครรู้จักนานอย่างน้อย 5 เดือนในปี 2568 ก่อนที่แพตช์จะออกมา โดยข้อความถูกส่งจากบัญชี Proton Mail ที่ผู้โจมตีควบคุมและจากที่อยู่อีเมลที่เคยถูกเจาะไว้ก่อนหน้า ใช้เนื้อหาล่อลวงทั่วไป ส่วน Unit 42 ซึ่งติดตามในชื่อ CL-STA-1114 ระบุว่าอีเมลมักถูกแต่งให้ดูเหมือนสรุปข่าวประจำวัน โดยตัว exploit ซ่อนอยู่ในเนื้อความ HTML

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

รายละเอียดช่องโหว่

เทคนิคการโจมตีอาศัยการซ่อนแท็ก svg onload ไว้ในดิว (div) ที่ตั้งค่า display:none แล้วฉีกแท็กออกเป็นชิ้น ๆ ด้วยคำสั่ง @import ปลอมและคอมเมนต์ HTML ซึ่ง Proofpoint เรียกเทคนิคนี้ว่า tag-splitting ตัวกรอง (sanitizer) ของ Zimbra ไม่รู้จักเศษชิ้นส่วนเหล่านี้ว่าเป็นมาร์กอัปที่รันได้ จึงตัดเฉพาะลำดับ @import ออก ทำให้อักขระที่เหลือมาต่อกันกลายเป็น <svg onload=eval(atob(...))> ที่เบราว์เซอร์รันให้ทันที

เพย์โหลดจาวาสคริปต์ที่ Proofpoint ตั้งชื่อว่า ZimReaper จะขโมยโทเคน CSRF และรหัสผ่านที่เบราว์เซอร์เติมอัตโนมัติ ดึงรหัสกู้คืน 2FA และรายละเอียดเวอร์ชัน Zimbra ผ่าน API ของแพลตฟอร์มเอง แล้วส่งข้อมูลออกไปยังโครงสร้างพื้นฐานของผู้โจมตีผ่านการสอบถาม DNS จากนั้นมันจะเดารายชื่อในสมุดที่อยู่รวมขององค์กร (Global Address List) แบบ brute-force โดยไล่ค้นทุกชุดตัวอักษรสองตัวจนได้รายชื่อทั้งหมด และส่งอีเมล 90 วันย้อนหลังของเหยื่อไปยัง C2 ในรูปไฟล์บีบอัด TGZ ที่ร้ายไปกว่านั้น เพย์โหลดยังสร้างรหัสผ่านเฉพาะแอป (app-specific password) ชื่อ ZimbraWeb ผ่าน CreateAppSpecificPasswordRequest ซึ่งเปิดทางเข้าถึง IMAP, POP3 หรือ SMTP ได้โดยไม่ต้องผ่าน 2FA และรหัสผ่านเฉพาะแอปเหล่านี้ยังอยู่รอดแม้จะรีเซ็ตรหัสผ่านหลักแล้ว

ในแง่การระบุตัวผู้โจมตี คำเตือนร่วมระบุชื่อที่ชุมชนใช้เรียกกลุ่มนี้ว่า LAUNDRY BEAR, Void Blizzard, CL-STA-1114 และ TA488 พร้อมเตือนว่าการจับคู่ชื่ออาจไม่ตรงกันหนึ่งต่อหนึ่ง โดย The Hacker News เปรียบเทียบรายการตัวบ่งชี้ (indicator) ของ Unit 42 และ Proofpoint แล้วพบโดเมนเดียวกัน 9 โดเมนในทั้งสองชุด ซึ่งบ่งชี้ว่า CL-STA-1114 และ TA488 ใช้โครงสร้างพื้นฐานเดียวกัน ทั้งนี้ Seqrite ระบุเคสในเดือนมกราคมที่หน่วยงานอุทกวิทยาของรัฐยูเครนว่าเป็นฝีมือ APT28 ด้วยความเชื่อมั่นระดับกลาง ขณะที่หน่วยข่าวกรองเนเธอร์แลนด์ซึ่งตั้งชื่อ LAUNDRY BEAR ถือว่าเป็นคนละกลุ่มกับ APT28

ผลกระทบต่อไทย

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

แม้เป้าหมายที่ระบุในคำเตือนจะเป็นหน่วยงานรัฐและองค์กรฝั่งตะวันตก แต่กลุ่ม APT ของรัฐมักขยายเป้าหมายไปยังประเทศที่มีความสำคัญเชิงภูมิรัฐศาสตร์หรือใช้ระบบเดียวกัน อีกทั้งเทคนิค stored XSS zero-click และการสร้าง app-specific password ที่อยู่รอดหลังรีเซ็ตรหัสผ่าน ยังเป็นบทเรียนสำคัญว่าการแพตช์อย่างเดียวไม่พอ องค์กรไทยที่ใช้ Zimbra ต้องตรวจสอบบัญชีย้อนหลังด้วยว่าถูกฝังรหัสผ่านเฉพาะแอปหรือเปิด IMAP ไว้โดยไม่จำเป็นหรือไม่

คำแนะนำ

ผู้ดูแลระบบควรอัปเกรด Zimbra 10.1 ให้เป็นเวอร์ชันอย่างน้อย 10.1.13 และย้ายระบบที่ยังใช้ 10.0 (ซึ่งสิ้นสุดการสนับสนุนไปแล้วเมื่อ 31 ธันวาคม 2568) ไปยังเวอร์ชัน 10.1 ที่ยังได้รับการสนับสนุน โดยเวอร์ชันล่าสุด 10.1.20 ที่ออกเมื่อ 20 กรกฎาคม 2569 ยังปิดช่องโหว่ stored XSS ใน Classic Web Client เพิ่มอีก 4 รายการ จากนั้นต้องลงมือตรวจสอบบัญชี ทุกกล่องเมลที่เคยเปิดหรือพรีวิวอีเมลที่เข้าข่ายในเซสชัน Classic UI ที่มีช่องโหว่ ควรถูกถือว่าอาจถูกเจาะ ให้รีเซ็ตรหัสผ่าน ยกเลิกเซสชันที่ใช้งานอยู่ และสร้างรหัสกู้คืน 2FA ใหม่

นอกจากนี้ตามคำแนะนำของ Proofpoint และ Seqrite องค์กรควรตรวจล็อก /opt/zimbra/log/audit.log หาการเรียก CreateAppSpecificPassword และลบข้อมูลรับรองตัวตนที่ชื่อ ZimbraWeb ออก ค้นหาบัญชีที่ตั้งค่า zimbraPrefImapEnabled เป็น TRUE โดยไม่มีความจำเป็นทางธุรกิจ ตั้งการแจ้งเตือนสำหรับการเรียก SOAP ไปยัง GetScratchCodesRequest ซึ่งปกติแทบไม่ควรเกิดขึ้น และกรอง DNS หาโดเมน C2 ที่เผยแพร่ พร้อมแจ้งเตือนการค้นหาซับโดเมนแบบสุ่มยาว ๆ ที่เพย์โหลดใช้ในการส่งข้อมูลออก รวมถึงตรวจอีเมลที่ค้างอยู่แต่ยังไม่ถูกเปิด ว่ามีรูปแบบ @import ที่ถูกฉีกเป็นชิ้น ๆ ตามกฎ YARA ที่ Proofpoint เผยแพร่หรือไม่

แหล่งอ้างอิง