สรุปสั้น

นักวิจัยจากบริษัท Sonatype เปิดเผยการโจมตีแบบ supply chain ครั้งใหญ่บน Arch User Repository (AUR) ซึ่งเป็นแหล่งรวมแพ็กเกจที่ชุมชนดูแลสำหรับ Arch Linux โดยผู้โจมตียึดแพ็กเกจที่ถูกละทิ้ง (orphaned) กว่า 400 รายการ แล้วแก้ไข PKGBUILD ให้ดาวน์โหลดและติดตั้งมัลแวร์ขโมยข้อมูล (credential stealer) ที่เขียนด้วยภาษา Rust พร้อม eBPF rootkit เพิ่มเติมสำหรับบางเป้าหมาย

มัลแวร์ทำงานโดยซ่อนคำสั่งติดตั้งแพ็กเกจ npm ที่เป็นอันตรายชื่อ atomic-lockfile ไว้ใน PKGBUILD เมื่อผู้ใช้สร้างแพ็กเกจ คำสั่ง npm install จะถูกรันและดาวน์โหลด payload ที่ขโมยข้อมูลเบราว์เซอร์ SSH key โทเคน GitHub, npm, Slack, Discord, Teams และข้อมูล Docker credentials แล้วส่งข้อมูลออกผ่านเครือข่าย Tor คลื่นการโจมตีรอบที่สองใช้ bun install js-digest แทน บริษัท Sonatype ติดตามภัยคุกคามนี้ภายใต้รหัส Sonatype-2026-003775 ที่มีความรุนแรง CVSS 8.7

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

เว็บไซต์ The Hacker News รายงานเมื่อวันที่ 12 มิถุนายน พ.ศ. 2569 ว่า นักวิจัยจากบริษัท Sonatype ค้นพบการโจมตีแบบ supply chain ขนาดใหญ่บน Arch User Repository (AUR) โดยผู้โจมตีใช้กลยุทธ์ยึดแพ็กเกจที่เจ้าของเดิมละทิ้งไปแล้ว ซึ่ง AUR อนุญาตให้ผู้ใช้คนอื่น adopt แพ็กเกจ orphaned ได้

ผู้โจมตี adopt แพ็กเกจที่ถูกละทิ้งกว่า 400 รายการ แล้วแก้ไขไฟล์ PKGBUILD ซึ่งเป็นสคริปต์ที่ AUR ใช้สร้างแพ็กเกจ โดยเพิ่มคำสั่ง npm install atomic-lockfile เข้าไปในขั้นตอน build เมื่อผู้ใช้รัน makepkg เพื่อสร้างแพ็กเกจ คำสั่งดังกล่าวจะดาวน์โหลดและติดตั้งแพ็กเกจ npm ที่เป็นอันตรายซึ่งทำหน้าที่เป็น dropper สำหรับ payload หลัก

payload หลักเป็น credential stealer ที่เขียนด้วยภาษา Rust ออกแบบมาให้ทำงานอย่างเงียบ ๆ บนระบบ Linux โดยรวบรวมข้อมูลจากหลายแหล่ง ได้แก่ข้อมูลเบราว์เซอร์ (cookies, saved passwords, browsing history) จากทั้ง Chromium-based และ Firefox, SSH private key, โทเคนการเข้าถึงของ GitHub และ npm, session token ของ Slack, Discord และ Teams รวมถึง Docker credentials และ config files จากนั้นข้อมูลทั้งหมดจะถูกบีบอัดและส่งออกผ่านเครือข่าย Tor เพื่อปกปิดที่อยู่เซิร์ฟเวอร์ C2

สำหรับเป้าหมายบางรายที่ถูกพิจารณาว่ามีค่า ผู้โจมตีจะ deploy eBPF rootkit เพิ่มเติมที่ทำงานในระดับ kernel เพื่อซ่อนกระบวนการของมัลแวร์และ intercept network traffic คลื่นการโจมตีรอบที่สองที่ตรวจพบในภายหลังเปลี่ยนมาใช้ bun install js-digest แทน npm install atomic-lockfile

วิธีการโจมตี

ห่วงโซ่การโจมตีเริ่มจากการ adopt แพ็กเกจ AUR ที่ถูกละทิ้ง แล้วแก้ไข PKGBUILD เพิ่มคำสั่ง npm install atomic-lockfile ในฟังก์ชัน build() หรือ package() เมื่อผู้ใช้รัน makepkg คำสั่ง npm จะดาวน์โหลด payload จาก npm registry แพ็กเกจ atomic-lockfile ทำหน้าที่เป็น dropper ดาวน์โหลด Rust binary จากเซิร์ฟเวอร์ C2 ผ่าน Tor จากนั้น binary จะสแกนระบบเพื่อรวบรวม credentials ทั้งหมด บีบอัดด้วย zstd แล้วส่งกลับผ่าน Tor hidden service สำหรับเป้าหมายที่มีค่าสูง จะมีการ deploy eBPF rootkit ที่ hook syscall เพื่อซ่อนไฟล์และกระบวนการของมัลแวร์จากเครื่องมือตรวจจับ SHA-256 ของ payload หลักคือ 6144d433f8a0316869877b5f834c801251bbb936e5f1577c5680878c7443c98b

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

Arch Linux มีฐานผู้ใช้ที่เติบโตในไทย โดยเฉพาะในกลุ่มนักพัฒนาซอฟต์แวร์ ผู้ดูแลระบบ และนักวิจัยด้านความปลอดภัยที่ใช้ Arch เป็นระบบปฏิบัติการหลัก AUR เป็นแหล่งแพ็กเกจที่ชุมชนดูแลซึ่งไม่ผ่านการตรวจสอบจาก Arch Linux อย่างเป็นทางการ ผู้ใช้ไทยที่ติดตั้งแพ็กเกจจาก AUR โดยไม่ตรวจสอบ PKGBUILD ก่อนอาจตกเป็นเหยื่อ ข้อมูลที่ถูกขโมย เช่น SSH key และโทเคน GitHub อาจถูกใช้เพื่อเข้าถึงระบบขององค์กรไทยต่อไป

คำแนะนำ

ผู้ใช้ Arch Linux ที่ใช้ AUR ควรตรวจสอบ PKGBUILD ของทุกแพ็กเกจก่อนสร้างเสมอ โดยสังเกตคำสั่งที่ผิดปกติเช่น npm install หรือ bun install ที่ไม่เกี่ยวข้องกับแพ็กเกจนั้น ควรตรวจสอบว่าแพ็กเกจที่ใช้อยู่เปลี่ยนเจ้าของเมื่อเร็ว ๆ นี้หรือไม่ หากสงสัยว่าติดมัลแวร์ ควรเปลี่ยน SSH key, โทเคน GitHub/npm/Slack/Discord ทั้งหมด ล้าง Docker credentials และตรวจสอบล็อกการเข้าถึงบัญชีต่าง ๆ ทันที ควรใช้ AUR helper ที่แสดง diff ของ PKGBUILD ก่อนสร้าง เช่น yay หรือ paru ที่เปิด --diff ไว้เป็นค่าเริ่มต้น

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