แฮ็กเกอร์ใช้ Credential ของ ConnectWise ที่ถูกขโมย เข้าถึงบัญชี Microsoft 365 ของลูกค้า และพาร์ทเนอร์ 173 Tenant

แฮ็กเกอร์ใช้ Credential ของ ConnectWise Cloud Backup ที่ถูกขโมยมา เพื่อลงชื่อเข้าใช้ Microsoft 365 Tenant ของพาร์ทเนอร์ และลูกค้ารวม 173 แห่ง โดยสามารถเข้าถึงระบบผ่านแอปพลิเคชันสำรองข้อมูล เหตุการณ์นี้แสดงให้เห็นว่า Secret ของผู้ให้บริการเพียงรายการเดียวที่รั่วไหล อาจสร้างความเสี่ยงให้กับหลายองค์กรได้ หากแอปพลิเคชันแบบ Multitenant ได้รับสิทธิ์การเข้าถึงระบบในวงกว้างอยู่แล้ว

ผลิตภัณฑ์ที่ได้รับผลกระทบคือ ConnectWise Cloud Backup ซึ่งเดิมใช้ชื่อว่า SkyKick Backup โดย Managed Service Provider (MSP) ใช้แพลตฟอร์มนี้เพื่อปกป้องข้อมูล Microsoft 365 และ Google Workspace ในการดำเนินงานสำรอง และกู้คืนข้อมูล แอปพลิเคชัน Microsoft 365 ดังกล่าวอาจได้รับสิทธิ์เข้าถึง Exchange mailboxes, OneDrive, SharePoint, Teams และข้อมูล Directory

Microsoft Threat Intelligence ยืนยันว่า กำลังติดตามเหตุการณ์ลักษณะ Supply Chain Attack นี้ที่ยังพบการดำเนินการอยู่ ซึ่งเกี่ยวข้องกับ ConnectWise Cloud Backup (เดิมชื่อ SkyKick Backup)

Credential ที่ถูกขโมยถูกนำไปใช้เข้าถึงหลาย Tenant

Huntress ยืนยันว่า API Secret ของผู้ให้บริการถูกขโมยไป และถูกนำไปใช้เข้าถึง Microsoft 365 โดยไม่ได้รับอนุญาต รายงานที่เผยแพร่ในเวลาต่อมาระบุว่า มี Tenant ของพาร์ทเนอร์ และลูกค้าที่ได้รับการยืนยันว่าเกี่ยวข้องกับเหตุการณ์นี้รวม 173 แห่ง

บันทึกการลงชื่อเข้าใช้แสดงการใช้ Client Assertion ซึ่งหมายความว่า Secret ดังกล่าวมาจาก Tenant หลักของผู้ให้บริการ ไม่ใช่รหัสผ่าน หรือการดำเนินการภายในสภาพแวดล้อมของลูกค้าแต่ละราย

ผู้โจมตีใช้ Application ID 506e08f9-6e9a-4da4-942b-a099a03644ae ของ ConnectWise Cloud Backup เมื่อวันที่ 15 ตุลาคม 2026 แอปพลิเคชันดังกล่าวลงชื่อเข้าใช้จาก IP Address 144[.]172[.]64[.]128 และได้รับ Microsoft Graph Access Token ระหว่างเวลา 06:13 ถึง 08:34 UTC

Threat Actor ดำเนินการเข้าถึง Tenant ID ตามลำดับ โดยแต่ละครั้งห่างกันเพียงไม่กี่วินาที ซึ่งบ่งชี้ว่าอาจมีการใช้สคริปต์อัตโนมัติร่วมกับรายชื่อเป้าหมายที่เตรียมไว้ล่วงหน้า

เหตุการณ์นี้ไม่ใช่การลงชื่อเข้าใช้ของผู้ใช้ตามปกติ แต่ผู้โจมตีเข้าใช้ในนามของแอปพลิเคชันที่ได้รับความไว้วางใจ และได้รับ Token ซึ่งมีสิทธิ์ตามที่ลูกค้าเคยอนุมัติไว้แล้ว การดำเนินการดังกล่าวไม่จำเป็นต้องใช้รหัสผ่านของผู้ใช้ หรือผ่านการยืนยัน MFA ตามปกติ เนื่องจากเป็นการใช้ Identity ของแอปพลิเคชันโดยตรง (App-only Identity)

พบการได้รับสิทธิ์ Global Administrator

กิจกรรมที่ร้ายแรงที่สุดถูกตรวจพบใน Tenant ของพาร์ทเนอร์ Huntress รายหนึ่ง โดยแอปพลิเคชันอีกตัวที่ชื่อ ConnectWise Cloud Management – MS Teams ซึ่งมี Application ID 24205314-2b89-4e07-a2a4-579e898a5640 ได้กำหนด Role ระดับ Global Administrator ให้กับตัวเอง

จากนั้นแอปพลิเคชันดังกล่าวใช้สคริปต์ Python เพื่อเพิ่ม Client Secret ใหม่ให้กับแอปพลิเคชันที่ได้รับความไว้วางใจอีก 2 รายการ

Secret ที่เพิ่มเข้าไปถูกกำหนดให้หมดอายุในปี 2028 และอาจเปิดช่องให้ผู้โจมตีกลับเข้ามาในระบบผ่านแอปพลิเคชันที่ได้รับผลกระทบได้อีก

การปิดใช้งานแอปพลิเคชัน ConnectWise ต้นทางไม่ได้ทำให้ Credential ที่ผู้โจมตีเพิ่มไว้ใน App Registration อื่นถูกลบออกไป ด้วยเหตุนี้ ผู้ดูแลระบบจึงต้องตรวจสอบ Secret และ Certificate ของทุกแอปพลิเคชัน ไม่ใช่เฉพาะรายการที่เกี่ยวข้องกับ ConnectWise เท่านั้น

Microsoft Sign-in Log ยังแสดงให้เห็นว่าแอปพลิเคชันตัวที่สองเชื่อมต่อมาจาก Private IPv6 Range fde4:8dba:2600:37ce:6d26:200:a76:*

อย่างไรก็ตาม Huntress เตือนว่า Traffic ที่ถูกต้องตามปกติของ ConnectWise และลูกค้ารายอื่นที่ไม่เกี่ยวข้องก็อาจใช้ช่วง IP ภายใน Microsoft Cloud เดียวกันได้ ดังนั้นจึงไม่ควรใช้ IP Address นี้เพียงอย่างเดียวเป็นหลักฐานยืนยันว่ามีกิจกรรมที่เป็นอันตราย

เหตุการณ์นี้เกิดขึ้นท่ามกลางแนวโน้มการใช้ OAuth และ Service Principal ในทางที่ผิดที่เพิ่มขึ้น ก่อนหน้านี้ Cyber Security News เคยรายงานว่าแฮ็กเกอร์ใช้แอปพลิเคชัน OAuth ใน Microsoft Entra ID เพื่อรักษาการเข้าถึงระบบอย่างต่อเนื่อง (Persistence) แม้ว่าจะมีการรีเซ็ตรหัสผ่านแล้วก็ตาม

อีกหนึ่งการสืบสวนล่าสุดยังครอบคลุมแคมเปญ Password Spraying ที่มีความพยายามลงชื่อเข้าใช้ Microsoft 365 จำนวน 81 ล้านครั้ง โดยใช้ Azure CLI และ Legacy OAuth Flow

ทีมรักษาความปลอดภัยควรตรวจสอบหน้า Service principal sign-ins ภายใน Microsoft Entra Admin Center เนื่องจากหน้าบันทึกการลงชื่อเข้าใช้ของผู้ใช้ตามปกติจะไม่แสดงกิจกรรมประเภทนี้

ผู้ดูแลระบบควรกรองข้อมูลด้วย Application ID ของ Cloud Backup และค้นหา IP Address 144[.]172[.]64[.]128 รวมถึง Public IP Address ที่ผิดปกติ และกิจกรรม Microsoft Graph API ที่ไม่ปกติ

ConnectWise ยังระบุ User Agent ที่ตรวจพบ ได้แก่ Python-urllib/3.12 และ python-requests/2.31

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

หลักฐานที่มีน้ำหนักมากกว่าจะมาจากการเชื่อมโยง User Agent เข้ากับ Source IP, Application ID, การเปลี่ยนแปลง Role และการดำเนินการต่าง ๆ เช่น “Add service principal credentials” หรือ “Update application”

ทีมรักษาความปลอดภัยควรตรวจสอบ Entra Audit Log เพื่อค้นหากิจกรรมที่แอปพลิเคชัน ConnectWise หรือ SkyKick เพิ่ม Role ของ Directory ให้กับตัวเอง

นอกจากนี้ ควรตรวจสอบ Enterprise Application และ App Registration ทุกรายการ เพื่อค้นหา Client Secret หรือ Certificate ที่ถูกเพิ่มเข้ามาตั้งแต่วันที่ 13 ตุลาคม 2026

การไม่พบหลักฐานการเข้าถึงไฟล์ หรืออีเมลใน Log ไม่ได้หมายความว่าจะไม่มีการเปิดเผยข้อมูล เนื่องจากการอ่านข้อมูล Directory บางประเภทผ่าน Microsoft Graph อาจทิ้งหลักฐานการตรวจสอบไว้เพียงเล็กน้อยหรือไม่เหลือหลักฐานที่เป็นประโยชน์เลย

องค์กรที่ได้รับผลกระทบควรปิดใช้งาน Service Principal ของ ConnectWise Cloud Backup และ ConnectWise Cloud Management – MS Teams แต่ไม่ควรลบออก

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

ผู้ดูแลระบบควรลบ Directory Role ที่ไม่ได้รับอนุมัติ ลบ Credential ของแอปพลิเคชันที่ไม่รู้จัก ตรวจสอบข้อยกเว้นของ Conditional Access และคงสถานะปิดใช้งานแอปพลิเคชันที่ได้รับผลกระทบไว้จนกว่า ConnectWise จะยืนยันว่าได้รีเซ็ต Secret ทั้งหมดของผู้ให้บริการแล้ว

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

Huntress ได้เผยแพร่ขั้นตอนการตรวจสอบอย่างละเอียดและ Indicator ที่อัปเดตแล้วในรายงานการสืบสวนทางเทคนิค

ขณะนี้ยังไม่มีการเปิดเผยตัวตนของ Threat Actor ที่อยู่เบื้องหลังเหตุการณ์ดังกล่าว และยังอยู่ระหว่างการตรวจสอบขอบเขตผลกระทบทั้งหมด

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

Indicators of Compromise (IOC)

ที่มา : Cybersecuritynew