สรุปสั้น
บริษัท Microsoft ได้ระบุว่าเหตุโจมตี supply chain ของ Mastra AI ที่เกิดขึ้นเมื่อไม่นานมานี้ ซึ่งทำให้ npm package มากกว่า 140 ตัวถูกบุกรุก เป็นฝีมือของกลุ่มแฮ็กเกอร์เกาหลีเหนือชื่อ Sapphire Sleet หรือที่รู้จักในชื่อ BlueNoroff การระบุตัวนี้เกิดขึ้นหลังจาก Microsoft เปิดเผยก่อนหน้านี้ในสัปดาห์เดียวกันว่าผู้โจมตีได้ยึดบัญชี maintainer ของ npm และใช้บัญชีนั้นเผยแพร่อัปเดต package ที่เป็นอันตราย โดย Microsoft ประเมินด้วยความเชื่อมั่นสูงว่ากิจกรรมนี้เป็นของ Sapphire Sleet ซึ่งเป็นผู้ก่อภัยคุกคามระดับรัฐของเกาหลีเหนือที่มุ่งเป้าโจมตีภาคการเงินเป็นหลัก
การโจมตีเริ่มขึ้นเมื่อผู้ก่อภัยคุกคามเข้ายึดบัญชี maintainer ของ npm ชื่อ “ehindero” ที่มีสิทธิ์เผยแพร่ทั่วทั้งสภาพแวดล้อม package ของ Mastra แล้วใช้บัญชีนั้นเผยแพร่อัปเดตอันตรายสำหรับ package กว่า 140 ตัวในสโคป @mastra โดยฝัง dependency อันตรายชื่อ “easy-day-js” ซึ่งเป็น typosquat (การพิมพ์ชื่อเลียนแบบ) ของไลบรารี JavaScript ที่ถูกกฎหมายและใช้กันแพร่หลายอย่าง dayjs เมื่อ package ที่ถูกบุกรุกถูกติดตั้ง dependency อันตรายจะรัน post-install hook ที่ปล่อย malware dropper ลงบนเครื่องของนักพัฒนา โดยมีเป้าหมายสุดท้ายเพื่อขโมย credential, API key, authentication token และกระเป๋าเงินคริปโตเคอร์เรนซี
รายละเอียดข่าว
เว็บไซต์ BleepingComputer รายงานเมื่อวันที่ 20 มิถุนายน 2569 ว่าบริษัท Microsoft ได้เชื่อมโยงเหตุโจมตี supply chain ของ Mastra AI ที่ทำให้ npm package กว่า 140 ตัวถูกบุกรุก เข้ากับกลุ่มแฮ็กเกอร์เกาหลีเหนือ Sapphire Sleet (BlueNoroff) โดย Microsoft ระบุในการอัปเดตเมื่อวันที่ 19 มิถุนายนว่า “Microsoft ประเมินด้วยความเชื่อมั่นสูงว่ากิจกรรมนี้เป็นของ Sapphire Sleet ผู้ก่อภัยคุกคามระดับรัฐของเกาหลีเหนือที่มุ่งเป้าภาคการเงินเป็นหลัก”
ตามข้อมูลของ Microsoft การโจมตีเริ่มต้นเมื่อผู้ก่อภัยคุกคามเข้ายึดบัญชี maintainer ของ npm ชื่อ “ehindero” ที่มีสิทธิ์เผยแพร่ทั่วทั้งสภาพแวดล้อม package ของ Mastra จากนั้นใช้บัญชีดังกล่าวเผยแพร่อัปเดตอันตรายสำหรับ package กว่า 140 ตัวในสโคป @mastra ที่ฝัง dependency อันตรายชื่อ “easy-day-js” ซึ่งเป็น typosquat ของไลบรารี dayjs ที่ใช้กันแพร่หลาย เมื่อ package ที่ถูกบุกรุกถูกติดตั้ง dependency อันตรายจะกระตุ้น post-install hook ที่รันสคริปต์ dropper แบบ obfuscated ปิดการตรวจสอบใบรับรอง Transport Layer Security (TLS) ติดต่อโครงสร้าง command-and-control (C2) ที่ผู้โจมตีควบคุม ดาวน์โหลด payload ระยะที่สอง และรันเป็นโปรเซสซ่อนแบบ detached

วิธีการโจมตี
payload ระยะที่สองที่ถูกดาวน์โหลดมาเป็น infostealer แบบข้ามแพลตฟอร์ม (cross-platform) ที่ออกแบบมาเพื่อโจมตีระบบ Windows, Linux และ macOS โดย implant จะเก็บข้อมูลเกี่ยวกับ host ประวัติการใช้เบราว์เซอร์ แอปพลิเคชันที่ติดตั้ง และโปรเซสที่ทำงานอยู่ พร้อมตรวจสอบว่ามีส่วนขยายเบราว์เซอร์ของกระเป๋าเงินคริปโตเคอร์เรนซี 166 ตัวติดตั้งอยู่หรือไม่ รวมถึง MetaMask, Phantom, Coinbase Wallet, Binance Wallet และ TronLink
malware ยังใช้วิธีการคงอยู่ (persistence) ที่แตกต่างกันตามระบบปฏิบัติการ เช่น Windows Registry Run keys บน Windows, LaunchAgents บน macOS และ systemd service บน Linux โดย Microsoft ระบุว่าระบบที่ติดต่อกับเซิร์ฟเวอร์ C2 ของผู้โจมตีมีกิจกรรมต่อเนื่องที่ใช้กลยุทธ์ซึ่งเคยเชื่อมโยงกับ Sapphire Sleet มาก่อน รวมถึงการติดตั้ง PowerShell backdoor ที่กลุ่มนี้เคยใช้ กลไก persistence เพิ่มเติม การตั้งค่า exclusion ใน Microsoft Defender และ Windows service อันตรายที่ให้สิทธิ์ระดับ SYSTEM โดย Microsoft อธิบายว่า “PowerShell backdoor, เทคนิคการโจมตี (tradecraft) และโครงสร้าง C2 เหล่านี้เคยถูกใช้โดย Sapphire Sleet ในแคมเปญก่อนหน้า”
Sapphire Sleet เป็นผู้ก่อภัยคุกคามที่ได้รับการสนับสนุนจากรัฐเกาหลีเหนือ ซึ่งเป็นที่รู้จักจากแคมเปญขโมยคริปโตเคอร์เรนซี ส่วนขยายเบราว์เซอร์อันตราย ข้อเสนองานปลอม และการบุกรุก software supply chain ที่ออกแบบมาเพื่อขโมย credential และทรัพย์สินคริปโต โดย Microsoft ระบุว่ากลุ่มนี้ยังเป็นผู้รับผิดชอบต่อเหตุโจมตี supply chain แยกต่างหากบน Axios HTTP client เมื่อเดือนเมษายน 2569 อีกด้วย
ผลกระทบต่อไทย
นักพัฒนาซอฟต์แวร์และทีม DevOps ในไทยพึ่งพา npm และ ecosystem ของ JavaScript/Node.js อย่างกว้างขวางในการพัฒนาแอปพลิเคชัน การโจมตีแบบ supply chain ที่ฝัง malware ลงใน package ยอดนิยมเป็นภัยที่อันตรายเป็นพิเศษ เพราะนักพัฒนามักติดตั้ง dependency โดยอัตโนมัติและไว้ใจ package จากแหล่งที่เคยเชื่อถือ การที่ผู้โจมตีใช้ typosquat อย่าง easy-day-js เลียนแบบ dayjs ที่นิยมมาก ทำให้ตรวจจับได้ยาก องค์กรไทยที่ใช้ Mastra AI หรือมี dependency เชื่อมโยงในห่วงโซ่ มีความเสี่ยงที่เครื่องนักพัฒนาจะถูกฝัง infostealer ซึ่งขโมยทั้ง credential, API key, token และกระเป๋าคริปโต อันอาจนำไปสู่การบุกรุกระบบภายในและการสูญเสียทรัพย์สินดิจิทัล โดยเฉพาะกลุ่มที่ทำงานเกี่ยวกับ blockchain และคริปโตที่เป็นเป้าหมายหลักของกลุ่มเกาหลีเหนือ
คำแนะนำ
นักพัฒนาและองค์กรควรตรวจสอบทันทีว่ามีการติดตั้ง package ในสโคป @mastra หรือ dependency “easy-day-js” หรือไม่ และหากพบให้ถือว่าเครื่องถูกบุกรุก ต้องหมุนเปลี่ยน credential, API key และ token ทั้งหมด รวมถึงย้ายทรัพย์สินในกระเป๋าคริปโตไปยังกระเป๋าใหม่ที่ปลอดภัย ควรตรึงเวอร์ชัน (pin) ของ dependency และใช้ lockfile เพื่อป้องกันการอัปเดตอัตโนมัติไปยังเวอร์ชันอันตราย พิจารณาใช้เครื่องมือ software composition analysis (SCA) และสแกน dependency เพื่อตรวจหา typosquat และ package ที่น่าสงสัย ควรปิดหรือควบคุมการรัน post-install/install script ของ npm (เช่น ใช้ –ignore-scripts) และเปิดใช้ multi-factor authentication กับบัญชี maintainer ทุกบัญชี นอกจากนี้ควรเฝ้าระวังพฤติกรรมผิดปกติบนเครื่องนักพัฒนา เช่น การปิด TLS verification การติดต่อ C2 และการสร้าง persistence ผ่าน Registry, LaunchAgents หรือ systemd
Indicators of Compromise (IoCs)
| Indicator | ประเภท | คำอธิบาย |
|---|---|---|
| easy-day-js | npm package | dependency อันตราย typosquat ของ dayjs |
| @mastra/* | npm scope | package กว่า 140 ตัวที่ถูกฝัง malware |
| ehindero | npm account | บัญชี maintainer ที่ถูกยึด |
| Sapphire Sleet / BlueNoroff | Threat actor | กลุ่มแฮ็กเกอร์รัฐเกาหลีเหนือ |
