การผจญภัยของมัลแวร์ที่เข้าใจยาก ตอนที่ II: สคริปต์ VBA ที่ซ่อนอยู่

การผจญภัยของมัลแวร์ที่เข้าใจยาก ตอนที่ II: สคริปต์ VBA ที่ซ่อนอยู่

บทความนี้เป็นส่วนหนึ่งของชุดมัลแวร์ไร้ไฟล์ ส่วนอื่น ๆ ทั้งหมดของซีรีส์:

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

ตัวอย่าง HA ที่ดึงดูดความสนใจของฉันใช้โค้ด JavaScript หรือสคริปต์ Visual Basic for Applications (VBA) ที่ฝังเป็นมาโครในเอกสาร Word หรือ Excel และแนบไปกับอีเมลฟิชชิ่ง เมื่อเปิดขึ้นมา มาโครเหล่านี้จะเริ่มเซสชัน PowerShell บนคอมพิวเตอร์ของเหยื่อ แฮ็กเกอร์มักจะส่งสตรีมคำสั่งที่เข้ารหัส Base64 ไปยัง PowerShell ทั้งหมดนี้ทำขึ้นเพื่อทำให้การโจมตีตรวจจับได้ยากด้วยตัวกรองเว็บและซอฟต์แวร์ป้องกันไวรัสที่ตอบสนองต่อคำหลักบางคำ
โชคดีที่ HA ถอดรหัส Base64 โดยอัตโนมัติและแสดงทุกอย่างในรูปแบบที่อ่านได้ทันที โดยพื้นฐานแล้ว คุณไม่ต้องสนใจว่าสคริปต์เหล่านี้ทำงานอย่างไร เพราะคุณจะสามารถเห็นผลลัพธ์ทั้งหมดของคำสั่งสำหรับการรันกระบวนการในส่วน HA ที่สอดคล้องกัน ดูตัวอย่างด้านล่าง:

การผจญภัยของมัลแวร์ที่เข้าใจยาก ตอนที่ II: สคริปต์ VBA ที่ซ่อนอยู่

การแยกวิเคราะห์แบบไฮบริดสกัดคำสั่งที่เข้ารหัส Base64 ที่ส่งไปยัง PowerShell:

การผจญภัยของมัลแวร์ที่เข้าใจยาก ตอนที่ II: สคริปต์ VBA ที่ซ่อนอยู่

... แล้วถอดรหัสให้คุณ #อย่างมีมนต์ขลัง

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

PowerShell Empire และ Reverse Shell

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

และหากคุณเป็นเจ้าหน้าที่รักษาความปลอดภัยด้านไอที แต่ผู้จัดการของคุณไม่เข้าใจผลกระทบที่อาจเกิดขึ้นจากภัยคุกคามเหล่านี้ เพียงแสดงบทความนี้ให้พวกเขาเห็น

แฮ็กเกอร์ใฝ่ฝันที่จะเข้าถึงแล็ปท็อปหรือเซิร์ฟเวอร์ของเหยื่อโดยตรง สิ่งนี้ทำได้ง่ายมาก: สิ่งที่แฮ็กเกอร์ต้องการคือเก็บไฟล์ที่เป็นความลับสองสามไฟล์ในแล็ปท็อปของ CEO

อย่างใดฉันแล้ว อ้าง เกี่ยวกับรันไทม์ PowerShell Empire หลังการผลิต มาจำกันว่ามันคืออะไร

โดยพื้นฐานแล้วมันเป็นเครื่องมือทดสอบการเจาะที่ใช้ PowerShell ซึ่งรวมถึงคุณสมบัติอื่นๆ อีกมากมาย ทำให้ง่ายต่อการเรียกใช้ Reverse Shell ดูรายละเอียดเพิ่มเติมได้ที่ เว็บไซต์บ้าน PSE.

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

หากคุณเรียกใช้คอนโซล PowerShell Empire คุณจะเห็นสิ่งนี้:

การผจญภัยของมัลแวร์ที่เข้าใจยาก ตอนที่ II: สคริปต์ VBA ที่ซ่อนอยู่

ก่อนอื่น คุณเริ่มกระบวนการฟังในเครื่องแฮ็กเกอร์ของคุณ ป้อนคำสั่ง "listener" และระบุที่อยู่ IP ของระบบของคุณโดยใช้ "set Host" จากนั้นเริ่มกระบวนการฟังด้วยคำสั่ง "ดำเนินการ" (ด้านล่าง) ดังนั้น ในด้านของคุณ คุณจะเริ่มรอการเชื่อมต่อเครือข่ายจากรีโมตเชลล์:

การผจญภัยของมัลแวร์ที่เข้าใจยาก ตอนที่ II: สคริปต์ VBA ที่ซ่อนอยู่

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

การผจญภัยของมัลแวร์ที่เข้าใจยาก ตอนที่ II: สคริปต์ VBA ที่ซ่อนอยู่
มายากลเปลือกย้อนกลับ คำสั่ง PowerShell ที่เข้ารหัสนี้จะเชื่อมต่อกับผู้ฟังของฉันและเริ่มเชลล์ระยะไกล

เพื่อแสดงการทดลองนี้ ฉันสวมบทบาทเป็นเหยื่อผู้บริสุทธิ์และเปิด Evil.doc ซึ่งเรียกใช้จาวาสคริปต์ของเรา จำภาคแรกได้ไหม? PowerShell ได้รับการกำหนดค่าให้ไม่ปรากฏขึ้น ดังนั้นเหยื่อจะไม่สังเกตเห็นสิ่งผิดปกติ อย่างไรก็ตาม หากคุณเปิดตัวจัดการงานของ Windows คุณจะเห็นกระบวนการพื้นหลังของ PowerShell ซึ่งส่วนใหญ่จะยังไม่ทำให้เกิดการเตือนใดๆ เพราะเป็น PowerShell ปกติใช่ไหม

การผจญภัยของมัลแวร์ที่เข้าใจยาก ตอนที่ II: สคริปต์ VBA ที่ซ่อนอยู่

ตอนนี้ เมื่อคุณเรียกใช้ Evil.doc กระบวนการเบื้องหลังที่ซ่อนอยู่จะเชื่อมต่อกับเซิร์ฟเวอร์ที่ใช้ PowerShell Empire สวมหมวกสีขาวของแฮ็กเกอร์เพนเทสเตอร์ ฉันกลับไปที่คอนโซล PowerShell Empire และตอนนี้ฉันเห็นข้อความว่าตัวแทนระยะไกลของฉันทำงานอยู่

การผจญภัยของมัลแวร์ที่เข้าใจยาก ตอนที่ II: สคริปต์ VBA ที่ซ่อนอยู่

จากนั้นฉันก็พิมพ์คำสั่ง "โต้ตอบ" เพื่อเปิดเชลล์ใน PSE - และฉันอยู่นี่! พูดสั้นๆ ว่าฉันแฮ็กเข้าเซิร์ฟเวอร์ Taco ที่ฉันตั้งค่าไว้เมื่อไม่นานนี้เอง

การผจญภัยของมัลแวร์ที่เข้าใจยาก ตอนที่ II: สคริปต์ VBA ที่ซ่อนอยู่

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

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

กลับสู่ความเป็นจริง

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

มัลแวร์ที่ฉันพบใน HA คือสคริปต์ VBA ที่ฝังอยู่ในเอกสาร Word นั่นคือฉันไม่จำเป็นต้องปลอมนามสกุลเอกสารด้วยซ้ำ มัลแวร์นี้เป็นเอกสาร Microsoft Word ที่ดูธรรมดาที่สุดจริงๆ ในกรณีที่คุณสงสัย ฉันเลือกรูปแบบนี้เรียกว่า rfq.doc.

ฉันได้เรียนรู้อย่างรวดเร็วว่าคุณมักจะไม่สามารถดึงสคริปต์ VBA ที่เป็นอันตรายจากเอกสารได้โดยตรง แฮ็กเกอร์บีบอัดและซ่อนข้อมูลเหล่านั้น โดยจะไม่ปรากฏให้เห็นในเครื่องมือมาโครในตัวของ Word คุณจะต้องใช้เครื่องมือพิเศษในการสกัด โชคดีที่ฉันเจอเครื่องสแกน สำนักงาน MalScanner แฟรงค์ บอลด์วิน. ขอบคุณแฟรงค์

เมื่อใช้เครื่องมือนี้ ฉันสามารถดึงโค้ด VBA ที่ยุ่งเหยิงอย่างมากออกมาได้ ดูเหมือนว่า:

การผจญภัยของมัลแวร์ที่เข้าใจยาก ตอนที่ II: สคริปต์ VBA ที่ซ่อนอยู่
ทำให้งงงวยโดยผู้เชี่ยวชาญในสาขาของตน ฉันประทับใจ!

ผู้โจมตีเก่งในการทำให้โค้ดยุ่งเหยิง ไม่เหมือนกับความพยายามของฉันในการสร้าง Evil.doc เอาล่ะ ในส่วนถัดไป เราจะมาแก้ไขจุดบกพร่อง VBA ของเรา เจาะลึกลงไปในโค้ดนี้อีกเล็กน้อย และเปรียบเทียบการวิเคราะห์ของเรากับผลลัพธ์ของ HA

ที่มา: will.com

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