มัลแวร์ Hades สามารถล่อลวงระบบรักษาความปลอดภัยแบบ AI ได้

Miasma เข้าสู่ระบบได้แล้ว เวิร์มก็จะทำการขโมยข้อมูลรหัสผ่าน (Credential) ของระบบคลาวด์ (Cloud) ส่งผลให้คลังดิจิทัล (Repo หรือ Repository) ที่ติดเชื้อสามารถรันโค้ดเพื่อแพร่กระจายเข้าสู่ระบบได้ ถ้าโฟลเดอร์ถูกเชื่อมต่ออยู่กับระบบหลอมรวมเครื่องมือสำหรับนักพัฒนา หรือ Integrated Development Environments (IDEs) ด้วยการใช้งานเครื่องมือผู้ช่วย AI อัจฉริยะ (AI Agent)

โดยแคมเปญของมัลแวร์ Hades ก็จะมีความใกล้เคียงกัน ผ่านทางการใช้แพ็คเกจที่ถูกสอดไส้มัลแวร์ผ่านการโจมตีห่วงโซ่อุปทาน อย่าง ensmallen, mflux-streamlit, nhmpy, ppkt2synergy, embiggen, gpsea, และ pyphetools เป็นตัวนำพาเข้าสู่ระบบของเหยื่อ

สำหรับขั้นตอนในการโจมตีระบบของเหยื่อนั้นเรียกว่าเรียบง่าย โดยจะเริ่มต้นจากการรันสคริปท์ที่ผ่านการสอดไส้โค้ดสำหรับตีรวนระบบตรวจจับ (Obfuscation) ที่อยู่ภายในแพ็คเกจแบบ Python ข้างต้น ในชื่อไฟล์ว่า  __init__.py ซึ่งไฟล์นี้จะเป็นส่วนสำคัญที่ช่วยให้ Python สามารถจดจำแพ็คเกจและนำเข้าโมดูลที่จำเป็น โดยหลังจากที่สามารถเข้าถึงตัวระบบได้แล้ว แฮกเกอร์ที่อยู่เบื้องหลังแคมเปญนี้ก็จะทำการปล่อยไฟล์สำหรับรัน (Binary) ในรูปแบบ Bun Runtime ที่ถูกคอมไพล์ไว้ล่วงหน้าลงมาบนระบบ แล้วจัดการรันไฟล์มัลแวร์ (Payload) ในรูปแบบ JavaScript ขึ้นมา ซึ่งตัว Bun นั้นจะช่วยอำนวยความสะดวกให้สามารถรัน JavaScript ที่มีความซับซ้อนในสภาพแวดล้อมที่ไม่ได้มีการติดตั้ง Node.js ไว้ได้โดยหลีกเลี่ยงการควบคุมของตัวจัดการแพ็กเกจแบบดั้งเดิมและบันทึก (Log) การทำงานของ Proxy ในเวลาเดียวกันได้ นอกจากนั้นตัวมัลแวร์ตัวนี้ยังมีความสามารถในการ “ดึง” (Scarpe) ผังความเชื่อมโยง (Mapping) ของหน่วยความจำบนระบบปฏิบัติการ Linux ทั้งยังสามารถสร้างเครื่องมือในรูปแบบเดียวกันสำหรับการใช้งานบนระบบปฏิบัติการ Windows และ macOS ได้อีกด้วย ช่วยให้แฮกเกอร์สามารถทำการดึงข้อมูลอ่อนไหว (Sensitive Data) ที่ซ่อนอยู่ภายในระบบออกมาได้โดยง่าย

และความสามารถที่ร้ายกาจที่สุดคือ มัลแวร์ตัวนี้สามารถหลบเลี่ยงระบบการตรวจจับมัลแวร์ด้วย AI แบบ LLM ได้ ด้วยการใช้ชุดข้อความ (Text) ที่ซ่อนไว้อยู่ในส่วนบล็อกบนสุดของไฟล์มัลแวร์ สั่งการให้ตัว AI มองข้าม (Ignore) โค้ดของมัลแวร์ที่ซ่อนอยู่ภายใน (Hidden Code) ทำให้ตัวระบบป้องกันนั้นรายงานว่าไฟล์ของมัลแวร์นั้นสะอาดและปลอดภัย เรียกได้ว่าเป็นการหลอกลวงระบบตรวจจับแบบง่ายดายจนน่าเหลือเชื่อ ซึ่งทางทีมวิจัยกล่าวว่าเป็นวิธีการที่ฉลาดมาก และที่การที่ตัวมัลแวร์สามารถทำเช่นนี้ได้เนื่องมาจากจุดอ่อนอย่างใหญ่หลวงของระบบ AI แบบ LLM นั่นคือ ตัว AI นั้นเปราะบางต่อการหลอกลวงแบบการทำวิศวกรรมทางสังคม (Social Engineering) ทำให้สามารถลวงให้ทำงานผิดพลาดได้ง่ายมากถ้ารู้วิธีที่ถูกต้อง

ในส่วนโครงสร้างพื้นฐาน (Infrastructure) สำหรับการติดต่อกับเซิร์ฟเวอร์ควบคุม (C2 หรือ Command and Control) นั้นจะมีการใช้ 3 ช่องทางแยกจากกันผ่านทางโครงสร้างพื้นฐานของทาง GitHub อีกทีหนึ่ง เพื่อให้การจราจรของข้อมูล (Data Traffic) การติดต่อสื่อสารระหว่างมัลแวร์และเซิร์ฟเวอร์นั้นสามารถเนียนไปการกับจราจรของข้อมูลปกติได้อย่างแนบเนียน โดยรหัสผ่านที่ถูกขโมยมานั้นจะถูกเข้ารหัส (Encryption) และบันทึกไว้บนเครื่อง (Local) และลักลอบส่งออก (Exfiltration) ผ่านทาง Repository พร้อมระบุรายละเอียด (Description) ว่า “Hades — The End for the Damned”

ทางทีมวิจัยยังตรวจพบอีกว่าการแพร่กระจายตัวเองภายในเครือข่าย หรือ Lateral Movement ของมัลแวร์ตัวนี้นั้นมีการใช้ประโยชน์จากเทคนิคหลายอย่างที่ถูกพัฒนาขึ้นมาเพื่อปกป้องตัวระบบเอง อย่างเช่น Secure Shell (SSH) และ Secure Copy Protocol (SCP), OpenID Connect (OIDC), และ Supply-chain Levels for Software Artifacts (SLSA) ตัวอย่างเช่น ขณะที่มัลแวร์ทำงานอยู่ในตัวเรียกใช้งาน (Runner) บน Workflow ของ GitHub Actions ตัวมัลแวร์จะทำการตรวจหาตัวแปร (Variable) ของ OIDC แล้วจึงจัดการลัดเลาะผ่านการตรวจสอบนโยบายเอกลักษณ์ของรีจิสตรี (Registry Signature Policy) แล้วจึงสร้างชุดข้อมูล SLSA ที่ผ่านการเซ็นลายเซ็นดิจิทัลแบบเข้ารหัสด้วย Sigstore จากนั้นจึงทางการดึงไลบราลีเป้าหมาย และยิง (Inject) สคริปท์ลวง (Obfuscated Script) และตัว Payload แบบ JavaScript ลงไป จากนั้นจึงทำการเผยแพร่ (Publish) แพ็คเกจปนเปื้อนมัลแวร์ผ่านทาง Repository ของ Python Package Index (PyPI) และ Node Package Manager (npm) เพื่อแพร่กระจายมัลแวร์ต่อไป

ต้นฉบับ :
ที่มา :
Posted in IT