ค้นหาเว็บไซต์

การใช้การควบคุมแอปพลิเคชัน Windows Defender


Windows 10 มีสองเทคโนโลยี ได้แก่ Windows Defender Application Control (WDAC) และ AppLocker ที่คุณสามารถใช้เพื่อควบคุมแอปพลิเคชัน สิ่งเหล่านี้ช่วยให้คุณสร้างประสบการณ์การล็อคดาวน์เพื่อช่วยรักษาความปลอดภัยสภาพแวดล้อม PowerShell ของคุณ

AppLocker สร้างจากคุณลักษณะการควบคุมแอปพลิเคชันของนโยบายการจำกัดซอฟต์แวร์ AppLocker มีความสามารถและส่วนขยายที่ช่วยให้คุณสามารถสร้างกฎเพื่ออนุญาตหรือปฏิเสธแอปไม่ให้ทำงานตามข้อมูลเฉพาะตัวของไฟล์ และเพื่อระบุผู้ใช้หรือกลุ่มที่ได้รับอนุญาตให้เรียกใช้แอปเหล่านั้น

บันทึก

เมื่อเลือกระหว่าง WDAC หรือ AppLocker เราขอแนะนำให้คุณใช้การควบคุมแอปพลิเคชันโดยใช้ WDAC แทน AppLocker Microsoft กำลังปรับปรุง WDAC อย่างต่อเนื่อง และแพลตฟอร์มการจัดการของ Microsoft กำลังขยายการสนับสนุนสำหรับ WDAC แม้ว่า AppLocker อาจยังคงได้รับการแก้ไขด้านความปลอดภัย แต่จะไม่ได้รับการปรับปรุงคุณสมบัติ

WDAC เปิดตัวพร้อมกับ Windows 10 และช่วยให้องค์กรต่างๆ สามารถควบคุมไดรเวอร์และแอปพลิเคชันต่างๆ ที่ได้รับอนุญาตให้ทำงานบนอุปกรณ์ Windows ของตนได้ WDAC ได้รับการออกแบบให้เป็นคุณลักษณะด้านความปลอดภัยภายใต้เกณฑ์การให้บริการที่กำหนดโดย Microsoft Security Response Center (MSRC)

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ AppLocker และ WDAC โปรดดูที่การควบคุมแอปพลิเคชันสำหรับ Windows และคุณสมบัติ WDAC และ AppLocker

การบังคับใช้นโยบาย WDAC

เมื่อ PowerShell ทำงานภายใต้นโยบาย WDAC PowerShell จะเปลี่ยนพฤติกรรมตามนโยบายความปลอดภัยที่กำหนดไว้ ภายใต้นโยบาย WDAC นั้น PowerShell จะเรียกใช้สคริปต์และโมดูลที่เชื่อถือได้ซึ่งอนุญาตโดยนโยบายในโหมดภาษาเต็ม สคริปต์และบล็อกสคริปต์อื่นๆ ทั้งหมดไม่น่าเชื่อถือและทำงานในโหมดภาษาที่จำกัด PowerShell จะแสดงข้อผิดพลาดเมื่อสคริปต์ที่ไม่น่าเชื่อถือพยายามดำเนินการที่ไม่ได้รับอนุญาตในโหมดภาษาที่จำกัด อาจเป็นเรื่องยากที่จะทราบว่าเหตุใดสคริปต์จึงทำงานไม่ถูกต้องในโหมดภาษาที่จำกัด

การตรวจสอบนโยบาย WDAC

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

กำลังดูเหตุการณ์การตรวจสอบ

PowerShell บันทึกเหตุการณ์การตรวจสอบลงในบันทึกเหตุการณ์ PowerShellCore/Analytic คุณต้องเปิดใช้งานบันทึกการวิเคราะห์ หากต้องการเปิดใช้งานบันทึกการวิเคราะห์ใน Windows Event Viewer ให้คลิกขวาที่บันทึก PowerShellCore/Analytic และเลือก เปิดใช้งานบันทึก

หรือคุณสามารถเรียกใช้คำสั่งต่อไปนี้จากเซสชัน PowerShell ที่ยกระดับ

wevtutil.exe sl PowerShellCore/Analytic /enabled:true /quiet

คุณสามารถดูเหตุการณ์ใน Windows Event Viewer หรือใช้ Get-WinEvent cmdlet เพื่อดึงข้อมูลเหตุการณ์

Get-WinEvent -LogName PowerShellCore/Analytic -Oldest |
    Where-Object Id -eq 16387 | Format-List
TimeCreated  : 4/19/2023 10:11:07 AM
ProviderName : PowerShellCore
Id           : 16387
Message      : WDAC Audit.

    Title: Method or Property Invocation
    Message: Method or Property 'WriteLine' on type 'System.Console' invocation will not
        be allowed in ConstrainedLanguage mode.
        At C:\scripts\Test1.ps1:3 char:1
        + [System.Console]::WriteLine("pwnd!")
        + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    FullyQualifiedId: MethodOrPropertyInvocationNotAllowed

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

มันเป็นสิ่งสำคัญ

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

การดูเหตุการณ์การตรวจสอบในตัวดีบักเกอร์ PowerShell

หากคุณตั้งค่าตัวแปร $DebugPreference เป็น Break สำหรับเซสชัน PowerShell แบบโต้ตอบ PowerShell จะเจาะเข้าไปในดีบักเกอร์สคริปต์บรรทัดคำสั่งที่ตำแหน่งปัจจุบันในสคริปต์ที่เหตุการณ์การตรวจสอบ ที่เกิดขึ้น. ซึ่งจะทำให้คุณสามารถดีบักโค้ดของคุณและตรวจสอบสถานะปัจจุบันของสคริปต์ได้แบบเรียลไทม์

บทความที่เกี่ยวข้อง