บทความนี้เป็นส่วนหนึ่งของชุดมัลแวร์ไร้ไฟล์ ส่วนอื่น ๆ ทั้งหมดของซีรีส์:
-
การผจญภัยของ Malvari ที่เข้าใจยาก ตอนที่ XNUMX - Elusive Malware Adventures Part II: สคริปต์ VBA ที่ซ่อนอยู่ (เราอยู่ที่นี่)
ฉันเป็นแฟนของเว็บไซต์
ตัวอย่าง HA ที่ดึงดูดความสนใจของฉันใช้โค้ด JavaScript หรือสคริปต์ Visual Basic for Applications (VBA) ที่ฝังเป็นมาโครในเอกสาร Word หรือ Excel และแนบไปกับอีเมลฟิชชิ่ง เมื่อเปิดขึ้นมา มาโครเหล่านี้จะเริ่มเซสชัน PowerShell บนคอมพิวเตอร์ของเหยื่อ แฮ็กเกอร์มักจะส่งสตรีมคำสั่งที่เข้ารหัส Base64 ไปยัง PowerShell ทั้งหมดนี้ทำขึ้นเพื่อทำให้การโจมตีตรวจจับได้ยากด้วยตัวกรองเว็บและซอฟต์แวร์ป้องกันไวรัสที่ตอบสนองต่อคำหลักบางคำ
โชคดีที่ HA ถอดรหัส Base64 โดยอัตโนมัติและแสดงทุกอย่างในรูปแบบที่อ่านได้ทันที โดยพื้นฐานแล้ว คุณไม่ต้องสนใจว่าสคริปต์เหล่านี้ทำงานอย่างไร เพราะคุณจะสามารถเห็นผลลัพธ์ทั้งหมดของคำสั่งสำหรับการรันกระบวนการในส่วน HA ที่สอดคล้องกัน ดูตัวอย่างด้านล่าง:
การแยกวิเคราะห์แบบไฮบริดสกัดคำสั่งที่เข้ารหัส Base64 ที่ส่งไปยัง PowerShell:
... แล้วถอดรหัสให้คุณ #อย่างมีมนต์ขลัง
В
PowerShell Empire และ Reverse Shell
จุดประสงค์อย่างหนึ่งของแบบฝึกหัดนี้คือการแสดงให้เห็นว่า (ค่อนข้าง) ง่ายเพียงใดที่แฮ็กเกอร์จะข้ามการป้องกันและป้องกันไวรัสแบบคลาสสิก หากบล็อกเกอร์ด้านไอทีที่ไม่มีทักษะการเขียนโปรแกรมเช่นฉันสามารถทำได้ในสองสามตอนเย็น
และหากคุณเป็นเจ้าหน้าที่รักษาความปลอดภัยด้านไอที แต่ผู้จัดการของคุณไม่เข้าใจผลกระทบที่อาจเกิดขึ้นจากภัยคุกคามเหล่านี้ เพียงแสดงบทความนี้ให้พวกเขาเห็น
แฮ็กเกอร์ใฝ่ฝันที่จะเข้าถึงแล็ปท็อปหรือเซิร์ฟเวอร์ของเหยื่อโดยตรง สิ่งนี้ทำได้ง่ายมาก: สิ่งที่แฮ็กเกอร์ต้องการคือเก็บไฟล์ที่เป็นความลับสองสามไฟล์ในแล็ปท็อปของ CEO
อย่างใดฉันแล้ว
โดยพื้นฐานแล้วมันเป็นเครื่องมือทดสอบการเจาะที่ใช้ PowerShell ซึ่งรวมถึงคุณสมบัติอื่นๆ อีกมากมาย ทำให้ง่ายต่อการเรียกใช้ Reverse Shell ดูรายละเอียดเพิ่มเติมได้ที่
มาทำการทดลองกันสักหน่อย ฉันตั้งค่าสภาพแวดล้อมที่ปลอดภัยสำหรับการทดสอบมัลแวร์ในระบบคลาวด์ของ Amazon Web Services คุณสามารถทำตามตัวอย่างของฉันเพื่อแสดงตัวอย่างการทำงานของช่องโหว่นี้ได้อย่างรวดเร็วและปลอดภัย (และไม่ถูกไล่ออกเนื่องจากการเรียกใช้ไวรัสภายในขอบเขตขององค์กร)
หากคุณเรียกใช้คอนโซล PowerShell Empire คุณจะเห็นสิ่งนี้:
ก่อนอื่น คุณเริ่มกระบวนการฟังในเครื่องแฮ็กเกอร์ของคุณ ป้อนคำสั่ง "listener" และระบุที่อยู่ IP ของระบบของคุณโดยใช้ "set Host" จากนั้นเริ่มกระบวนการฟังด้วยคำสั่ง "ดำเนินการ" (ด้านล่าง) ดังนั้น ในด้านของคุณ คุณจะเริ่มรอการเชื่อมต่อเครือข่ายจากรีโมตเชลล์:
สำหรับอีกด้านหนึ่ง คุณจะต้องสร้างรหัสตัวแทนโดยป้อนคำสั่ง "ตัวเรียกใช้งาน" (ดูด้านล่าง) สิ่งนี้จะสร้างรหัส PowerShell สำหรับตัวแทนระยะไกล โปรดทราบว่ามีการเข้ารหัส Base64 และแสดงถึงเฟสที่สองของเพย์โหลด กล่าวอีกนัยหนึ่ง ตอนนี้โค้ด JavaScript ของฉันจะดึงเอเจนต์นี้เพื่อเรียกใช้ PowerShell แทนการแสดงข้อความที่ไม่เป็นอันตรายบนหน้าจอ และเชื่อมต่อกับเซิร์ฟเวอร์ PSE ระยะไกลของเราเพื่อเรียกใช้รีเวิร์สเชลล์
มายากลเปลือกย้อนกลับ คำสั่ง PowerShell ที่เข้ารหัสนี้จะเชื่อมต่อกับผู้ฟังของฉันและเริ่มเชลล์ระยะไกล
เพื่อแสดงการทดลองนี้ ฉันสวมบทบาทเป็นเหยื่อผู้บริสุทธิ์และเปิด Evil.doc ซึ่งเรียกใช้จาวาสคริปต์ของเรา จำภาคแรกได้ไหม? PowerShell ได้รับการกำหนดค่าให้ไม่ปรากฏขึ้น ดังนั้นเหยื่อจะไม่สังเกตเห็นสิ่งผิดปกติ อย่างไรก็ตาม หากคุณเปิดตัวจัดการงานของ Windows คุณจะเห็นกระบวนการพื้นหลังของ PowerShell ซึ่งส่วนใหญ่จะยังไม่ทำให้เกิดการเตือนใดๆ เพราะเป็น PowerShell ปกติใช่ไหม
ตอนนี้ เมื่อคุณเรียกใช้ Evil.doc กระบวนการเบื้องหลังที่ซ่อนอยู่จะเชื่อมต่อกับเซิร์ฟเวอร์ที่ใช้ PowerShell Empire สวมหมวกสีขาวของแฮ็กเกอร์เพนเทสเตอร์ ฉันกลับไปที่คอนโซล PowerShell Empire และตอนนี้ฉันเห็นข้อความว่าตัวแทนระยะไกลของฉันทำงานอยู่
จากนั้นฉันก็พิมพ์คำสั่ง "โต้ตอบ" เพื่อเปิดเชลล์ใน PSE - และฉันอยู่นี่! พูดสั้นๆ ว่าฉันแฮ็กเข้าเซิร์ฟเวอร์ Taco ที่ฉันตั้งค่าไว้เมื่อไม่นานนี้เอง
สิ่งที่ฉันเพิ่งแสดงให้เห็นนั้นไม่ต้องการให้คุณทำงานมากขนาดนั้น คุณสามารถทำทั้งหมดนี้ได้อย่างง่ายดายในช่วงพักกลางวันเป็นเวลา XNUMX-XNUMX ชั่วโมงเพื่อพัฒนาความรู้ของคุณเกี่ยวกับความปลอดภัยของข้อมูล นอกจากนี้ยังเป็นวิธีที่ดีในการทำความเข้าใจว่าแฮ็กเกอร์ข้ามการป้องกันขอบเขตความปลอดภัยภายนอกและแอบเข้าไปในระบบของคุณได้อย่างไร
ผู้จัดการฝ่ายไอทีที่คิดว่าพวกเขาสร้างการป้องกันที่ไม่มีใครทำลายได้จากการบุกรุกใดๆ ก็น่าจะพบว่ามันมีประโยชน์เช่นกัน ถ้าคุณสามารถโน้มน้าวให้พวกเขานั่งข้างๆ คุณได้นานพอ
กลับสู่ความเป็นจริง
อย่างที่ฉันคาดไว้ การแฮ็กจริงที่ผู้ใช้ทั่วไปไม่สามารถมองเห็นได้นั้นเป็นเพียงการเปลี่ยนแปลงของสิ่งที่ฉันเพิ่งอธิบายไป เพื่อรวบรวมเนื้อหาสำหรับสิ่งพิมพ์ครั้งต่อไป ฉันเริ่มมองหาตัวอย่างเกี่ยวกับ HA ซึ่งทำงานในลักษณะเดียวกับตัวอย่างที่ฉันประดิษฐ์ขึ้น และฉันไม่ต้องมองหามันนาน - มีตัวเลือกมากมายสำหรับเทคนิคการโจมตีบนเว็บไซต์
มัลแวร์ที่ฉันพบใน HA คือสคริปต์ VBA ที่ฝังอยู่ในเอกสาร Word นั่นคือฉันไม่จำเป็นต้องปลอมนามสกุลเอกสารด้วยซ้ำ มัลแวร์นี้เป็นเอกสาร Microsoft Word ที่ดูธรรมดาที่สุดจริงๆ ในกรณีที่คุณสงสัย ฉันเลือกรูปแบบนี้เรียกว่า
ฉันได้เรียนรู้อย่างรวดเร็วว่าคุณมักจะไม่สามารถดึงสคริปต์ VBA ที่เป็นอันตรายจากเอกสารได้โดยตรง แฮ็กเกอร์บีบอัดและซ่อนข้อมูลเหล่านั้น โดยจะไม่ปรากฏให้เห็นในเครื่องมือมาโครในตัวของ Word คุณจะต้องใช้เครื่องมือพิเศษในการสกัด โชคดีที่ฉันเจอเครื่องสแกน
เมื่อใช้เครื่องมือนี้ ฉันสามารถดึงโค้ด VBA ที่ยุ่งเหยิงอย่างมากออกมาได้ ดูเหมือนว่า:
ทำให้งงงวยโดยผู้เชี่ยวชาญในสาขาของตน ฉันประทับใจ!
ผู้โจมตีเก่งในการทำให้โค้ดยุ่งเหยิง ไม่เหมือนกับความพยายามของฉันในการสร้าง Evil.doc เอาล่ะ ในส่วนถัดไป เราจะมาแก้ไขจุดบกพร่อง VBA ของเรา เจาะลึกลงไปในโค้ดนี้อีกเล็กน้อย และเปรียบเทียบการวิเคราะห์ของเรากับผลลัพธ์ของ HA
ที่มา: will.com