หลายปีที่ผ่านมา ตะวันออกกลางยังคงรักษาชื่อเสียงของตนในฐานะแหล่งอุดมสมบูรณ์สำหรับภัยคุกคามขั้นสูงแบบถาวร (APT) ท่ามกลางการตรวจสอบกิจกรรมที่น่าสงสัยเป็นประจำบนระบบของลูกค้าที่มีชื่อเสียงซึ่งบางส่วนอยู่ในภูมิภาคนี้ ESET Research บังเอิญพบกับแบ็คดอร์ที่ซับซ้อนและไม่รู้จักซึ่งเราตั้งชื่อว่า Deadglyph เราได้ชื่อมาจากสิ่งประดิษฐ์ที่พบในประตูหลัง (เช่น 0xตายB001แสดงในด้วย REF _Ref111452440 ชม ตาราง 1
) ควบคู่ไปกับการปรากฏตัวของโฮโมสัญลักษณ์ จู่โจม. เท่าที่เราทราบ นี่คือการวิเคราะห์สาธารณะครั้งแรกเกี่ยวกับแบ็คดอร์ที่ไม่มีเอกสารก่อนหน้านี้ ซึ่งใช้โดยกลุ่มที่แสดงให้เห็นถึงความซับซ้อนและความเชี่ยวชาญที่โดดเด่น จากการกำหนดเป้าหมายและหลักฐานเพิ่มเติม เราถือว่า Deadglyph เป็นกลุ่ม Stealth Falcon APT ที่มีความมั่นใจสูง
สถาปัตยกรรมของ Deadglyph นั้นไม่ธรรมดาเนื่องจากประกอบด้วย ส่วนประกอบการทำงานร่วมกัน - หนึ่งรายการเป็นไบนารี x64 ดั้งเดิม และอีกรายการหนึ่งเป็นแอสเซมบลี .NET การรวมกันนี้ถือว่าผิดปกติเนื่องจากโดยทั่วไปแล้วมัลแวร์จะใช้ภาษาการเขียนโปรแกรมเพียงภาษาเดียวสำหรับส่วนประกอบต่างๆ ความแตกต่างนี้อาจบ่งบอกถึงการพัฒนาองค์ประกอบทั้งสองแยกจากกัน ในขณะเดียวกันก็ใช้ประโยชน์จากคุณสมบัติเฉพาะของภาษาการเขียนโปรแกรมที่แตกต่างกันที่พวกเขาใช้ ภาษาที่แตกต่างกันยังสามารถนำมาใช้เพื่อขัดขวางการวิเคราะห์ได้ เนื่องจากโค้ดแบบผสมนั้นยากต่อการนำทางและแก้ไขข้อบกพร่อง
คำสั่งแบ็คดอร์แบบดั้งเดิมไม่ได้ถูกนำมาใช้ในไบนารีแบ็คดอร์ แต่จะได้รับแบบไดนามิกจากเซิร์ฟเวอร์คำสั่งและการควบคุม (C&C) ในรูปแบบของโมดูลเพิ่มเติม ประตูหลังนี้ยังมีความสามารถหลายอย่างเพื่อหลีกเลี่ยงไม่ให้ถูกตรวจพบ
ในบล็อกโพสต์นี้ เราจะเจาะลึก Deadglyph อย่างละเอียดยิ่งขึ้น และให้การวิเคราะห์ทางเทคนิคของประตูหลังนี้ วัตถุประสงค์ และส่วนประกอบเพิ่มเติมบางส่วนที่เราได้รับ เรายังนำเสนอการค้นพบของเราเกี่ยวกับ Deadglyph ที่ แล็บคอน 2023 การประชุม
ประเด็นสำคัญของบล็อกโพสต์:
- การวิจัยของ ESET ค้นพบประตูหลังที่ซับซ้อนด้วยสถาปัตยกรรมที่ไม่ธรรมดาซึ่งเราตั้งชื่อว่า Deadglyph
- ส่วนประกอบหลักได้รับการเข้ารหัสโดยใช้คีย์เฉพาะเครื่อง
- คำสั่งลับๆ แบบดั้งเดิมถูกใช้งานผ่านโมดูลเพิ่มเติมที่ได้รับจากเซิร์ฟเวอร์ C&C
- เราได้รับสามโมดูลจากหลายโมดูล ได้แก่ ผู้สร้างกระบวนการ โปรแกรมอ่านไฟล์ และผู้รวบรวมข้อมูล
- เราถือว่า Deadglyph เป็นกลุ่ม Stealth Falcon
- นอกจากนี้เรายังพบตัวดาวน์โหลดเชลล์โค้ดที่เกี่ยวข้อง เรายืนยันว่าอาจใช้สำหรับการติดตั้ง Deadglyph ได้
เหยื่อของการแทรกซึมที่วิเคราะห์แล้วนั้นเป็นหน่วยงานของรัฐในตะวันออกกลางที่ถูกบุกรุกเพื่อวัตถุประสงค์ในการจารกรรม ตัวอย่างที่เกี่ยวข้องที่พบใน VirusTotal ก็ถูกอัพโหลดไปยังแพลตฟอร์มสแกนไฟล์จากภูมิภาคนี้ โดยเฉพาะจากกาตาร์ ภูมิภาคเป้าหมายจะแสดงบนแผนที่ REF _Ref143614671 ชม รูป 1
.
Stealth Falcon (หรือที่รู้จักในชื่อ Project Raven หรือ FruityArmor) เป็นกลุ่มภัยคุกคามที่เชื่อมโยงกับสหรัฐอาหรับเอมิเรตส์ ตาม MITER. Stealth Falcon ใช้งานมาตั้งแต่ปี 2012 เป็นที่รู้จักโดยมุ่งเป้าไปที่นักเคลื่อนไหวทางการเมือง นักข่าว และผู้เห็นต่างในตะวันออกกลาง มันถูกค้นพบครั้งแรกและบรรยายโดย Lab พลเมืองซึ่งตีพิมพ์ การวิเคราะห์ ของการรณรงค์โจมตีสปายแวร์ในปี 2016
ในเดือนมกราคม 2019 สำนักข่าวรอยเตอร์เผยแพร่ รายงานการสอบสวน ใน Project Raven ซึ่งเป็นความคิดริเริ่มที่ถูกกล่าวหาว่าจ้างอดีตเจ้าหน้าที่ NSA และมุ่งเป้าไปที่เป้าหมายประเภทเดียวกันกับ Stealth Falcon จากรายงานทั้งสองฉบับนี้ที่อ้างถึงเป้าหมายและการโจมตีเดียวกัน แอมเนสตี้ อินเตอร์เนชั่นแนล ได้ข้อสรุป (แสดงใน REF _Ref144978712 ชม รูป 2
) ว่าจริงๆ แล้ว Stealth Falcon และ Project Raven เป็นกลุ่มเดียวกัน
ในเดือนกันยายน 2019 เรา งานวิจัยที่ตีพิมพ์ บนประตูหลังซึ่งเป็นของ Stealth Falcon ที่ใช้เทคนิคที่ไม่ธรรมดา พื้นหลังการบริการโอนย้ายพอสำหรับการสื่อสารของ C&C ตอนนี้เราเปิดเผยผลลัพธ์ของการวิเคราะห์เชิงลึกเกี่ยวกับสิ่งที่น่าจะเป็นส่วนเสริมใหม่ล่าสุดของชุดเครื่องมือจารกรรมของ Stealth Falcon
ประตูหลัง Deadglyph
ห่วงโซ่การบรรทุกของ Deadglyph ประกอบด้วยส่วนประกอบหลายส่วน ดังภาพประกอบ REF _Ref144978760 ชม รูป 3
. ส่วนประกอบเริ่มต้นคือตัวโหลดเชลล์โค้ดของรีจิสทรี ซึ่งโหลดเชลล์โค้ดจากรีจิสทรี ในทางกลับกัน เชลล์โค้ดที่แตกออกมานี้จะโหลดส่วน x64 ดั้งเดิมของประตูหลัง นั่นก็คือ Executor ต่อมาผู้ดำเนินการจะโหลดส่วน .NET ของประตูหลัง – Orchestrator โดยเฉพาะอย่างยิ่ง ส่วนประกอบเดียวบนดิสก์ของระบบในรูปแบบไฟล์คือส่วนประกอบเริ่มต้น ซึ่งอยู่ในรูปแบบของ Dynamic Link Library (DLL) ส่วนประกอบที่เหลือจะถูกเข้ารหัสและจัดเก็บภายในค่ารีจิสทรีไบนารี
แม้ว่าวิธีการที่แม่นยำของเวคเตอร์การประนีประนอมเริ่มต้นยังไม่ถูกกำหนด แต่ข้อสงสัยของเราก็คือส่วนประกอบของตัวติดตั้งเกี่ยวข้องกับการปรับใช้ส่วนประกอบเพิ่มเติมและสร้างความคงอยู่ภายในระบบ
ในส่วนที่เหลือของส่วนนี้ เราจะวิเคราะห์แต่ละองค์ประกอบ
ตัวโหลดเชลล์โค้ดของรีจิสทรี
องค์ประกอบเริ่มต้นของ Deadglyph คือ DLL ขนาดเล็กที่มีการส่งออกเพียงครั้งเดียวซึ่งมีชื่อว่า 1. ส่วนประกอบนี้ยังคงใช้อยู่ การสมัครรับเหตุการณ์ Windows Management Instrumentation (WMI) และทำหน้าที่เป็นตัวโหลดเชลล์โค้ดของรีจิสทรี มันถูกดำเนินการผ่านทางบรรทัดคำสั่ง rundll32 C:WINDOWSSystem32pbrtl.dll,#1.
ตัวโหลดเชลล์โค้ดของรีจิสทรีเริ่มต้นการดำเนินการโดยการถอดรหัสเส้นทางไปยังเชลล์โค้ดที่เข้ารหัสซึ่งจัดเก็บไว้ในรีจิสทรีของ Windows โดยใช้ RC4 เราสงสัยว่าเส้นทางนั้นไม่ซ้ำกันสำหรับเหยื่อแต่ละคน ในกรณีที่วิเคราะห์ที่นี่ เส้นทางรีจิสทรีคือ:
SoftwareClassesCLSID{5abc7f42-1112-5099-b082-ce8d65ba0c47}cAbRGHLg
คีย์รีจิสทรีรูทเป็นอย่างใดอย่างหนึ่ง hkl or มคอขึ้นอยู่กับว่ากระบวนการปัจจุบันกำลังทำงานด้วยสิทธิ์ระดับสูงหรือไม่ ตรรกะเดียวกันนี้สามารถพบได้ในส่วนประกอบเพิ่มเติม
ต่อจากนี้ ตัวโหลดจะได้รับคีย์ RC4 เฉพาะเครื่องโดยใช้ UUID ของระบบที่ดึงมาจาก ตารางเฟิร์มแวร์ SMBIOS แบบดิบ. เมื่อใช้คีย์นี้ ระบบจะโหลด ถอดรหัส จากนั้นเรียกใช้งานเชลล์โค้ด สิ่งสำคัญคือต้องเน้นว่าแนวทางการรับคีย์นี้ช่วยให้แน่ใจว่าการถอดรหัสที่เหมาะสมจะไม่เกิดขึ้นหากตัวโหลดถูกดำเนินการบนคอมพิวเตอร์เครื่องอื่น
สิ่งที่น่าสนใจคือตัวโหลดสามารถกำหนดค่าได้ด้วยแฟล็กในตัว .ข้อมูล เพื่อใช้คีย์ฮาร์ดโค้ดเพื่อถอดรหัสเชลล์โค้ด แทนที่จะเป็นคีย์เฉพาะเครื่อง
เราพบการโจมตีแบบโฮโมกลิฟที่เลียนแบบ Microsoft Corporation ใน ข้อมูลเวอร์ชัน ทรัพยากรของสิ่งนี้และส่วนประกอบ PE อื่นๆ วิธีการนี้ใช้อักขระ Unicode ที่แตกต่างกันซึ่งมีลักษณะคล้ายกัน แต่ในกรณีนี้ไม่เหมือนกัน กับอักขระดั้งเดิม โดยเฉพาะอักษรกรีกตัวพิมพ์ใหญ่ San (U+03FA, Ϻ) และอักษรซีริลลิกตัวเล็ก O (U+043E, о) ใน Ϻไอซีอาร์оsоฟุตคอร์ปоราตีоn.
เชลล์โค้ดของรีจิสทรี
ประกอบด้วยสองส่วน เชลล์โค้ดของรีจิสทรีประกอบด้วยรูทีนการถอดรหัสและเนื้อหาที่เข้ารหัส ขั้นแรก รูทีนการถอดรหัสจะหมุนแต่ละไบต์ของเนื้อหาที่เข้ารหัสไปทางซ้ายทีละไบต์ (ROL 0x01). ต่อจากนั้น การควบคุมจะถูกถ่ายโอนไปยังเนื้อหาที่ถอดรหัสนี้ เนื้อความที่ถูกถอดรหัสประกอบด้วยตัวโหลด PE และไฟล์ PE ซึ่งส่วนหลังคือ Executor ซึ่งแสดงถึงส่วนดั้งเดิมของประตูหลัง ตัวโหลดนี้มีหน้าที่แยกวิเคราะห์และโหลดไฟล์ PE ที่เกี่ยวข้อง
ผู้ปฏิบัติการ
Executor เป็นส่วน x64 ดั้งเดิมของประตูหลัง Deadglyph ซึ่งทำหน้าที่ดังต่อไปนี้:
- โหลดการกำหนดค่า
- เริ่มต้นรันไทม์. NET
- โหลดส่วน .NET ที่ฝังไว้ของประตูหลัง (Orchestrator) และ
- ทำหน้าที่เป็นห้องสมุดสำหรับ Orchestrator
ขั้นแรก การกำหนดค่าเริ่มต้นสองรายการที่ฝังอยู่ใน .ข้อมูล ส่วนถูกถอดรหัส AES การกำหนดค่าครอบคลุมพารามิเตอร์ต่างๆ รวมถึงคีย์เข้ารหัส การตั้งค่าความปลอดภัยและการหลีกเลี่ยง และจุดเริ่มต้นของส่วนประกอบที่ตามมา
ในระหว่างการดำเนินการครั้งแรก การกำหนดค่าเริ่มต้นทั้งสองนั้นจะถูกจัดเก็บไว้ในรีจิสทรีของ Windows จากที่ซึ่งจะถูกโหลดในการเรียกใช้ครั้งต่อๆ ไป ทำให้สามารถใช้งานการอัปเดตได้ เส้นทางรีจิสทรีสำหรับการกำหนดค่าแต่ละรายการจะถูกสร้างขึ้นด้วยรูปแบบต่อไปนี้:
{HKCU|HKLM}SoftwareClassesCLSID{ }(ค่าเริ่มต้น)
เป็น GUID ที่สร้างขึ้นซึ่งเป็นเอกลักษณ์เฉพาะสำหรับเหยื่อแต่ละราย
ต่อไปนี้ รันไทม์ .NET จะถูกเตรียมใช้งาน จากนั้น Executor RC4 จะถอดรหัสส่วน .NET ของประตูหลังที่เรียกว่า Orchestrator ออร์เคสตราเตอร์ตั้งอยู่ภายใน .rsrc ส่วนของผู้ดำเนินการ การกำหนดค่าระบุวิธีการดำเนินการของ Orchestrator เป็นจุดเข้าใช้งาน นอกจากนี้ยังมีโครงสร้างที่ชัดเจนเพื่ออำนวยความสะดวกในการเข้าถึงฟังก์ชันของผู้บริหารโดย Orchestrator
หลังจากเปิดตัว Orchestrator แล้ว Executor จะทำหน้าที่เป็นไลบรารีสนับสนุนสำหรับ Orchestrator Executor มีฟังก์ชันที่น่าสนใจมากมาย เราจะอธิบายบางส่วนไว้ในส่วนต่อไปนี้ ในบริบทของการใช้งานโดย Orchestrator และโมดูลที่โหลดเพิ่มเติม
Orchestrator
Orchestrator เป็นองค์ประกอบหลักของประตูหลัง Deadglyph ซึ่งเขียนด้วย .NET บทบาทหลักของส่วนประกอบนี้เกี่ยวข้องกับการสร้างการสื่อสารกับเซิร์ฟเวอร์ C&C และการดำเนินการคำสั่ง ซึ่งมักจะอำนวยความสะดวกผ่านบทบาทตัวกลางของผู้ดำเนินการ ตรงกันข้ามกับส่วนประกอบก่อนหน้านี้ Orchestrator มีความซับซ้อน โดยใช้ .NET Reactor ภายในประตูหลังจะเรียกว่า ตัวแทนซึ่งเป็นชื่อทั่วไปสำหรับส่วนของไคลเอ็นต์ในเฟรมเวิร์กหลังการเอารัดเอาเปรียบต่างๆ
การเขียนอักษรย่อ
ขั้นแรก Orchestrator จะโหลดการกำหนดค่าและโมดูลแบบฝังสองตัว โดยแต่ละโมดูลจะมาพร้อมกับชุดการกำหนดค่าของตัวเองจากทรัพยากร ทรัพยากรเหล่านี้ได้แก่ ยุบ บีบอัดและ AES เข้ารหัส อ้างอิงโดยรหัสที่แฮช SHA-1 ลงในชื่อทรัพยากร ภาพรวมของทรัพยากรเหล่านี้มีอยู่ใน REF _Ref111452440 ชม ตาราง 1
.
ตารางที่ 1. รีซอร์ส Orchestrator
ชื่อทรัพยากร |
รหัส (ทศนิยม) |
รหัส (ฐานสิบหก) |
รายละเอียด |
43ed9a3ad74ed7ab74c345a876b6be19039d4c8c |
2570286865 |
0x99337711 |
การกำหนดค่าออร์เคสตรา |
3a215912708eab6f56af953d748fbfc38e3bb468 |
3740250113 |
0xDEEFB001 |
โมดูลเครือข่าย |
42fb165bc9cf614996027a9fcb261d65fd513527 |
3740250369 |
0xDEEFB101 |
การกำหนดค่าโมดูลเครือข่าย |
e204cdcf96d9f94f9c19dbe385e635d00caaf49d |
3735924737 |
0xDEADB001 |
โมดูลจับเวลา |
abd2db754795272c21407efd5080c8a705a7d151 |
3735924993 |
0xDEADB101 |
การกำหนดค่าโมดูลตัวจับเวลา |
การกำหนดค่าของ Orchestrator และโมดูลแบบฝังจะถูกจัดเก็บในรูปแบบ XML ตัวอย่างของการกำหนดค่า Orchestrator แสดงอยู่ใน REF _Ref111452611 ชม
รูป 4
.
คำอธิบายของรายการการกำหนดค่า Orchestrator จะแสดงอยู่ใน REF _Ref111452782 ชม ตาราง 2
.
ตารางที่ 2. รายการคอนฟิกูเรชัน Orchestrator
คีย์ |
รายละเอียด |
k
|
คีย์ AES ที่ใช้สำหรับการกำหนดค่าโมดูลที่มีอยู่ |
a
|
ชื่อวิธีการเริ่มต้นโมดูลเครือข่าย |
b
|
แฟล็กที่เกี่ยวข้องกับโมดูลเครือข่ายที่ไม่รู้จัก |
c
|
ชื่อวิธีการเริ่มต้นโมดูลจับเวลา |
d
|
ตั้งค่าสถานะการเปิดใช้งานคีย์ AES เฉพาะเครื่อง (UUID ระบบ) สำหรับทรัพยากร |
p
|
ID ทรัพยากรโมดูลเครือข่าย |
t
|
ID ทรัพยากรโมดูลตัวจับเวลา |
หลังจากโหลดส่วนประกอบทรัพยากรแล้ว จะมีการสร้างเธรดหลายรายการเพื่อดำเนินงานที่แตกต่างกัน หนึ่งในเธรดเหล่านี้มีหน้าที่รับผิดชอบในการดำเนินการตรวจสอบสภาพแวดล้อม ซึ่งเป็นฟังก์ชันที่นำไปใช้ภายใน Executor อีกเธรดหนึ่งมีไว้สำหรับการสร้างการสื่อสารเป็นระยะกับเซิร์ฟเวอร์ C&C ซึ่งช่วยให้สามารถรับคำสั่งได้ สุดท้ายนี้ ชุดของเธรดสามเธรดถูกใช้เพื่อวัตถุประสงค์ในการรันคำสั่งที่ได้รับ และต่อมาก็ส่งเอาต์พุตใดๆ ที่สร้างขึ้นกลับไปยังเซิร์ฟเวอร์ C&C
เธรดการตรวจสอบสภาพแวดล้อมจะตรวจสอบกระบวนการที่ทำงานอยู่เพื่อระบุกระบวนการที่ไม่ต้องการ เธรดนี้ทำงานกับรายการชื่อกระบวนการที่แตกต่างกันสองรายการ หากตรวจพบกระบวนการในรายการแรก การสื่อสาร C&C และการดำเนินการคำสั่งจะถูกหยุดชั่วคราวจนกว่ากระบวนการที่ไม่ต้องการจะไม่มีอยู่อีกต่อไป หากกระบวนการใดๆ ในรายการที่สองตรงกัน แบ็คดอร์จะปิดและถอนการติดตั้งตัวเองทันที
ไม่มีการกำหนดค่ารายการใดในอินสแตนซ์ที่วิเคราะห์ ดังนั้นเราจึงไม่ทราบว่าโดยทั่วไปแล้วกระบวนการใดที่อาจถูกตรวจสอบ เราเชื่อว่าอาจมีจุดประสงค์เพื่อหลบเลี่ยงเครื่องมือวิเคราะห์ที่สามารถตรวจจับกิจกรรมที่น่าสงสัยและนำไปสู่การค้นพบประตูหลัง
การสื่อสาร
Orchestrator ใช้โมดูลแบบฝังสองตัวสำหรับการสื่อสาร C&C - ตัวจับเวลาและเครือข่าย เช่นเดียวกับ Orchestrator โมดูลเหล่านี้ถูกทำให้สับสนด้วย .NET Reactor การกำหนดค่าสำหรับทั้งสองโมดูลจัดทำโดย Orchestrator ภายใน Orchestrator จะมีการกำหนดค่าที่กำหนดไว้ล่วงหน้าสำหรับโมดูลรวมอยู่ด้วย นอกจากนี้ Orchestrator ยังสามารถโหลดเวอร์ชันการกำหนดค่าที่อัปเดตจากรีจิสทรีได้:
{HKCU|HKLM}SoftwareClassesCLSID{ }
ประตูหลังมีมาตรการความปลอดภัยที่น่าสนใจเกี่ยวกับการสื่อสาร หากประตูหลังไม่สามารถสร้างการสื่อสารกับเซิร์ฟเวอร์ C&C เป็นระยะเวลาเกินกว่าเกณฑ์ที่กำหนดไว้ล่วงหน้า ซึ่งกำหนดค่าไว้ภายใน Executor กลไกการถอนการติดตั้งด้วยตนเองจะถูกทริกเกอร์ เกณฑ์เวลานี้ระบุเป็นชั่วโมงและกำหนดไว้ที่หนึ่งชั่วโมงในกรณีที่ตรวจสอบ
แนวทางนี้มีจุดประสงค์สองประการ ในด้านหนึ่ง จะป้องกันการสร้างคำขอเครือข่ายซ้ำซ้อนไปยังเซิร์ฟเวอร์ที่ไม่สามารถเข้าถึงได้ ในทางกลับกัน จะช่วยลดโอกาสในการตรวจจับในภายหลัง หากผู้ปฏิบัติงานสูญเสียการควบคุมประตูหลัง
โมดูลจับเวลา
โมดูลขนาดเล็กนี้ดำเนินการโทรกลับที่ระบุในช่วงเวลาที่กำหนดได้ Orchestrator ใช้ร่วมกับโมดูลเครือข่ายเพื่อสื่อสารกับเซิร์ฟเวอร์ C&C เป็นระยะ เพื่อป้องกันการสร้างรูปแบบที่ตรวจพบได้ในบันทึกเครือข่าย ช่วงเวลาการดำเนินการจะขึ้นอยู่กับการสุ่ม โดยขึ้นอยู่กับเปอร์เซ็นต์ที่ระบุในการกำหนดค่า ในตัวอย่างที่วิเคราะห์ ช่วงเวลาถูกกำหนดไว้ที่ห้านาที โดยมีค่าความแปรผัน ±20% สำหรับการสุ่ม
อีกวิธีหนึ่งในการหลีกเลี่ยงรูปแบบเครือข่ายที่ตรวจพบได้ในการสื่อสารเป็นระยะสามารถพบได้ในการสร้างคำขอที่ส่งไปยังเซิร์ฟเวอร์ C&C กลไกนี้ ซึ่งนำไปใช้ใน Executor เกี่ยวข้องกับการรวมช่องว่างภายในที่มีความยาวต่างกัน ซึ่งประกอบด้วยไบต์แบบสุ่ม ภายในคำขอ ส่งผลให้เกิดคำขอที่มีขนาดหลากหลาย
โมดูลเครือข่าย
โมดูลเครือข่ายใช้การสื่อสารกับเซิร์ฟเวอร์ C&C ที่ระบุในการกำหนดค่า สามารถส่งข้อมูลไปยังเซิร์ฟเวอร์ C&C โดยใช้คำขอ HTTP(S) POST โดยเฉพาะอย่างยิ่ง มันมีกลไกหลายอย่างในการรับรายละเอียดการกำหนดค่าพร็อกซี คุณลักษณะนี้ชี้ให้เห็นถึงการมุ่งเน้นไปที่สภาพแวดล้อมที่ไม่สามารถเข้าถึงอินเทอร์เน็ตโดยตรงได้
ตัวอย่างของการกำหนดค่าแบบถอดรหัส (และสวยงาม) แสดงอยู่ใน REF _Ref144978805 ชม รูป 5
.
รายการการกำหนดค่าประกอบด้วยรายละเอียดที่เกี่ยวข้องกับการสื่อสารเครือข่าย - C&C URL, ตัวแทนผู้ใช้ HTTP และการกำหนดค่าพร็อกซี (ไม่บังคับ)
เมื่อสื่อสารกับเซิร์ฟเวอร์ C&C จะใช้โปรโตคอลไบนารีแบบกำหนดเองพร้อมเนื้อหาที่เข้ารหัสภายใต้ HTTPS
คำสั่ง
Orchestrator รับคำสั่งจากเซิร์ฟเวอร์ C&C ในรูปแบบของงาน ซึ่งอยู่ในคิวเพื่อดำเนินการ มีงานสามประเภทที่ประมวลผล:
- งานออร์เคสตรา
- งานของผู้ดำเนินการและ
- อัพโหลดงาน
สองประเภทแรกได้รับจากเซิร์ฟเวอร์ C&C และประเภทที่สามสร้างขึ้นภายในเพื่ออัปโหลดเอาต์พุตของคำสั่งและข้อผิดพลาด
งานออเคสตรา
งาน Orchestrator ช่วยให้สามารถจัดการการกำหนดค่าโมดูลเครือข่ายและตัวจับเวลาได้ และยังช่วยยกเลิกงานที่ค้างอยู่ได้อีกด้วย ภาพรวมของงาน Orchestrator แสดงอยู่ใน REF _Ref111101783 ชม ตาราง 3
.
ตารางที่ 3. ภารกิจ Orchestrator
ชนิดภาพเขียน |
รายละเอียด |
0x80
|
ตั้งค่าการกำหนดค่าโมดูลเครือข่ายและตัวจับเวลา |
0x81
|
รับการกำหนดค่าโมดูลเครือข่ายและตัวจับเวลา |
0x82
|
ยกเลิกงาน |
0x83
|
ยกเลิกงานทั้งหมด |
งานของผู้ปฏิบัติงาน
งานของผู้บริหารมีความสามารถในการจัดการประตูหลังและดำเนินการโมดูลเพิ่มเติม เป็นที่น่าสังเกตว่าฟังก์ชันแบ็คดอร์แบบดั้งเดิมนั้นไม่มีอยู่ในไบนารี่โดยธรรมชาติ แต่ฟังก์ชันเหล่านี้ได้มาจากเซิร์ฟเวอร์ C&C ในรูปแบบของไฟล์ PE หรือเชลล์โค้ด ขอบเขตเต็มของศักยภาพของประตูหลังยังคงไม่ทราบแน่ชัดหากไม่มีโมดูลเพิ่มเติมเหล่านี้ ซึ่งจะช่วยปลดล็อกความสามารถที่แท้จริงของประตูหลังได้อย่างมีประสิทธิภาพ ภาพรวมของงานโมดูลแสดงอยู่ใน REF _Ref117677179 ชม ตาราง 4
ซึ่งรวมถึงรายละเอียดเกี่ยวกับโมดูลที่ระบุบางส่วน ในทำนองเดียวกัน REF _Ref117677188 ชม ตาราง 5
ให้ภาพรวมของงานการจัดการที่เกี่ยวข้องกับผู้ดำเนินการ
ตารางที่ 4. ภารกิจของผู้บริหาร – โมดูล
ชนิดภาพเขียน |
รายละเอียด |
0x??–0x63
|
ไม่ทราบ |
0x64
|
โปรแกรมอ่านไฟล์ |
0x65
|
ไม่ทราบ |
0x66
|
ไม่ทราบ |
0x67
|
ไม่ทราบ |
0x68
|
ไม่ทราบ |
0x69
|
ผู้สร้างกระบวนการ |
0x6A
|
ไม่ทราบ |
0x6B
|
ไม่ทราบ |
0x6C
|
นักรวบรวมข้อมูล |
0x6D
|
ไม่ทราบ |
0x6E
|
ไม่ทราบ |
ตารางที่ 5. ภารกิจของผู้ดำเนินการ – การจัดการ
ชนิดภาพเขียน |
รายละเอียด |
0x6F-0x76 |
ไม่ได้ดำเนินการ |
0x77 |
ตั้งค่าคอนฟิกูเรชันผู้ดำเนินการ |
0x78 |
รับการกำหนดค่าผู้ดำเนินการ |
0x79-0x7C |
ไม่ได้ดำเนินการ |
0x7D |
บันทึก |
0x7E |
เลิก |
0x7F |
ถอนการติดตั้ง |
คำสั่งที่ตั้งค่าคอนฟิกูเรชันของ Executor สามารถเปลี่ยน:
- รายการกระบวนการที่ไม่ต้องการ
- เกณฑ์เวลาของความล้มเหลวในการสื่อสารของ C&C และ
- กำหนดเวลาสำหรับการดำเนินการโมดูลเพิ่มเติม
โมดูล
เราจัดการเพื่อรับโมดูลที่ไม่ซ้ำกันสามโมดูลจากเซิร์ฟเวอร์ C&C ซึ่งแต่ละโมดูลสอดคล้องกับประเภทงาน Executor ที่แตกต่างกัน ดังที่แสดงใน REF _Ref117677179 ชม ตาราง 4 08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F005200650066003100310037003600370037003100370039000000
. จากข้อมูลที่มีอยู่ เราประมาณการว่ามีทั้งหมดเก้าถึงสิบสี่โมดูล เนื่องจากโมดูลเป็นคำสั่งลับๆ จริงๆ จึงมีการดำเนินการพื้นฐานเพียงครั้งเดียวในการดำเนินการ จากนั้นจึงเลือกที่จะส่งคืนเอาต์พุตได้ โมดูลที่เราได้รับคือ DLL ที่มีการส่งออกที่ไม่มีชื่อหนึ่งครั้ง (ordinal 1) ซึ่งแก้ไขฟังก์ชัน API ที่จำเป็นและเรียกใช้ฟังก์ชันหลัก
เมื่อดำเนินการ โมดูลจะได้รับฟังก์ชันการแก้ไข API ซึ่งสามารถแก้ไข Windows API และ Executor API แบบกำหนดเองได้ Windows API ได้รับการอ้างอิงโดยแฮช DWORD ซึ่งคำนวณจากชื่อของ API และ DLL ค่าแฮชขนาดเล็ก (<41) จะได้รับการปฏิบัติเป็นพิเศษ โดยอ้างอิงถึงฟังก์ชัน Executor API Executor API ประกอบด้วยฟังก์ชันทั้งหมด 39 ฟังก์ชันที่โมดูลสามารถเข้าถึงได้ ฟังก์ชันเหล่านี้เกี่ยวข้องกับการดำเนินการที่หลากหลาย รวมไปถึง:
- การทำงานของไฟล์
- การเข้ารหัสและการแฮช
- การบีบอัด
- กำลังโหลดพีอี
- เข้าถึงการเลียนแบบโทเค็น และ
- ประโยชน์
ในส่วนที่เหลือของส่วนนี้ เราจะอธิบายโมดูลที่เราได้รับ
ผู้สร้างกระบวนการ
โมดูล 0x69 ดำเนินการบรรทัดคำสั่งที่ระบุเป็นกระบวนการใหม่และจัดเตรียมเอาต์พุตผลลัพธ์กลับไปยัง Orchestrator สามารถสร้างกระบวนการได้ภายใต้ผู้ใช้รายอื่น และเวลาดำเนินการสามารถจำกัดได้ โดยเฉพาะอย่างยิ่ง เป็นเรื่องไม่ธรรมดา API งาน ใช้ในการทำงานของโมดูลนี้
โมดูลนี้ให้บริการพร้อมกับบรรทัดคำสั่ง cmd.exe /c รายการงาน /v.
เราถือว่ามันทำหน้าที่เป็นคำสั่งว่างที่ออกโดยอัตโนมัติ ในขณะที่ผู้ปฏิบัติงานรอให้สิ่งที่น่าสนใจเกิดขึ้นบนคอมพิวเตอร์ที่ถูกบุกรุก
นักรวบรวมข้อมูล
โมดูล 0x6C รวบรวมข้อมูลมากมายเกี่ยวกับคอมพิวเตอร์ผ่านการสืบค้น WMI และส่งกลับไปยัง Orchestrator ข้อมูลเกี่ยวกับสิ่งต่อไปนี้จะถูกรวบรวม:
- ระบบปฏิบัติการ,
- อะแดปเตอร์เครือข่าย,
- ซอฟต์แวร์ที่ติดตั้ง
- ไดรฟ์
- บริการ
- ไดรเวอร์
- กระบวนการ
- ผู้ใช้
- ตัวแปรสภาพแวดล้อมและ
- ซอฟต์แวร์รักษาความปลอดภัย
โปรแกรมอ่านไฟล์
โมดูล 0x64 อ่านไฟล์ที่ระบุและส่งเนื้อหากลับไปยัง Orchestrator อีกทางเลือกหนึ่งคือสามารถลบไฟล์หลังจากอ่านได้
เราเห็นโมดูลนี้ใช้เพื่อดึงไฟล์ข้อมูล Outlook ของเหยื่อ
ค:ผู้ใช้ AppDataLocalMicrosoftOutlookoutlook.ost.
เชนพร้อมตัวดาวน์โหลดเชลล์โค้ด
ในกระบวนการตรวจสอบ Deadglyph เราพบไฟล์ CPL ที่น่าสงสัยซึ่งลงนามด้วยใบรับรองที่หมดอายุและไม่มีลายเซ็นต์ที่มีการประทับเวลา ซึ่งได้อัปโหลดไปยัง VirusTotal จากกาตาร์แล้ว เมื่อตรวจสอบอย่างใกล้ชิด เห็นได้ชัดว่าไฟล์ CPL นี้ทำหน้าที่เป็นตัวดาวน์โหลดเชลล์โค้ดแบบหลายขั้นตอน โดยแบ่งปันโค้ดบางอย่างที่คล้ายคลึงกับ Deadglyph ห่วงโซ่การบรรทุกมีภาพประกอบอยู่ใน REF _Ref143693067 ชม รูป 6
.
ในรูปแบบเริ่มต้น ซึ่งทำหน้าที่เป็นระยะแรก ไฟล์นี้คาดว่าจะมี .cpl (ไฟล์แผงควบคุม) และมีไว้เพื่อดำเนินการผ่านการดับเบิลคลิก เมื่อดำเนินการในลักษณะนี้ เชลล์โค้ดที่ฝังไว้จะได้รับการถอดรหัส XOR และกระบวนการที่ทำงานอยู่จะได้รับการตรวจสอบเพื่อระบุกระบวนการโฮสต์ที่เหมาะสมสำหรับการแทรกครั้งต่อไป
If avp.exe (กระบวนการรักษาความปลอดภัยปลายทางของ Kaspersky) กำลังทำงานอยู่ %windir%system32UserAccountBroker.exe ถูกนำมาใช้. มิฉะนั้น จะใช้เบราว์เซอร์เริ่มต้น จากนั้นจะสร้างกระบวนการโฮสต์ในสถานะที่ถูกระงับ แทรกเชลล์โค้ดโดยการไฮแจ็กเธรดหลัก และดำเนินการเธรดต่อ
ขั้นที่สองคือเชลล์โค้ดประกอบด้วยสองส่วน ส่วนแรกของเชลล์โค้ดแก้ไขแฮช API โดยใช้เทคนิคการคำนวณแฮชเฉพาะแบบเดียวกับที่ใช้ใน Deadglyph และถอดรหัสสตริงด้วยชื่อกระบวนการ มันเริ่มเธรดการลบตัวเองโดยมอบหมายให้เขียนทับและลบไฟล์ขั้นแรกในเวลาต่อมา ต่อไปนี้ เชลล์โค้ดจะดำเนินการตรวจสอบกระบวนการที่ใช้งานอยู่ในปัจจุบัน โดยกำหนดเป้าหมายไปที่โซลูชันความปลอดภัย
หากตรวจพบกระบวนการใด ๆ ที่ระบุเชลล์โค้ดจะสร้างเธรดสลีปเปอร์ที่มีลำดับความสำคัญต่ำสุด (THREAD_PRIORITY_IDLE) และปล่อยให้ยังคงทำงานอยู่เป็นเวลา 60 วินาทีก่อนที่จะยุติการทำงาน ช่วงเวลานี้น่าจะถูกนำมาใช้เป็นมาตรการป้องกันเพื่อหลีกเลี่ยงกลไกการตรวจจับบางอย่างที่ใช้โดยโซลูชั่นรักษาความปลอดภัย ในที่สุด เชลล์โค้ดจะดำเนินการเรียกใช้ส่วนที่สองของโค้ด
ส่วนที่สองของเชลล์โค้ดจะโหลดไฟล์ PE ที่ฝังอยู่ในขั้นตอนที่สามและเรียกการส่งออกด้วยหมายเลขลำดับ 1.
ขั้นตอนที่สาม DLL ทำหน้าที่เป็นตัวโหลด .NET และมีเพย์โหลดอยู่ในนั้น .rsrc มาตรา.
หากต้องการโหลดเพย์โหลด รันไทม์ .NET จะถูกเตรียมใช้งาน ในระหว่างการเริ่มต้น .NET จะมีการใช้เทคนิคที่น่าสนใจสองประการ ซึ่งดูเหมือนว่าจะมีจุดประสงค์เพื่อหลบเลี่ยง Windows การสแกนอินเทอร์เฟซการสแกนมัลแวร์ (AMSI):
- ตัวโหลด. NET จะเชื่อมต่อ
- จากนั้นจะทำการแก้ไขอย่างละเอียด AmsiInitialize นำเข้าสตริงชื่อใน .rdata ส่วนของการโหลด clr.dll ไปยัง aMSIiทำให้เป็นข้อมูลดิจิทัล.
ขั้นตอนที่สี่คือแอสเซมบลี .NET ซึ่งสร้างความสับสนให้กับ ConfuserEx ซึ่งทำหน้าที่เป็นตัวดาวน์โหลดเชลล์โค้ด ขั้นแรก XOR ถอดรหัสการกำหนดค่าในรูปแบบ XML จากทรัพยากร มีการนำเสนอการกำหนดค่าที่แยกออกมาเวอร์ชันที่สวยงามแล้ว REF _Ref143695453 ชม รูป 7
. รายการการกำหนดค่าประกอบด้วยรายละเอียดที่เกี่ยวข้องกับการสื่อสารเครือข่ายและกระบวนการที่อยู่ในรายการบล็อก
ก่อนที่จะดำเนินการต่อ ระบบจะตรวจสอบกระบวนการที่ทำงานอยู่กับรายการกระบวนการที่อยู่ในรายการบล็อกจากการกำหนดค่า หากตรวจพบการแข่งขัน การดำเนินการจะหยุดลง สิ่งสำคัญคือต้องทราบว่าในอินสแตนซ์ที่วิเคราะห์ ไม่ได้ตั้งค่ารายการบล็อกนี้
ถัดไป จะส่งคำขอ HTTP GET ไปยังเซิร์ฟเวอร์ C&C เพื่อดึงข้อมูลเชลล์โค้ดบางส่วน โดยใช้พารามิเตอร์ที่ระบุในการกำหนดค่า (URL, User-Agent และพร็อกซีเสริม) น่าเสียดายที่ในระหว่างการตรวจสอบของเรา เราไม่สามารถรับเชลล์โค้ดใดๆ จากเซิร์ฟเวอร์ C&C ได้ อย่างไรก็ตาม เราตั้งสมมติฐานว่าเนื้อหาที่ถูกดึงมาอาจทำหน้าที่เป็นตัวติดตั้งสำหรับ Deadglyph ได้
ต่อไปนี้ เชลล์โค้ดที่ดึงข้อมูลมาจะถูกดำเนินการภายในเธรดที่สร้างขึ้นใหม่ หลังจากรอจนกว่าเธรดเชลล์โค้ดดำเนินการเสร็จสิ้น ตัวดาวน์โหลดเชลล์โค้ดจะลบไฟล์ทั้งหมดที่อยู่ในไดเร็กทอรี % WINDIR% โปรไฟล์บริการ LocalServiceAppDataLocalTempTfsStoreTfs_DAV.
ในที่สุด มันพยายามที่จะลบตัวเองหลังจากช่วงเวลา 20 วินาที โดยใช้คำสั่งที่ตามมา ก่อนที่จะสรุปการดำเนินการและออกจากระบบ:
ตัวเลือก cmd.exe /CY /N /DY /T 20 & Del /f /q
การลบตัวเองนี้ไม่สมเหตุสมผลในห่วงโซ่นี้ นี่เป็นเพราะความจริงที่ว่าตัวดาวน์โหลดเชลล์โค้ดถูกเรียกใช้งานภายในเบราว์เซอร์หรือกระบวนการของระบบหลังจากถูกฉีดเข้าไป แทนที่จะทำงานเป็นไฟล์เรียกทำงานอิสระ ยิ่งไปกว่านั้น ไฟล์เริ่มต้นถูกลบไปแล้วในขั้นตอนที่สอง การสังเกตนี้ชี้ให้เห็นว่าตัวดาวน์โหลดเชลล์โค้ดอาจไม่ใช่เพย์โหลดเฉพาะของเชนนี้ และอาจใช้แยกกันในการดำเนินการอื่นด้วย
สรุป
เราได้ค้นพบและวิเคราะห์ประตูหลังที่ซับซ้อนซึ่งใช้โดยกลุ่ม Stealth Falcon ซึ่งเราตั้งชื่อว่า Deadglyph มีสถาปัตยกรรมที่ไม่ธรรมดา และความสามารถของแบ็คดอร์นั้นจัดทำโดย C&C ในรูปแบบของโมดูลเพิ่มเติม เราจัดการเพื่อให้ได้มาสามโมดูลเหล่านี้ ซึ่งเผยให้เห็นเศษเสี้ยวของความสามารถทั้งหมดของ Deadglyph
โดยเฉพาะอย่างยิ่ง Deadglyph มีกลไกการตรวจจับตอบโต้มากมาย รวมถึงการตรวจสอบกระบวนการของระบบอย่างต่อเนื่องและการนำรูปแบบเครือข่ายแบบสุ่มไปใช้ นอกจากนี้ ประตูหลังยังสามารถถอนการติดตั้งตัวเองเพื่อลดโอกาสในการตรวจจับได้ในบางกรณี
นอกจากนี้ การตรวจสอบของเรายังนำเราไปสู่การค้นพบกลุ่มดาวน์โหลดเชลล์โค้ดแบบหลายขั้นตอนที่น่าสนใจบน VirusTotal เราสงสัยว่ากลุ่มดาวน์โหลดนี้น่าจะมีประโยชน์ในกระบวนการติดตั้ง Deadglyph
หากมีข้อสงสัยเกี่ยวกับงานวิจัยของเราที่เผยแพร่บน WeLiveSecurity โปรดติดต่อเราที่ Threatintel@eset.com.
ESET Research เสนอรายงานข่าวกรอง APT ส่วนตัวและฟีดข้อมูล หากต้องการสอบถามเกี่ยวกับบริการนี้ โปรดไปที่ ESET ภัยคุกคามอัจฉริยะ หน้า.
ไอโอซี
ไฟล์
SHA-1 |
ชื่อไฟล์ |
การตรวจพบ |
รายละเอียด |
C40F1F46D230A85F702DAA38CFA18D60481EA6C2 |
pbrtl.dll |
Win64/Deadglyph.A |
ตัวโหลด Shellcode ของรีจิสทรี |
740D308565E215EB9B235CC5B720142428F540DB |
N / A |
Win64/Deadglyph.A |
Deadglyph Backdoor – ผู้ดำเนินการ |
1805568D8362A379AF09FD70D3406C6B654F189F |
N / A |
MSIL/Deadglyph.A |
Deadglyph Backdoor – ออเคสตรา |
9CB373B2643C2B7F93862D2682A0D2150C7AEC7E |
N / A |
MSIL/Deadglyph.A |
โมดูลเครือข่ายออเคสตรา |
F47CB40F6C2B303308D9D705F8CAD707B9C39FA5 |
N / A |
MSIL/Deadglyph.A |
โมดูลจับเวลาออร์เคสตรา |
3D4D9C9F2A5ACEFF9E45538F5EBE723ACAF83E32 |
N / A |
Win64/Deadglyph.A.gen |
โมดูลผู้สร้างกระบวนการ |
3D2ACCEA98DBDF95F0543B7C1E8A055020E74960 |
N / A |
Win64/Deadglyph.A |
โมดูลตัวอ่านไฟล์ |
4E3018E4FD27587BD1C566930AE24442769D16F0 |
N / A |
Win64/Deadglyph.A |
โมดูลตัวรวบรวมข้อมูล |
7F728D490ED6EA64A7644049914A7F2A0E563969 |
N / A |
Win64/Injector.MD |
ขั้นตอนแรกของเชนการดาวน์โหลดเชลล์โค้ด |
ใบรับรอง
หมายเลขซีเรียล |
00F0FB1390F5340CD2572451D95DB1D92D |
รหัสประจำตัว |
DB3614DAF58D041F96A5B916281EA0DC97AA0C29 |
หัวเรื่อง ช.น |
อาร์เอชเอ็ม จำกัด |
เรื่อง อ |
อาร์เอชเอ็ม จำกัด |
เรื่อง L |
เซนต์อัลบันส์ |
เรื่อง ส |
Hertfordshire |
เรื่อง ค |
GB |
อีเมลล์ |
rhm@rhmlimited[.]co.uk |
มีผลตั้งแต่ |
2021-03-16 00:00:00 |
ใช้ได้กับ |
2022-03-16 23:59:59 |
เซิร์ฟเวอร์ C&C
IP |
โดเมน |
เห็นครั้งแรก |
Comment |
185.25.50[.]60 |
chessandlinkss[.]com |
2021-08-25 |
เซิร์ฟเวอร์ Deadglyph C&C |
135.125.78[.]187 |
easymathpath[.]com |
2021-09-11 |
เซิร์ฟเวอร์ Deadglyph C&C |
45.14.227[.]55 |
joinushealth[.]com |
2022-05-29 |
เซิร์ฟเวอร์ C&C ตัวดาวน์โหลด Shellcode |
เทคนิค MITER ATT&CK
ตารางนี้ถูกสร้างขึ้นโดยใช้ 13 รุ่น ของกรอบงาน MITER ATT&CK
ชั้นเชิง |
ID |
Name |
รายละเอียด |
การพัฒนาทรัพยากร |
รับโครงสร้างพื้นฐาน: โดเมน |
Stealth Falcon ได้จดทะเบียนโดเมนสำหรับเซิร์ฟเวอร์ C&C และได้รับใบรับรองการลงนามรหัส |
|
รับโครงสร้างพื้นฐาน: เซิร์ฟเวอร์ส่วนตัวเสมือน |
Stealth Falcon ใช้ผู้ให้บริการโฮสติ้ง VPS สำหรับเซิร์ฟเวอร์ C&C |
||
พัฒนาความสามารถ: มัลแวร์ |
Stealth Falcon ได้พัฒนามัลแวร์แบบกำหนดเอง รวมถึงตัวโหลดแบบกำหนดเองและประตูหลัง Deadglyph |
||
รับความสามารถ: ใบรับรองการลงนามรหัส |
Stealth Falcon ได้รับใบรับรองการลงนามโค้ด |
||
การกระทำ |
ของ Windows Management Instrumentation |
Deadglyph ใช้ WMI เพื่อดำเนินการโหลดเชน |
|
ล่ามคำสั่งและสคริปต์: Windows Command Shell |
ใช้โปรแกรมดาวน์โหลด Shellcode cmd.exe เพื่อลบตัวเอง |
||
API ดั้งเดิม |
ใช้โมดูล Deadglyph สร้างกระบวนการW และ CreateProcessAsUserW ฟังก์ชัน API สำหรับการดำเนินการ |
||
การดำเนินการของผู้ใช้: ไฟล์ที่เป็นอันตราย |
ห่วงโซ่การดาวน์โหลด Shellcode ต้องการให้ผู้ใช้ดับเบิลคลิกและดำเนินการ |
||
การติดตา |
การดำเนินการที่ทริกเกอร์เหตุการณ์: การสมัครสมาชิกเหตุการณ์ Windows Management Instrumentation |
ตัวโหลด Deadglyph เริ่มต้นยังคงอยู่โดยใช้การสมัครสมาชิกกิจกรรม WMI |
|
การหลบหลีกการป้องกัน |
ไฟล์หรือข้อมูลที่ทำให้สับสน |
ส่วนประกอบ Deadglyph ได้รับการเข้ารหัส Deadglyph Orchestrator และโมดูลแบบฝังถูกทำให้สับสนด้วย .NET Reactor ตัวดาวน์โหลดเชลล์โค้ดสับสนกับ ConfuserEx |
|
การลบตัวบ่งชี้: การลบไฟล์ |
Deadglyph สามารถถอนการติดตั้งตัวเองได้ ห่วงโซ่การดาวน์โหลดเชลล์โค้ดจะลบตัวเองและลบไฟล์ในแคช WebDAV |
||
แก้ไขรีจิสทรี |
Deadglyph เก็บการกำหนดค่าและเพย์โหลดที่เข้ารหัสไว้ในรีจิสทรี |
||
การจัดการโทเค็นการเข้าถึง |
Deadglyph สามารถปลอมตัวเป็นผู้ใช้รายอื่นได้ |
||
ถอดรหัสซอร์สโค้ดที่สร้างความสับสน/ถอดรหัสไฟล์หรือข้อมูล |
Deadglyph ถอดรหัสสตริงที่เข้ารหัส ห่วงโซ่การดาวน์โหลด Shellcode ถอดรหัสส่วนประกอบและการกำหนดค่า |
||
การดำเนินการพร็อกซีไบนารีของระบบ: Rundll32 |
ตัวโหลด Deadglyph เริ่มต้นถูกดำเนินการโดยใช้ rundll32.exe. |
||
รั้วการดำเนินการ: การรักษาความปลอดภัยด้านสิ่งแวดล้อม |
Deadglyph ได้รับการเข้ารหัสโดยใช้คีย์เฉพาะเครื่องที่ได้มาจาก UUID ของระบบ |
||
การป้องกันที่บกพร่อง: ปิดใช้งานหรือแก้ไขเครื่องมือ |
โปรแกรมดาวน์โหลดเชลล์โค้ดหลีกเลี่ยงการสแกน AMSI โดยการแพตช์ clr.dll ในความทรงจำ . |
||
กำลังโหลดรหัสสะท้อนแสง |
Deadglyph โหลดโมดูลอย่างสะท้อนกลับโดยใช้ตัวโหลด PE แบบกำหนดเอง |
||
การค้นพบ |
การค้นพบบริการระบบ |
A โมดูล Deadglyph ค้นพบบริการโดยใช้แบบสอบถาม WMI เลือก * จาก Win32_Service |
|
รีจิสทรีแบบสอบถาม |
ห่วงโซ่การดาวน์โหลดเชลล์โค้ดสอบถามรีจิสทรีสำหรับเบราว์เซอร์เริ่มต้น |
||
การค้นพบการกำหนดค่าเครือข่ายระบบ |
โมดูล Deadglyph ค้นพบอะแดปเตอร์เครือข่ายโดยใช้คำสั่ง WMI เลือก * จาก Win32_NetworkAdapter และ SELECT * จาก Win32_NetworkAdapterConfiguration โดยที่ InterfaceIndex=%d. |
||
เจ้าของระบบ/การค้นพบผู้ใช้ |
โมดูล Deadglyph ค้นพบผู้ใช้ที่มีการสืบค้น WMI เลือก * จาก Win32_UserAccount. |
||
การค้นพบกระบวนการ |
โมดูล Deadglyph ค้นพบกระบวนการโดยใช้แบบสอบถาม WMI เลือก * จาก Win32_Process. |
||
การค้นพบข้อมูลระบบ |
โมดูล Deadglyph จะค้นหาข้อมูลระบบ เช่น เวอร์ชันระบบปฏิบัติการ ไดรฟ์ ตัวแปรสภาพแวดล้อม และไดรเวอร์ที่ใช้คำสั่ง WMI |
||
การค้นพบซอฟต์แวร์ |
โมดูล Deadglyph ค้นพบซอฟต์แวร์ที่ติดตั้งโดยใช้แบบสอบถาม WMI เลือก * จาก Win32_Product. |
||
การค้นพบซอฟต์แวร์: การค้นพบซอฟต์แวร์ความปลอดภัย |
โมดูล Deadglyph ค้นพบซอฟต์แวร์รักษาความปลอดภัยโดยใช้คำสั่ง WMI เลือก * จากผลิตภัณฑ์ป้องกันไวรัส, เลือก * จากผลิตภัณฑ์ป้องกันสปายแวร์ และ SELECT * จากผลิตภัณฑ์ไฟร์วอลล์. ห่วงโซ่การดาวน์โหลดเชลล์โค้ดจะตรวจสอบกระบวนการที่ทำงานอยู่เพื่อหาโซลูชันด้านความปลอดภัย |
||
ชุด |
ข้อมูลจาก Local System |
Deadglyph มีโมดูลสำหรับอ่านไฟล์ |
|
ควบคุมและสั่งการ |
Application Layer Protocol: โปรโตคอลเว็บ |
Deadglyph และตัวดาวน์โหลดเชลล์โค้ดสื่อสารกับเซิร์ฟเวอร์ C&C ผ่านโปรโตคอล HTTP |
|
หนังสือมอบฉันทะ |
Deadglyph และตัวดาวน์โหลดเชลล์โค้ดสามารถใช้พร็อกซี HTTP สำหรับการสื่อสาร C&C |
||
ช่องที่เข้ารหัส: Symmetric Cryptography |
Deadglyph ใช้ AES เพื่อเข้ารหัสการสื่อสาร C&C |
||
การกรอง |
การกรองผ่านช่อง C2 |
Deadglyph ใช้ช่อง C&C เพื่อการกรอง |
- เนื้อหาที่ขับเคลื่อนด้วย SEO และการเผยแพร่ประชาสัมพันธ์ รับการขยายวันนี้
- PlatoData.Network Vertical Generative Ai เพิ่มพลังให้กับตัวเอง เข้าถึงได้ที่นี่.
- เพลโตไอสตรีม. Web3 อัจฉริยะ ขยายความรู้ เข้าถึงได้ที่นี่.
- เพลโตESG. คาร์บอน, คลีนเทค, พลังงาน, สิ่งแวดล้อม แสงอาทิตย์, การจัดการของเสีย. เข้าถึงได้ที่นี่.
- เพลโตสุขภาพ เทคโนโลยีชีวภาพและข่าวกรองการทดลองทางคลินิก เข้าถึงได้ที่นี่.
- ที่มา: https://www.welivesecurity.com/en/eset-research/stealth-falcon-preying-middle-eastern-skies-deadglyph/
- :มี
- :เป็น
- :ไม่
- :ที่ไหน
- $ ขึ้น
- 1
- 10
- 100
- 11
- 125
- 14
- ลด 15%
- 179
- 180
- 20
- 2012
- 2016
- 2019
- 23
- 25
- 321
- 39
- 41
- 60
- 7
- 75
- 8
- 9
- 91
- a
- ความสามารถ
- เกี่ยวกับเรา
- เข้า
- การเข้าถึง
- สามารถเข้าถึงได้
- มาพร้อมกับ
- ได้รับ
- การกระทำ
- คล่องแคล่ว
- ร้อง
- กิจกรรม
- อยากทำกิจกรรม
- การกระทำ
- จริง
- นอกจากนี้
- เพิ่มเติม
- สูง
- ความได้เปรียบ
- AES
- หลังจาก
- กับ
- การเล็ง
- ทั้งหมด
- นัยว่า
- ช่วยให้
- แล้ว
- ด้วย
- an
- การวิเคราะห์
- วิเคราะห์
- วิเคราะห์
- และ
- อื่น
- คาดการณ์
- ใด
- API
- APIs
- ปรากฏ
- เข้าใกล้
- APT
- อาหรับ
- อาหรับเอมิเรตส์
- สถาปัตยกรรม
- เป็น
- AS
- การชุมนุม
- ที่เกี่ยวข้อง
- สมมติ
- At
- โจมตี
- การโจมตี
- อัตโนมัติ
- ใช้ได้
- หลีกเลี่ยง
- กลับ
- ประตูหลัง
- ตาม
- ขั้นพื้นฐาน
- BE
- กลายเป็น
- เพราะ
- รับ
- ก่อน
- กำลัง
- เชื่อ
- ที่ดีที่สุด
- ภูมิใจ
- ร่างกาย
- ทั้งสอง
- เบราว์เซอร์
- สร้าง
- แต่
- by
- แคช
- คำนวณ
- การคำนวณ
- โทรศัพท์
- ที่เรียกว่า
- โทร
- โทร
- รณรงค์
- CAN
- ความสามารถในการ
- สามารถ
- เมืองหลวง
- พกพา
- กรณี
- กรณี
- ศูนย์
- บาง
- ใบรับรอง
- โซ่
- โอกาส
- เปลี่ยนแปลง
- ช่อง
- อักขระ
- ตรวจสอบแล้ว
- การตรวจสอบ
- ทางเลือก
- ไคลเอนต์
- ใกล้ชิด
- รหัส
- สะสม
- เก็บรวบรวม
- สี
- COM
- การผสมผสาน
- ร่วมกัน
- สื่อสาร
- การติดต่อสื่อสาร
- การสื่อสาร
- คมนาคม
- จับใจ
- ส่วนประกอบ
- ส่วนประกอบ
- ประกอบด้วย
- ประกอบด้วย
- การประนีประนอม
- ที่ถูกบุกรุก
- คอมพิวเตอร์
- การดำเนิน
- การประชุม
- ความมั่นใจ
- องค์ประกอบ
- การกำหนดค่า
- งานที่เชื่อมต่อ
- ประกอบ
- ติดต่อเรา
- บรรจุ
- มี
- เนื้อหา
- สิ่งแวดล้อม
- ต่อเนื่องกัน
- ตรงกันข้าม
- ควบคุม
- แผงควบคุม
- บริษัท
- ตรงกัน
- ได้
- ควบคู่
- ที่สร้างขึ้น
- สร้าง
- การสร้าง
- ผู้สร้าง
- ปัจจุบัน
- ขณะนี้
- ประเพณี
- ลูกค้า
- เข้ม
- ข้อมูล
- ถอดรหัส
- ค่าเริ่มต้น
- องศา
- ทั้งนี้ขึ้นอยู่กับ
- ปรับใช้
- ที่ได้มา
- บรรยาย
- อธิบาย
- ลักษณะ
- รายละเอียด
- ตรวจพบ
- การตรวจพบ
- แน่นอน
- พัฒนา
- พัฒนาการ
- ความแตกต่าง
- ต่าง
- ยาก
- โดยตรง
- ค้นพบ
- ค้นพบ
- การค้นพบ
- แตกต่าง
- หลาย
- ทำ
- โดเมน
- Dont
- ไดรเวอร์
- ไดรฟ์
- สอง
- ระยะเวลา
- ในระหว่าง
- พลวัต
- แบบไดนามิก
- แต่ละ
- ตะวันออก
- ทางตะวันออก
- มีประสิทธิภาพ
- ทั้ง
- สูง
- ที่ฝัง
- เอมิเรต
- การจ้างงาน
- พนักงาน
- การเปิดใช้งาน
- ห้อมล้อม
- ที่มีการเข้ารหัส
- การเข้ารหัสลับ
- ปลายทาง
- การรักษาความปลอดภัยปลายทาง
- เพื่อให้แน่ใจ
- เอกลักษณ์
- การเข้า
- สิ่งแวดล้อม
- สิ่งแวดล้อม
- สภาพแวดล้อม
- ข้อผิดพลาด
- การวิจัย ESET
- การจารกรรม
- สร้าง
- การสร้าง
- ประมาณการ
- อีเธอร์ (ETH)
- เหตุการณ์
- หลักฐาน
- ชัดเจน
- การตรวจสอบ
- ตัวอย่าง
- พิเศษ
- ดำเนินการ
- ดำเนินการ
- รัน
- การดำเนินงาน
- การปฏิบัติ
- การกรอง
- การจัดแสดงนิทรรศการ
- ที่มีอยู่
- ออกจาก
- ความชำนาญ
- ส่งออก
- นามสกุล
- กว้างขวาง
- ขอบเขต
- อำนวยความสะดวก
- การอำนวยความสะดวก
- ความจริง
- ความล้มเหลว
- เหยี่ยวนกเขา
- ลักษณะ
- คุณสมบัติ
- สองสาม
- รูป
- เนื้อไม่มีมัน
- ไฟล์
- ในที่สุด
- ผลการวิจัย
- ชื่อจริง
- ห้า
- โฟกัส
- ดังต่อไปนี้
- สำหรับ
- ฟอร์ม
- รูป
- อดีต
- พบ
- ที่สี่
- เศษ
- กรอบ
- กรอบ
- ราคาเริ่มต้นที่
- เต็ม
- ฟังก์ชัน
- ฟังก์ชั่น
- ฟังก์ชั่น
- ต่อไป
- นอกจากนี้
- สร้าง
- รุ่น
- ได้รับ
- ของรัฐบาล
- กรีก
- พื้น
- บัญชีกลุ่ม
- มี
- มือ
- เกิดขึ้น
- กัญชา
- แฮช
- hashing
- มี
- มี
- โปรดคลิกที่นี่เพื่ออ่านรายละเอียดเพิ่มเติม
- HEX
- จุดสูง
- ประวัติดี
- เน้น
- ขัดขวาง
- ตะขอ
- เจ้าภาพ
- โฮสติ้ง
- ชั่วโมง
- ชั่วโมง
- ที่ http
- HTTPS
- ID
- identiques
- ระบุ
- แยกแยะ
- Idle
- if
- ภาพ
- ทันที
- การดำเนินงาน
- การดำเนินการ
- การดำเนินการ
- นำเข้า
- สำคัญ
- in
- ในอื่น ๆ
- ลึกซึ้ง
- ไม่สามารถเข้าถึงได้
- รวม
- รวมถึง
- รวมทั้ง
- รวม
- อิสระ
- แสดง
- ข้อมูล
- ข้อมูล
- โครงสร้างพื้นฐาน
- อย่างโดยเนื้อแท้
- แรกเริ่ม
- Initiative
- สอบถามข้อมูล
- การติดตั้ง
- ตัวอย่าง
- แทน
- Intelligence
- ฉลาด
- ตั้งใจว่า
- น่าสนใจ
- อินเตอร์เฟซ
- ตัวกลาง
- ภายใน
- International
- อินเทอร์เน็ต
- อินเทอร์เน็ต
- เข้าไป
- ที่น่าสนใจ
- แนะนำ
- การสอบสวน
- ร่วมมือ
- ที่เกี่ยวข้องกับการ
- ทุนที่ออก
- IT
- ITS
- ตัวเอง
- มกราคม
- ผู้สื่อข่าว
- Kaspersky
- คีย์
- กุญแจ
- ทราบ
- ความรู้
- ที่รู้จักกัน
- ภาษา
- ภาษา
- การเปิดตัว
- ชั้น
- นำ
- นำ
- ซ้าย
- ความยาว
- จดหมาย
- ใช้ประโยชน์
- ห้องสมุด
- กดไลก์
- ความเป็นไปได้
- น่าจะ
- LIMIT
- ถูก จำกัด
- Line
- LINK
- ที่เชื่อมโยง
- รายการ
- รายการ
- โหลด
- loader
- โหลด
- โหลด
- ในประเทศ
- ที่ตั้งอยู่
- ตรรกะ
- อีกต่อไป
- ดู
- สูญเสีย
- ต่ำที่สุด
- หลัก
- ทำ
- ทำให้
- มัลแวร์
- จัดการ
- การจัดการ
- การจัดการ
- ลักษณะ
- หลาย
- แผนที่
- การจับคู่
- อาจ..
- หมายความว่า
- วัด
- กลไก
- กลไก
- หน่วยความจำ
- วิธี
- ไมโครซอฟท์
- กลาง
- ตะวันออกกลาง
- อาจ
- นาที
- ผสม
- แก้ไข
- โมดูล
- โมดูล
- การตรวจสอบ
- จอภาพ
- ข้อมูลเพิ่มเติม
- ยิ่งไปกว่านั้น
- หลาย
- ชื่อ
- ที่มีชื่อ
- ชื่อ
- พื้นเมือง
- นำทาง
- จำเป็น
- สุทธิ
- เครือข่าย
- ใหม่
- ล่าสุด
- ใหม่
- ไม่
- โดดเด่น
- ยวด
- หมายเหตุ
- ตอนนี้
- จำนวน
- ได้รับ
- ที่ได้รับ
- เกิดขึ้น
- of
- เสนอ
- เสนอ
- มักจะ
- on
- ONE
- คน
- เพียง
- ดำเนินการ
- การดำเนินงาน
- การดำเนินการ
- การดำเนินการ
- ผู้ประกอบการ
- or
- เป็นต้นฉบับ
- OS
- อื่นๆ
- มิฉะนั้น
- ของเรา
- ออก
- Outlook
- เอาท์พุต
- เกิน
- ภาพรวม
- ของตนเอง
- วิชาพลศึกษา
- หน้า
- แผง
- พารามิเตอร์
- ส่วนหนึ่ง
- ส่วน
- ผ่าน
- แพทช์
- ปะ
- เส้นทาง
- รูปแบบ
- คาราคาซัง
- เปอร์เซ็นต์
- ดำเนินการ
- เป็นระยะ
- วิริยะ
- เวที
- เพลโต
- เพลโตดาต้าอินเทลลิเจนซ์
- เพลโตดาต้า
- กรุณา
- กรุณาติดต่อ
- จุด
- จุด
- ทางการเมือง
- โพสต์
- ที่มีศักยภาพ
- ที่อาจเกิดขึ้น
- จำเป็นต้อง
- การมี
- นำเสนอ
- นำเสนอ
- ป้องกัน
- ป้องกัน
- ก่อนหน้านี้
- ประถม
- ลำดับความสำคัญ
- ส่วนตัว
- สิทธิ์
- อาจ
- เงินที่ได้
- กระบวนการ
- การประมวลผล
- กระบวนการ
- การเขียนโปรแกรม
- การเขียนโปรแกรมภาษา
- โครงการ
- เหมาะสม
- โปรโตคอล
- ให้
- ให้
- ผู้ให้บริการ
- ให้
- หนังสือมอบฉันทะ
- สาธารณะ
- การตีพิมพ์
- วัตถุประสงค์
- วัตถุประสงค์
- กาตาร์
- คำสั่ง
- สุ่ม
- สุ่ม
- สุ่ม
- พิสัย
- ค่อนข้าง
- เครื่องปฏิกรณ์
- ผู้อ่าน
- การอ่าน
- ที่ได้รับ
- ที่ได้รับ
- ลด
- อ้างอิง
- เรียกว่า
- ภูมิภาค
- ลงทะเบียน
- รีจิสทรี
- ที่เกี่ยวข้อง
- ยังคง
- ที่เหลืออยู่
- ซากศพ
- การกำจัด
- รายงาน
- แสดงให้เห็นถึง
- ชื่อเสียง
- ขอ
- การร้องขอ
- ต้อง
- การวิจัย
- ความละเอียด
- ทรัพยากร
- แหล่งข้อมูล
- รับผิดชอบ
- REST
- ผล
- ส่งผลให้
- กลับ
- รับคืน
- รอยเตอร์ส
- เปิดเผย
- บทบาท
- ราก
- ประจำวัน
- วิ่ง
- ทำงาน
- s
- ความปลอดภัย
- เดียวกัน
- ซาน
- เห็น
- การสแกน
- การสแกน
- ที่สอง
- วินาที
- Section
- ส่วน
- ความปลอดภัย
- ซอฟต์แวร์ความปลอดภัย
- ส่ง
- ส่ง
- ความรู้สึก
- ส่ง
- แยก
- กันยายน
- ให้บริการ
- เซิร์ฟเวอร์
- ให้บริการอาหาร
- บริการ
- บริการ
- ชุด
- ชุดอุปกรณ์
- การตั้งค่า
- หลาย
- ใช้งานร่วมกัน
- แสดง
- ลงนาม
- การลงชื่อ
- คล้ายคลึงกัน
- เหมือนกับ
- ตั้งแต่
- เดียว
- ขนาด
- ท้องฟ้า
- เล็ก
- So
- ซอฟต์แวร์
- ทางออก
- โซลูชัน
- บาง
- บางสิ่งบางอย่าง
- ซับซ้อน
- ความซับซ้อน
- พิเศษ
- เฉพาะ
- ที่ระบุไว้
- สปายแวร์
- ระยะ
- เริ่มต้น
- สถานะ
- ชิงทรัพย์
- เก็บไว้
- ร้านค้า
- เชือก
- โครงสร้าง
- หรือ
- การสมัครสมาชิก
- ภายหลัง
- ต่อจากนั้น
- อย่างเช่น
- ชี้ให้เห็นถึง
- เหมาะสม
- ที่จัดมา
- สนับสนุน
- ที่เหนือกว่า
- ที่ถูกระงับ
- พิรุธ
- ระบบ
- ระบบ
- ตาราง
- เอา
- การ
- เป้า
- เป้าหมาย
- กำหนดเป้าหมาย
- เป้าหมาย
- งาน
- งาน
- วิชาการ
- การวิเคราะห์ทางเทคนิค
- เทคนิค
- กว่า
- ที่
- พื้นที่
- ของพวกเขา
- พวกเขา
- แล้วก็
- ที่นั่น
- ล้อยางขัดเหล่านี้ติดตั้งบนแกน XNUMX (มม.) ผลิตภัณฑ์นี้ถูกผลิตในหลายรูปทรง และหลากหลายเบอร์ความแน่นหนาของปริมาณอนุภาคขัดของมัน จะทำให้ท่านได้รับประสิทธิภาพสูงในการขัดและการใช้งานที่ยาวนาน
- พวกเขา
- ที่สาม
- นี้
- เหล่านั้น
- การคุกคาม
- ภัยคุกคาม
- สาม
- ธรณีประตู
- ตลอด
- เวลา
- การประทับเวลา
- ชื่อหนังสือ
- ไปยัง
- โทเค็น
- เครื่องมือ
- รวม
- ไปทาง
- แบบดั้งเดิม
- โอน
- โอน
- ได้รับการรักษา
- ทริกเกอร์
- จริง
- กลับ
- สอง
- ชนิด
- ชนิด
- เป็นปกติ
- ไม่สามารถ
- ภายใต้
- ผ่านการ
- Unicode
- เป็นเอกลักษณ์
- คุณสมบัติที่เป็นเอกลักษณ์
- พร้อมใจกัน
- สหรัฐอาหรับเอมิเรตส์
- ไม่ทราบ
- ปลดล็อก
- ไม่มีชื่อ
- จนกระทั่ง
- ผิดปกติ
- ที่ไม่พึงประสงค์
- ให้กับคุณ
- การปรับปรุง
- อัปโหลด
- เมื่อ
- URL
- us
- การใช้
- ใช้
- มือสอง
- ผู้ใช้งาน
- ผู้ใช้
- ใช้
- การใช้
- นำไปใช้
- ใช้ประโยชน์
- ความคุ้มค่า
- ความคุ้มค่า
- ความหลากหลาย
- ต่างๆ
- แตกต่างกัน
- รุ่น
- มาก
- ผ่านทาง
- เหยื่อ
- เสมือน
- เยี่ยมชมร้านค้า
- สายตา
- รอ
- ที่รอ
- คือ
- we
- เว็บ
- คือ
- อะไร
- เมื่อ
- ว่า
- ที่
- ในขณะที่
- วิกิพีเดีย
- หน้าต่าง
- กับ
- ภายใน
- ไม่มี
- XML
- ปี
- ใช่
- ยัง
- ลมทะเล