評估惡意探索保護
適用於:
想要體驗適用於端點的 Microsoft Defender 嗎? 注册免費試用版。
惡意探索保護可協助保護裝置,以避免惡意程式碼使用惡意探索來散播和感染其他裝置。 緩和措施可套用至作業系統或個別應用程式。 增強的緩和措施體驗工具組 (EMET) 中的許多功能包含在惡意探索保護中。 (EMET 已終止支援。)
在稽核中,您可以在測試環境中查看緩和措施如何在特定應用程式中運作。 這會顯示當您在生產環境中啟用惡意探索保護時 會發生什麼 事。 如此一來,您可以確認惡意探索保護不會對企業營運應用程式造成負面影響,並查看發生哪些可疑或惡意事件。
一般指導方針
惡意探索保護防護功能可在操作系統中低階運作,而某些執行類似低階作業的軟體在設定為使用惡意探索保護來保護時,可能會有相容性問題。
哪些類型的軟體不應該受到惡意探索保護的保護?
- 反惡意代碼和入侵防護或偵測軟體
- 調試
- 處理DRM) 技術 (數位版權管理的軟體,也就是視訊遊戲 ()
- 使用反偵錯、模糊化或攔截技術的軟體
您應該考慮啟用惡意探索保護的應用程式類型為何?
接收或處理不受信任數據的應用程式。
哪種類型的程式超出惡意探索保護的範圍?
服務
- 系統服務
- 網路服務
默認會啟用惡意探索保護防護功能
緩和措施 | 預設啟用 |
---|---|
資料執行防護 (DEP) | 64 位和32位應用程式 |
驗證例外狀況鏈結 (SEHOP) | 64 位應用程式 |
驗證堆積完整性 | 64 位和32位應用程式 |
已淘汰的「程式設定」防護功能
「程式設定」防護功能 | 原因 |
---|---|
匯出位址篩選 (EAF) | 應用程式相容性問題 |
匯入位址篩選 (IAF) | 應用程式相容性問題 |
模擬執行 (SimExec) | 取代為任意程式代碼防護 (ACG) |
驗證 API 引動過程 (CallerCheck) | 取代為任意程式代碼防護 (ACG) |
驗證堆疊完整性 (StackPivot) | 取代為任意程式代碼防護 (ACG) |
Office 應用程式最佳做法
與其針對 Outlook、Word、Excel、PowerPoint 和 OneNote 等 Office 應用程式使用惡意探索保護,請考慮使用較新的方法來防止其誤用:降低攻擊面規則 (ASR 規則) :
- 封鎖來自電子郵件用戶端和 Webmail 的可執行內容
- 封鎖 Office 應用程式使其無法建立可執行的內容
- 封鎖所有 Office 應用程式使其無法建立子程序
- 封鎖 Office 通訊應用程式使其無法建立子程序
- 封鎖 Office 應用程式使其無法將程式碼插入其他程序
- 封鎖可能經過模糊化的指令碼的執行
- 封鎖來自 Office 巨集的 Win32 API 呼叫
針對 Adobe Reader,請使用下列 ASR 規則:
應用程式相容性清單
下表列出特定產品,這些產品與惡意探索保護中包含的防護功能有相容性問題。 如果您想要使用惡意探索保護來保護產品,您必須停用特定不相容的風險降低措施。 請注意,此清單會將最新版本產品的預設設定納入考慮。 當您將特定載入巨集或其他元件套用至標準軟體時,可能會發生相容性問題。
產品 | 惡意探索保護防護功能 |
---|---|
.NET 2.0/3.5 | EAF/IAF |
7-Zip 主控台/GUI/檔案管理員 | EAF |
AMD 62xx 處理器 | EAF |
Avecto (超越信任) Power Broker | EAF、EAF+、Stack 樞紐 |
特定 AMD (ATI) 視訊驅動程式 | 系統 ASLR=AlwaysOn |
DropBox | EAF |
Excel Power Query、Power View、Power Map 和 PowerPivot | EAF |
Google Chrome | EAF+ |
Immidio Flex+ | EAF |
Microsoft Office Web 元件 (OWC) | 系統 DEP=AlwaysOn |
Microsoft PowerPoint | EAF |
Microsoft Teams | EAF+ |
Oracle Javaǂ | Heapspray |
Pitney Bowes Print Audit 6 | SimExecFlow |
Siebel CRM 版本為 8.1.1.9 | SEHOP |
Skype | EAF |
SolarWinds Syslogd Manager | EAF |
Windows Media Player | MandatoryASLR、EAF |
ǂ EMET 防護功能在執行時,可能會與 Oracle Java 不相容,方法是使用設定來保留虛擬機 (的大量記憶體,也就是使用 -Xms 選項) 。
啟用惡意探索保護系統設定以進行測試
默認會啟用這些惡意探索保護系統設定,但 Windows 10 和更新版本、Windows Server 2019 和更新版本以及 Windows Server 1803 核心版和更新版本上的強制地址空間配置隨機 (ASLR) 除外。
系統設定 | 設定 |
---|---|
控制流量防護 (CFG) | 使用預設 (On) |
資料執行防護 (DEP) | 使用預設 (On) |
強制隨機化影像 (強制 ASRL) | 使用預設 (關閉) |
將記憶體配置隨機 (從下到上 ASRL) | 使用預設 (On) |
高熵 ASRL | 使用預設 (On) |
驗證例外狀況鏈結 (SEHOP) | 使用預設 (On) |
xml 範例如下所示
<?xml version="1.0" encoding="UTF-8"?>
<MitigationPolicy>
<SystemConfig>
<DEP Enable="true" EmulateAtlThunks="false" />
<ASLR ForceRelocateImages="false" RequireInfo="false" BottomUp="true" HighEntropy="true" />
<ControlFlowGuard Enable="true" SuppressExports="false" />
<SEHOP Enable="true" TelemetryOnly="false" />
<Heap TerminateOnError="true" />
</SystemConfig>
</MitigationPolicy>
啟用惡意探索保護計劃設定以進行測試
提示
強烈建議您檢閱新式的弱點防護方法,也就是使用 「降低攻擊面」規則 (ASR 規則) 。
您可以使用 Windows 安全性應用程式或 Windows PowerShell,在測試模式中設定特定程式的緩和措施。
Windows 安全性應用程式
開啟 Windows 安全性應用程式。 在工作列中選取防護盾圖示,或在 [開始] 功能表中搜尋 [Windows 安全性]。
選取 [應用程式和瀏覽器控制] 磚 (或左側功能表列上的應用程式圖示),然後選取 [惡意探索保護]。
請移至 [程式設定],然後選擇您想要套用保護的應用程式:
如果您想要設定的應用程式已列出,請選取它,然後選取 [ 編輯]。
如果應用程式未列在清單頂端,請選取 [ 新增程式以自定義]。 然後選擇您要如何新增應用程式。
- 使用 [依程式名稱新增],以將緩和措施套用至任何具有該名稱的執行中程式。 指定具副檔名的檔案。 您可以輸入完整路徑,限制只有該位置中具有該名稱的應用程式才套用緩和措施。
- 使用 [選擇確切的檔案路徑] 以使用標準的 Windows 檔案總管檔案選擇器視窗來尋找並選取您想要的檔案。
選取應用程式之後,您就會看到可套用的所有緩和措施清單。 選擇 [稽核 ] 只會在測試模式中套用風險降低。 如果您需要重新啟動進程、應用程式或 Windows,系統會通知您。
針對您想要設定的所有應用程式和緩和措施,重複此程序。 當您設定完成時,選取 [套用]。
PowerShell
若要將應用程式層級風險降低設定為測試模式,請搭配稽核模式 Cmdlet 使用 Set-ProcessMitigation
。
以下列格式設定每個緩和措施:
Set-ProcessMitigation -<scope> <app executable> -<action> <mitigation or options>,<mitigation or options>,<mitigation or options>
其中:
-
<範圍>:
-
-Name
表示應將緩和措施套用至特定應用程式。 在此旗標之後指定應用程式的可執行檔。
-
-
<動作>:
-
-Enable
以啟用緩和措施-
-Disable
以停用緩和措施
-
-
-
<風險降低>:
- 下表定義緩和措施 Cmdlet。 每個緩和措施會以逗號分隔。
緩和措施 | 測試模式 Cmdlet |
---|---|
任意程式碼防護 (ACG) | AuditDynamicCode |
封鎖低完整性映像 | AuditImageLoad |
封鎖不信任的字型 |
AuditFont , FontAuditOnly |
程式碼完整性防護 |
AuditMicrosoftSigned , AuditStoreSigned |
停用 Win32k 系統呼叫 | AuditSystemCall |
不允許子處理序 | AuditChildProcess |
例如,若要針對名為testing.exe的應用程式,在測試模式中啟用任意程式代碼防護 (ACG ) ,請執行下列命令:
Set-ProcessMitigation -Name c:\apps\lob\tests\testing.exe -Enable AuditDynamicCode
您可以將 -Enable
取代為 -Disable
來停用稽核模式。
檢閱惡意探索保護稽核事件
若要檢閱哪些應用程式會遭到封鎖,請在 Security-Mitigations 記錄檔中開啟 事件檢視器 並篩選下列事件。
功能 | 提供者/來源 | 事件識別碼 | 描述 |
---|---|---|---|
入侵防護 | Security-Mitigations (核心模式/使用者模式) | 1 | ACG 稽核 |
入侵防護 | Security-Mitigations (核心模式/使用者模式) | 3 | 不允許子處理序稽核 |
入侵防護 | Security-Mitigations (核心模式/使用者模式) | 5 | 封鎖低完整性映像稽核 |
入侵防護 | Security-Mitigations (核心模式/使用者模式) | 7 | 封鎖遠端映像稽核 |
入侵防護 | Security-Mitigations (核心模式/使用者模式) | 9 | 停用 win32k 系統呼叫稽核 |
入侵防護 | Security-Mitigations (核心模式/使用者模式) | 11 | 程式碼完整性防護稽核 |
另請參閱
提示
想要深入了解? Engage 技術社群中的Microsoft安全性社群:適用於端點的 Microsoft Defender 技術社群。