มัลแวร์ VOID#GEIST

นักวิจัยด้านความปลอดภัยทางไซเบอร์ได้ค้นพบแคมเปญมัลแวร์หลายขั้นตอนที่ซับซ้อน ซึ่งอาศัยสคริปต์แบบแบตช์ในการส่งเพย์โหลดโทรจันสำหรับการเข้าถึงระยะไกล (RAT) ที่เข้ารหัส แคมเปญนี้มีชื่อว่า VOID#GEIST โดยใช้ RAT หลายตระกูล รวมถึง XWorm, AsyncRAT และ Xeno RAT

ลำดับการโจมตีใช้ประโยชน์จากสคริปต์แบตช์ที่ซ่อนเร้นซึ่งเริ่มต้นลำดับการกระทำที่ออกแบบมาเพื่อหลีกเลี่ยงการตรวจจับ การกระทำเหล่านี้รวมถึงการเรียกใช้สคริปต์แบตช์เพิ่มเติม การจัดเตรียมสภาพแวดล้อมรันไทม์ Python แบบฝังตัวที่ถูกต้อง และการถอดรหัสเพย์โหลดเชลล์โค้ดที่เข้ารหัส เชลล์โค้ดจะถูกเรียกใช้โดยตรงในหน่วยความจำหลังจากถูกฉีดเข้าไปในอินสแตนซ์ต่างๆ ของกระบวนการ explorer.exe ของ Windows โดยใช้เทคนิคที่เรียกว่าการฉีด Early Bird Asynchronous Procedure Call (APC)

การส่งมัลแวร์โดยใช้สคริปต์: รูปแบบภัยคุกคามสมัยใหม่

กลุ่มแฮกเกอร์สมัยใหม่กำลังละทิ้งมัลแวร์แบบไฟล์ปฏิบัติการเดี่ยวแบบดั้งเดิมมากขึ้นเรื่อยๆ และหันมาใช้เฟรมเวิร์กการส่งมอบแบบหลายชั้นที่ใช้สคริปต์ซึ่งเลียนแบบพฤติกรรมของผู้ใช้ที่ถูกต้องตามกฎหมาย แทนที่จะใช้ไฟล์ปฏิบัติการแบบพกพา (PE) แบบเดิม ผู้โจมตีจะสร้างไปป์ไลน์แบบหลายองค์ประกอบที่ผสมผสานเทคโนโลยีและสภาพแวดล้อมการเขียนสคริปต์ที่ถูกต้องตามกฎหมายหลายอย่างเข้าด้วยกัน

ส่วนประกอบทั่วไปที่ใช้ในเฟรมเวิร์กเหล่านี้ ได้แก่:

  • สคริปต์แบบแบตช์ถูกใช้เพื่อควบคุมลำดับการติดเชื้อ
  • คำสั่ง PowerShell ที่ช่วยให้สามารถวางเพย์โหลดได้อย่างแนบเนียน
  • รันไทม์แบบฝังตัวที่ถูกต้องตามกฎหมาย ซึ่งรับประกันความสามารถในการพกพาข้ามระบบ
  • โค้ด Shellcode ดิบจะถูกประมวลผลโดยตรงในหน่วยความจำเพื่อรักษาความต่อเนื่องและการควบคุม

วิธีการดำเนินการแบบไร้ไฟล์นี้ช่วยลดโอกาสในการตรวจจับจากดิสก์ได้อย่างมาก แต่ละขั้นตอนดูค่อนข้างไม่มีอันตรายเมื่อตรวจสอบแยกกัน และมักคล้ายกับกิจกรรมการบริหารจัดการทั่วไป ทำให้ผู้โจมตีสามารถปฏิบัติการภายในสภาพแวดล้อมที่ถูกบุกรุกได้โดยไม่ทำให้เกิดการแจ้งเตือนด้านความปลอดภัยในทันที

การเข้าถึงเบื้องต้นผ่านการฟิชชิ่งและโครงสร้างพื้นฐานของ Cloudflare

จุดเริ่มต้นของการโจมตีเริ่มจากสคริปต์แบตช์ที่เป็นอันตรายซึ่งส่งมาผ่านอีเมลฟิชชิง สคริปต์นี้ถูกดึงมาจากโครงสร้างพื้นฐานที่โฮสต์อยู่บนโดเมน TryCloudflare เมื่อถูกเรียกใช้งาน สคริปต์จะหลีกเลี่ยงการพยายามยกระดับสิทธิ์โดยเจตนา และทำงานอย่างเคร่งครัดภายในขอบเขตสิทธิ์ของผู้ใช้ที่ล็อกอินอยู่ในปัจจุบัน

กลยุทธ์นี้ช่วยให้มัลแวร์สามารถสร้างฐานที่มั่นเริ่มต้นได้โดยกลมกลืนไปกับการใช้งานปกติของผู้ใช้ โดยการหลีกเลี่ยงการกระทำที่ต้องใช้สิทธิ์ระดับสูง การโจมตีจึงลดโอกาสที่จะทำให้เกิดคำเตือนด้านความปลอดภัยหรือการแจ้งเตือนจากผู้ดูแลระบบ

เทคนิคการเบี่ยงเบนความสนใจทางสายตาและการลอบสังหารอย่างเงียบๆ

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

ในขณะเดียวกัน คำสั่ง PowerShell จะถูกเรียกใช้เพื่อเริ่มสคริปต์แบตช์เดิมอีกครั้งด้วยพารามิเตอร์การเรียกใช้งานที่ซ่อนอยู่ การใช้พารามิเตอร์ -WindowStyle Hidden จะป้องกันไม่ให้หน้าต่างคอนโซลปรากฏขึ้น ทำให้มั่นใจได้ว่ากิจกรรมที่เป็นอันตรายจะยังคงถูกซ่อนจากผู้ใช้

การคงอยู่ผ่านการดำเนินการเริ่มต้นระดับผู้ใช้

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

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

กรอบงานการดึงข้อมูลและการถอดรหัสเพย์โหลด

ในขั้นตอนต่อไปของการแพร่กระจาย มัลแวร์จะติดต่อโดเมน TryCloudflare เพื่อดึงส่วนประกอบเพย์โหลดเพิ่มเติมที่บรรจุอยู่ในไฟล์ ZIP ไฟล์เหล่านี้ประกอบด้วยโมดูลที่จำเป็นในการถอดรหัสและเรียกใช้เพย์โหลดมัลแวร์ขั้นสุดท้าย

ไฟล์ที่ดาวน์โหลดมาโดยทั่วไปจะประกอบด้วยส่วนประกอบดังต่อไปนี้:

  • runn.py – โปรแกรมโหลดข้อมูลที่เขียนด้วยภาษา Python ทำหน้าที่ถอดรหัสและแทรกโมดูล shellcode ที่เข้ารหัสแล้วเข้าไปในหน่วยความจำ
  • new.bin – ไฟล์ shellcode ที่เข้ารหัสลับซึ่งเกี่ยวข้องกับ XWorm
  • xn.bin – ไฟล์โค้ดเข้ารหัสที่ใช้เป็นเพย์โหลดของ Xeno RAT
  • pul.bin – เพย์โหลดเชลล์โค้ดที่เข้ารหัสซึ่งตรงกับ AsyncRAT
  • a.json, n.json และ p.json – ไฟล์สำคัญที่ใช้โดยตัวโหลด Python เพื่อถอดรหัสโค้ดที่เป็นอันตราย (shellcode) แบบไดนามิกในระหว่างการทำงาน

การออกแบบแบบแยกส่วนนี้ทำให้ผู้โจมตีสามารถจัดเตรียมเพย์โหลดต่างๆ ได้อย่างอิสระ และเปิดใช้งานเฉพาะเมื่อจำเป็นเท่านั้น

รันไทม์ Python แบบฝังตัวเพื่อความคล่องตัวและการซ่อนตัว

เมื่อแตกไฟล์เก็บถาวรแล้ว มัลแวร์จะติดตั้งรันไทม์ Python ที่ถูกต้องตามกฎหมาย ซึ่งได้มาจาก python.org โดยตรง การฝังตัวแปลภาษาที่ถูกต้องตามกฎหมายนี้จะช่วยขจัดความจำเป็นในการพึ่งพาการติดตั้ง Python ใดๆ ที่อาจมีอยู่แล้วในระบบที่ถูกโจมตี

จากมุมมองของผู้โจมตี ขั้นตอนนี้มีข้อได้เปรียบเชิงกลยุทธ์หลายประการ มัลแวร์จะกลายเป็นสภาพแวดล้อมการทำงานแบบครบวงในตัวเอง ซึ่งสามารถถอดรหัสและฉีดเพย์โหลดได้โดยไม่ต้องพึ่งพาส่วนประกอบภายนอกใดๆ สิ่งนี้ช่วยเพิ่มความสามารถในการพกพาไปยังระบบต่างๆ เพิ่มความน่าเชื่อถือ และช่วยให้การปฏิบัติการเป็นไปอย่างลับๆ โดยใช้ส่วนประกอบซอฟต์แวร์ที่ถูกต้องตามกฎหมาย

การประมวลผลเพย์โหลด RAT หลายตัวในหน่วยความจำ

จากนั้นจะใช้รันไทม์ Python ที่ฝังอยู่เพื่อเรียกใช้สคริปต์โหลดเดอร์ runn.py โหลดเดอร์จะถอดรหัสเชลล์โค้ดที่เกี่ยวข้องกับ XWorm และฉีดเข้าไปในอินสแตนซ์ที่กำลังทำงานของ explorer.exe โดยใช้การฉีด Early Bird APC

ในการติดตั้ง Xeno RAT มัลแวร์จะใช้ไฟล์ไบนารีของ Microsoft ที่ถูกต้องตามกฎหมายชื่อ AppInstallerPythonRedirector.exe ซึ่งใช้ในการเรียกใช้ Python และดำเนินการส่วนประกอบที่จำเป็น เทคนิคการแทรกแบบเดียวกันนี้จะถูกนำมาใช้ซ้ำในการติดตั้ง AsyncRAT ในภายหลัง ทำให้มั่นใจได้ว่าเพย์โหลดทั้งหมดจะถูกดำเนินการในหน่วยความจำโดยไม่ทิ้งไฟล์ปฏิบัติการแบบดั้งเดิมไว้บนดิสก์

ระบบส่งสัญญาณสั่งการและควบคุม และสถาปัตยกรรมแบบโมดูลาร์

ขั้นตอนสุดท้ายของการโจมตีเกี่ยวข้องกับการส่งสัญญาณ HTTP ขนาดเล็กไปยังโครงสร้างพื้นฐานควบคุมและสั่งการ (C2) ที่ผู้โจมตีควบคุมอยู่ ซึ่งโฮสต์อยู่บน TryCloudflare สัญญาณนี้เป็นการยืนยันว่าระบบถูกเจาะระบบสำเร็จแล้วและพร้อมที่จะรับคำสั่งเพิ่มเติม

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

จากมุมมองด้านการตรวจจับ พฤติกรรมบ่งชี้ที่โดดเด่นอย่างหนึ่งที่ปรากฏขึ้นตลอดแคมเปญคือ การแทรกกระบวนการซ้ำๆ เข้าไปใน explorer.exe ในช่วงเวลาสั้นๆ รูปแบบนี้สามารถใช้เป็นสัญญาณสำคัญสำหรับผู้ป้องกันที่พยายามเชื่อมโยงกิจกรรมที่น่าสงสัยในขั้นตอนต่างๆ ของวงจรการโจมตี

มาแรง

เข้าชมมากที่สุด

กำลังโหลด...