Duqu เป็น matryoshka ที่เป็นอันตราย

การแนะนำ

เมื่อวันที่ 1 กันยายน 2011 ไฟล์ชื่อ ~DN1.tmp ถูกส่งไปยังเว็บไซต์ VirusTotal จากประเทศฮังการี ในเวลานั้น ไฟล์ดังกล่าวถูกตรวจพบว่าเป็นอันตรายโดยกลไกป้องกันไวรัสเพียงสองตัวเท่านั้น ได้แก่ BitDefender และ AVIRA นี่คือจุดเริ่มต้นของเรื่องราวของ Duqu มองไปข้างหน้าต้องบอกว่าตระกูลมัลแวร์ Duqu ได้รับการตั้งชื่อตามชื่อของไฟล์นี้ อย่างไรก็ตาม ไฟล์นี้เป็นโมดูลสปายแวร์อิสระอย่างสมบูรณ์ที่มีฟังก์ชันคีย์ล็อกเกอร์ ซึ่งติดตั้งแล้ว อาจใช้ตัวดาวน์โหลดที่เป็นอันตราย และถือได้ว่าเป็น "เพย์โหลด" เท่านั้นที่โหลดโดยมัลแวร์ Duqu ในระหว่างการดำเนินการ และไม่ใช่เป็นส่วนประกอบ ( โมดูล) ของ Duqu หนึ่งในส่วนประกอบ Duqu ถูกส่งไปยังบริการ Virustotal ในวันที่ 9 กันยายนเท่านั้น คุณสมบัติที่โดดเด่นของมันคือไดรเวอร์ที่เซ็นชื่อแบบดิจิทัลโดย C-Media ผู้เชี่ยวชาญบางคนเริ่มทำการเปรียบเทียบกับตัวอย่างมัลแวร์ที่มีชื่อเสียงอีกตัวอย่างหนึ่งทันที - Stuxnet ซึ่งใช้ไดรเวอร์ที่มีลายเซ็นด้วย จำนวนคอมพิวเตอร์ที่ติดไวรัส Duqu ที่ตรวจพบโดยบริษัทแอนตี้ไวรัสต่างๆ ทั่วโลกมีจำนวนหลายสิบเครื่อง บริษัทหลายแห่งอ้างว่าอิหร่านเป็นเป้าหมายหลักอีกครั้ง แต่เมื่อพิจารณาจากการกระจายตัวของการติดเชื้อทางภูมิศาสตร์แล้ว ไม่สามารถพูดได้อย่างแน่นอน
Duqu เป็น matryoshka ที่เป็นอันตราย
ในกรณีนี้ คุณควรพูดอย่างมั่นใจเกี่ยวกับบริษัทอื่นด้วยคำที่แปลกใหม่เท่านั้น APT (ภัยคุกคามต่อเนื่องขั้นสูง)

ขั้นตอนการนำระบบไปใช้

การสอบสวนที่ดำเนินการโดยผู้เชี่ยวชาญจากองค์กร CrySyS ของฮังการี (ห้องปฏิบัติการการเข้ารหัสและความปลอดภัยของระบบของฮังการีที่มหาวิทยาลัยเทคโนโลยีและเศรษฐศาสตร์บูดาเปสต์) นำไปสู่การค้นพบตัวติดตั้ง (หยด) ที่ระบบติดไวรัส มันเป็นไฟล์ Microsoft Word ที่มีการใช้ประโยชน์จากช่องโหว่ของไดรเวอร์ win32k.sys (MS11-087 อธิบายโดย Microsoft เมื่อวันที่ 13 พฤศจิกายน 2011) ซึ่งรับผิดชอบกลไกการแสดงผลแบบอักษร TTF เชลล์โค้ดของการหาประโยชน์ใช้แบบอักษรชื่อ 'Dexter Regular' ที่ฝังอยู่ในเอกสาร โดยมี Showtime Inc. ระบุว่าเป็นผู้สร้างแบบอักษร อย่างที่คุณเห็นผู้สร้าง Duqu ไม่ใช่คนแปลกหน้าในเรื่องอารมณ์ขัน Dexter เป็นฆาตกรต่อเนื่องซึ่งเป็นฮีโร่ของซีรีส์ทางโทรทัศน์ชื่อเดียวกันที่ผลิตโดย Showtime เด็กซ์เตอร์ฆ่าอาชญากรเท่านั้น (ถ้าเป็นไปได้) นั่นคือเขาฝ่าฝืนกฎหมายในนามของความถูกต้องตามกฎหมาย ด้วยวิธีนี้นักพัฒนา Duqu อาจน่าขันที่พวกเขามีส่วนร่วมในกิจกรรมที่ผิดกฎหมายเพื่อจุดประสงค์ที่ดี การส่งอีเมลทำได้โดยเจตนา การจัดส่งส่วนใหญ่มักใช้คอมพิวเตอร์ที่ถูกบุกรุก (ถูกแฮ็ก) เป็นตัวกลางเพื่อทำให้การติดตามทำได้ยาก
เอกสาร Word จึงมีองค์ประกอบดังต่อไปนี้:

  • เนื้อหาข้อความ
  • แบบอักษรในตัว
  • ใช้ประโยชน์จากเชลล์โค้ด;
  • คนขับ;
  • ตัวติดตั้ง (ไลบรารี DLL)

หากสำเร็จ เชลล์ช่องโหว่จะดำเนินการต่อไปนี้ (ในโหมดเคอร์เนล):

  • มีการตรวจสอบการติดเชื้อซ้ำ ด้วยเหตุนี้ มีการตรวจสอบการมีอยู่ของคีย์ 'CF4D' ในรีจิสทรีที่ที่อยู่ 'HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionInternet SettingsZones1' หากสิ่งนี้ถูกต้อง เชลล์โค้ดจะดำเนินการเสร็จสิ้น
  • ถอดรหัสสองไฟล์ - ไดรเวอร์ (sys) และตัวติดตั้ง (dll);
  • ไดรเวอร์ถูกฉีดเข้าไปในกระบวนการ services.exe และเปิดตัวโปรแกรมติดตั้ง
  • ในที่สุดเชลล์โค้ดก็ลบตัวเองด้วยศูนย์ในหน่วยความจำ

เนื่องจากข้อเท็จจริงที่ว่า win32k.sys ได้รับการดำเนินการภายใต้ 'ระบบ' ของผู้ใช้ที่ได้รับสิทธิพิเศษ นักพัฒนา Duqu จึงสามารถแก้ไขปัญหาทั้งการเปิดตัวโดยไม่ได้รับอนุญาตและการเพิ่มระดับสิทธิ์ได้อย่างสวยงาม (ทำงานภายใต้บัญชีผู้ใช้ที่มีสิทธิ์จำกัด)
หลังจากได้รับการควบคุมแล้ว โปรแกรมติดตั้งจะถอดรหัสข้อมูลสามบล็อกที่มีอยู่ในหน่วยความจำ ซึ่งมี:

  • ไดรเวอร์ที่ลงนาม (sys);
  • โมดูลหลัก (dll);
  • ข้อมูลการกำหนดค่าตัวติดตั้ง (pnf)

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

Duqu เป็น matryoshka ที่เป็นอันตราย

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

โมดูลหลัก

โมดูลหลัก (ทรัพยากร 302) ตาม ข้อมูล บริษัท Kaspersky Lab เขียนโดยใช้ MSVC 2008 ในภาษา C ล้วนๆ แต่ใช้วิธีการเชิงวัตถุ วิธีการนี้ไม่เคยมีมาก่อนในการพัฒนาโค้ดที่เป็นอันตราย ตามกฎแล้ว โค้ดดังกล่าวเขียนด้วยภาษา C เพื่อลดขนาดและกำจัดการเรียกโดยนัยที่มีอยู่ใน C++ มี symbiosis บางอย่างที่นี่ นอกจากนี้ยังใช้สถาปัตยกรรมที่ขับเคลื่อนด้วยเหตุการณ์อีกด้วย พนักงานของ Kaspersky Lab โน้มเอียงไปตามทฤษฎีที่ว่าโมดูลหลักเขียนโดยใช้โปรแกรมเสริมพรีโปรเซสเซอร์ที่ให้คุณเขียนโค้ด C ในรูปแบบออบเจ็กต์ได้
โมดูลหลักมีหน้าที่รับผิดชอบขั้นตอนการรับคำสั่งจากผู้ปฏิบัติงาน Duqu มีวิธีการโต้ตอบหลายวิธี: การใช้โปรโตคอล HTTP และ HTTPS รวมถึงการใช้ไปป์ที่มีชื่อ สำหรับ HTTP(S) มีการระบุชื่อโดเมนของศูนย์บัญชาการ และให้ความสามารถในการทำงานผ่านพร็อกซีเซิร์ฟเวอร์ - มีการระบุชื่อผู้ใช้และรหัสผ่าน มีการระบุที่อยู่ IP และชื่อสำหรับช่อง ข้อมูลที่ระบุจะถูกจัดเก็บไว้ในบล็อกข้อมูลการกำหนดค่าโมดูลหลัก (ในรูปแบบที่เข้ารหัส)
หากต้องการใช้เนมไปป์ เราได้เปิดตัวการใช้งานเซิร์ฟเวอร์ RPC ของเราเอง รองรับเจ็ดฟังก์ชันต่อไปนี้:

  • ส่งคืนเวอร์ชันที่ติดตั้ง
  • ฉีด dll เข้าไปในกระบวนการที่ระบุและเรียกใช้ฟังก์ชันที่ระบุ
  • โหลด dll;
  • เริ่มกระบวนการโดยการเรียก CreateProcess();
  • อ่านเนื้อหาของไฟล์ที่กำหนด
  • เขียนข้อมูลไปยังไฟล์ที่ระบุ
  • ลบไฟล์ที่ระบุ

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

รู้จัก "เพย์โหลด"

ไซแมนเทคค้นพบเพย์โหลดอย่างน้อยสี่ประเภทที่ดาวน์โหลดภายใต้คำสั่งจากศูนย์ควบคุม Duqu
ยิ่งไปกว่านั้น มีเพียงหนึ่งในนั้นเท่านั้นที่อาศัยอยู่และคอมไพล์เป็นไฟล์ปฏิบัติการ (exe) ซึ่งได้รับการบันทึกลงดิสก์ ส่วนที่เหลืออีกสามรายการถูกนำมาใช้เป็นไลบรารี dll โหลดแบบไดนามิกและดำเนินการในหน่วยความจำโดยไม่ต้องบันทึกลงดิสก์

"เพย์โหลด" ประจำถิ่นเป็นโมดูลสอดแนม (ผู้ขโมยข้อมูล) พร้อมฟังก์ชันคีย์ล็อกเกอร์ โดยการส่งไปที่ VirusTotal งานวิจัยของ Duqu จึงเริ่มต้นขึ้น ฟังก์ชั่นสายลับหลักอยู่ในทรัพยากร 8 กิโลไบต์แรกซึ่งมีส่วนหนึ่งของภาพถ่ายของกาแล็กซี NGC 6745 (สำหรับการพรางตัว) ควรระลึกไว้ ณ ที่แห่งนี้ว่าในเดือนเมษายน 2012 สื่อบางแห่งเผยแพร่ข้อมูล (http://www.mehrnews.com/en/newsdetail.aspx?NewsID=1297506) ว่าอิหร่านถูกเปิดเผยต่อซอฟต์แวร์ที่เป็นอันตราย “Stars” ขณะที่รายละเอียดเกี่ยวกับ เหตุการณ์ดังกล่าวไม่ได้รับการเปิดเผย บางทีมันอาจเป็นเพียงตัวอย่าง "น้ำหนักบรรทุก" ของ Duqu ที่ถูกค้นพบในอิหร่านในตอนนั้น จึงเป็นที่มาของชื่อ "ดวงดาว"
โมดูลสอดแนมรวบรวมข้อมูลต่อไปนี้:

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

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

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

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

ศูนย์บัญชาการ

เมื่อวันที่ 20 ตุลาคม 2011 (สามวันหลังจากการเผยแพร่ข้อมูลเกี่ยวกับการค้นพบ) ผู้ปฏิบัติงาน Duqu ได้ดำเนินการตามขั้นตอนเพื่อทำลายร่องรอยการทำงานของศูนย์บัญชาการ ศูนย์บัญชาการตั้งอยู่บนเซิร์ฟเวอร์ที่ถูกแฮ็กทั่วโลก - ในเวียดนาม, อินเดีย, เยอรมนี, สิงคโปร์, สวิตเซอร์แลนด์, บริเตนใหญ่, ฮอลแลนด์, เกาหลีใต้ สิ่งที่น่าสนใจคือเซิร์ฟเวอร์ที่ระบุทั้งหมดใช้ CentOS เวอร์ชัน 5.2, 5.4 หรือ 5.5 ระบบปฏิบัติการมีทั้งแบบ 32 บิตและ 64 บิต แม้ว่าไฟล์ทั้งหมดที่เกี่ยวข้องกับการทำงานของศูนย์บัญชาการจะถูกลบไปแล้ว แต่ผู้เชี่ยวชาญของ Kaspersky Lab ก็สามารถกู้คืนข้อมูลบางส่วนจากไฟล์ LOG จากพื้นที่ว่างได้ ข้อเท็จจริงที่น่าสนใจที่สุดคือผู้โจมตีบนเซิร์ฟเวอร์จะแทนที่แพ็คเกจ OpenSSH 4.3 เริ่มต้นเป็นเวอร์ชัน 5.8 เสมอ นี่อาจบ่งชี้ว่ามีการใช้ช่องโหว่ที่ไม่รู้จักใน OpenSSH 4.3 เพื่อแฮ็กเซิร์ฟเวอร์ ไม่ใช่ทุกระบบจะถูกนำมาใช้เป็นศูนย์บัญชาการ บางส่วนตัดสินโดยข้อผิดพลาดในบันทึก sshd เมื่อพยายามเปลี่ยนเส้นทางการรับส่งข้อมูลสำหรับพอร์ต 80 และ 443 ถูกใช้เป็นพร็อกซีเซิร์ฟเวอร์เพื่อเชื่อมต่อกับศูนย์บัญชาการปลายทาง

วันที่และโมดูล

เอกสาร Word ที่เผยแพร่ในเดือนเมษายน พ.ศ. 2011 ซึ่งได้รับการตรวจสอบโดย Kaspersky Lab มีไดรเวอร์ดาวน์โหลดตัวติดตั้งซึ่งมีวันที่รวบรวมคือวันที่ 31 สิงหาคม พ.ศ. 2007 ไดรเวอร์ที่คล้ายกัน (ขนาด - 20608 ไบต์, MD5 - EEDCA45BD613E0D9A9E5C69122007F17) ในเอกสารที่พบในห้องปฏิบัติการ CrySys มีวันที่รวบรวมเป็นวันที่ 21 กุมภาพันธ์ 2008 นอกจากนี้ ผู้เชี่ยวชาญของ Kaspersky Lab พบไดรเวอร์การทำงานอัตโนมัติ rndismpc.sys (ขนาด - 19968 ไบต์, MD5 - 9AEC6E10C5EE9C05BED93221544C783E) โดยมีวันที่ 20 มกราคม 2008 ไม่พบส่วนประกอบที่มีเครื่องหมาย 2009 จากการประทับเวลาของการรวบรวมแต่ละส่วนของ Duqu การพัฒนาอาจย้อนกลับไปถึงต้นปี 2007 การปรากฏตัวครั้งแรกสุดเกี่ยวข้องกับการตรวจหาไฟล์ชั่วคราวประเภท ~DO (อาจสร้างโดยหนึ่งในโมดูลสปายแวร์) วันที่สร้างคือ 28 พฤศจิกายน 2008 (บทความ "Duqu & Stuxnet: เส้นเวลาของเหตุการณ์ที่น่าสนใจ") วันที่ล่าสุดที่เกี่ยวข้องกับ Duqu คือวันที่ 23 กุมภาพันธ์ 2012 ซึ่งอยู่ในไดรเวอร์ดาวน์โหลดตัวติดตั้งที่ Symantec ค้นพบในเดือนมีนาคม 2012

แหล่งที่มาของข้อมูลที่ใช้:

ชุดบทความ เกี่ยวกับ Duqu จาก Kaspersky Lab
รายงานการวิเคราะห์ของไซแมนเทค "W32.Duqu ผู้นำของ Stuxnet ตัวถัดไป"เวอร์ชัน 1.4 พฤศจิกายน 2011 (pdf)

ที่มา: will.com

เพิ่มความคิดเห็น