允許在 Windows Defender 應用程控原則中註冊 COM 物件
注意
Windows Defender 應用程式控制的某些功能僅在特定 Windows 版本上可用。 深入了解 應用程控功能可用性。
Microsoft 元件物件模型 (COM) 是平臺獨立、分散式、面向對象的系統,可用來建立可互動的二進位軟體元件。 COM 會指定可讓 COM 物件與其他物件互動的物件模型和程序設計需求。
WDAC 原則中的 COM 物件可設定性
Windows Defender 應用程控 (WDAC) 會強制執行 COM 物件註冊的內建允許清單。 雖然此列表適用於最常見的應用程式使用案例,但您可能需要允許更多 COM 物件來支援組織中使用的應用程式。 您可以在 WDAC 原則中透過其 GUID 指定允許的 COM 物件,如本文所述。
注意
若要將這項功能新增至其他版本的 Windows 10,您可以安裝下列或更新版本的更新。
- Windows 10,1809 年 2019 年 6 月 18 日-KB4501371 (OS 組建 17763.592)
- Windows 10,1607 2019 年 6 月 18 日-KB4503294 (OS 組建 14393.3053)
取得 COM 物件 GUID
您可以從位於應用程式和服務記錄 >> Microsoft Windows > AppLocker > MSI 和腳本 事件檢視器 中的 8036 COM 物件區塊事件取得 COM 應用程式 GUID,並從事件數據中擷取 GUID。
撰寫原則設定以允許或拒絕 COM 物件 GUID
三個元素:
- 提供者:執行程式代碼 (值的平臺為 PowerShell、WSH、IE、VBA、MSI 或通配符 「AllHostIds」)
- 機碼:您想要執行之程式的 GUID,格式為 Key=“{33333333-4444-4444-1616-161616161616}”
- ValueName:必須設定為 “EnterpriseDefinedClsId”
屬性:
值:允許時必須是 “true”,拒絕則必須是 “false”
注意
拒絕只適用於基底原則,不適用於補充原則
此設定必須依 ASCII 值的順序放置,先依提供者 (,然後依次按 [索引鍵]、[ValueName])
多個原則考慮
與可執行檔類似,COM 對象必須傳遞系統上所有強制執行的WDAC原則才能執行。 例如,如果評估中的 COM 物件通過大部分但並非所有 WDAC 原則,則會封鎖 COM 物件。 如果您使用基底和補充原則的組合,則 COM 物件只需要在基底原則或其中一個補充原則中列入允許清單即可。
範例
範例 1:允許註冊任何提供者中的所有 COM 物件 GUID
<Setting Provider="AllHostIds" Key="AllKeys" ValueName="EnterpriseDefinedClsId">
<Value>
<Boolean>true</Boolean>
</Value>
</Setting>
範例 2:封鎖透過 Internet Explorer (IE) 註冊特定 COM 物件
<Setting Provider="IE" Key="{00000000-4444-4444-1616-161616161616}" ValueName="EnterpriseDefinedClsId">
<Value>
<Boolean>false</Boolean>
</Value>
</Setting>
範例 3:允許特定 COM 物件在 PowerShell 中註冊
<Setting Provider="PowerShell" Key="{33333333-4444-4444-1616-161616161616}" ValueName="EnterpriseDefinedClsId">
<Value>
<Boolean>true</Boolean>
</Value>
</Setting>
如何設定 CLSID 的設定
以下是在應用程式和服務記錄 >> Microsoft Windows > AppLocker > MSI 和腳本中找到的 事件檢視器 錯誤範例:
記錄檔名稱:Microsoft-Windows-AppLocker/MSI 和腳本
來源:Microsoft-Windows-AppLocker
日期:2020 年 11 月 11 日下午 1:18:11
事件標識碼:8036
工作類別:無
層級:錯誤
關鍵字:
使用者:S-1-5-21-3340858017-3068726007-3466559902-3647
計算機:contoso.com
描述:{f8d253d9-89a4-4daa-87b6-1168369f0b21} 因設定 CI 原則而無法執行。
事件 XML:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
<System>
<Provider Name="Microsoft-Windows-AppLocker" Guid="{cbda4dbf-8d5d-4f69-9578-be14aa540d22}" />
<EventID>8036</EventID>
<Version>0</Version>
<Level>2</Level>
<Task>0</Task>
<Opcode>0</Opcode>
<Keywords>0x4000000000000000</Keywords>
<TimeCreated SystemTime="2020-11-11T13:18:11.4029179Z" />
<EventRecordID>819347</EventRecordID>
<Correlation ActivityID="{61e3e871-adb0-0047-c9cc-e761b0add601}" />
<Execution ProcessID="21060" ThreadID="23324" />
<Channel>Microsoft-Windows-AppLocker/MSI and Script</Channel>
<Computer>contoso.com</Computer>
<Security UserID="S-1-5-21-3340858017-3068726007-3466559902-3647" />
</System>
<EventData>
<Data Name="IsApproved">false</Data>
<Data Name="CLSID">{f8d253d9-89a4-4daa-87b6-1168369f0b21}</Data>
</EventData>
</Event>
若要將此 CLSID 新增至現有原則,請遵循下列步驟:
以系統管理許可權開啟 PowerShell ISE。
複製並編輯此命令,然後從系統管理員 PowerShell ISE 執行。 請將原則名稱視為
WDAC_policy.xml
。PS C:\WINDOWS\system32> Set-CIPolicySetting -FilePath <path to policy xml>\WDAC_policy.xml -Key "{f8d253d9-89a4-4daa-87b6-1168369f0b21}" -Provider WSH -Value true -ValueName EnterpriseDefinedClsId -ValueType Boolean
執行命令之後,尋找新增至原則 XML 的下列區段。
<Settings> <Setting Provider="WSH" Key="{f8d253d9-89a4-4daa-87b6-1168369f0b21}" ValueName="EnterpriseDefinedClsId"> <Value> <Boolean>true</Boolean> </Value> </Setting>
預設 COM 物件允許清單
下表描述 Windows Defender 應用程控中原本受信任的 COM 物件清單。 此清單中的物件不需要在 WDAC 原則中列入允許清單。 您可以在 WDAC 原則中建立明確的拒絕規則來拒絕它們。
檔名 | Clsid |
---|---|
scrrun.dll | EE09B103-97E0-11CF-978F-00A02463E06F |
scrrun.dll | 0D43FE01-F093-11CF-8940-00A0C9054228 |
vbscript.dll | 3F4DACA4-160D-11D2-A8E9-00104B365C9F |
WEX。Logger.Log | 70B46225-C474-4852-BB81-48E0D36F9A5A |
TE。Common.TestData | 1d68f3c0-b5f8-4abd-806a-7bc57cdce35a |
TE。Common.RuntimeParameters | 9f3d4048-6028-4c5b-a92d-01bc977af600 |
TE。Common.Verify | e72cbabf-8e48-4d27-b14e-1f347f6ec71a |
TE。Common.Interruption | 5850ba6f-ce72-46d4-a29b-0d3d9f08cc0b |
msxml6.dll | 2933BF90-7B36-11d2-B20E-00C04F983E60 |
msxml6.dll | ED8C108E-4349-11D2-91A4-00C04F7969E8 |
mmcndmgr.dll | ADE6444B-C91F-4E37-92A4-5BB430A33340 |
puiobj.dll | B021FF57-A928-459C-9D6C-14DED0C9BED2 |
wdtf.dll | 041E868E-0C7D-48C6-965F-5FD576530E5B |
wdtfedtaction.dll | 0438C02B-EB9C-4E42-81AD-407F6CD6CDE1 |
wdtfioattackaction.dll | 078B1F7D-C34C-4B13-A7C3-9663901650F1 |
wdtfmutt2tcdsimpleioaction.dll | 0ABB2961-2CC1-4F1D-BE8E-9D330D06B77D |
wdtfdriverpackageaction.dll | 0D7237E6-930F-4682-AD0A-52EBFFD3AEE3 |
wdtf.dll | 0D972387-817B-46E7-913F-E9993FF401EB |
wdtf.dll | 0E770B12-7221-4A5D-86EE-77310A5506BB |
wdtfdriversetupdeviceaction.dll | 0FA57208-5100-4CD6-955C-FE69F8898973 |
wdtf.dll | 1080A020-2B47-4DA9-8095-DBC9CEFFFC04 |
wdtfnetworksimpleioaction.dll | 10CF2E12-1681-4C53-ADC0-932C84832CD8 |
wdtf.dll | 140F2286-3B39-4DE1-AF94-E083DEEA6BB9 |
wdtfinterfaces.dll | 1A7D6D61-4FE5-42E2-8F23-4FC1731C474F |
wdtfaudiosimpleioaction.dll | 1C658D42-4256-4743-A4C5-90BF3A3A186A |
wdtf.dll | 2236B1F3-4A33-48C2-B22C-A1F93A626F05 |
wdtfsystemaction.dll | 23440924-1AB0-41F2-A732-B75069E5C823 |
wdtfdriversetupsystemaction.dll | 238C0AEB-1DFC-4575-AAF3-C67FE15C1819 |
wdtffuzztestaction.dll | 23D0E542-0390-4873-9AC7-EF86E95E5215 |
wdtf.dll | 240FA08C-1D70-40CB-BDB3-2CC41A45496B |
wdtf.dll | 26CC4211-A9A6-4E5C-A30D-3C659BB4CDC9 |
wdtf.dll | 28EE5F0B-97D8-4A59-BAC8-A8A80E11F56B |
wdtf.dll | 2C9AF7D6-2589-4413-A2BA-9926EBCFD67C |
wdtf.dll | 32A9798D-987F-489E-8DB6-2EFB240248BD |
wdtfinterfaces.dll | 3C0B0D50-611A-4368-AC87-4488D6E0C4A7 |
wdtfcdromsimpleioaction.dll | 3F2C07F3-199B-4165-A948-B8B59A97FCC5 |
wdtf.dll | 485785D3-8820-4C3D-A532-4C0F66392A30 |
wdtfinterfaces.dll | 5EAE59BE-6946-44B7-A7B3-1D59811B246A |
wdtfiospyaction.dll | 698F6A82-7833-4499-8BA5-2145D604ABD4 |
wdtfdevicesupportaction.dll | 69D94D1B-0833-40D4-9AE7-7FC6F64F2624 |
wdtf.dll | 6EE5B280-3B0F-4358-9E20-99F169FAA700 |
wdtfmuttsimpleioaction.dll | 7776915A-0370-49A7-90B7-20EB36E80B6D |
wdtfcpuutilizationsystemaction.dll | 7926C7DE-299C-4B09-BB1B-649A4B917ED0 |
wdtfwirelesssimpleioaction.dll | 7A686BCD-9203-435C-8B06-9D7E7A518F98 |
wdtfbluetoothsimpleioaction.dll | 7E6C4615-6184-4077-A150-5D30F29993A4 |
wdtf.dll | 9663A00A-5B72-4810-9014-C77108062949 |
wdtfinterfaces.dll | 9C261B2B-DBD6-4087-B636-ABE1607989E8 |
wdtfwebcamsimpleioaction.dll | A1B74619-F02D-4574-8091-2AADD46A5B2B |
wdtf.dll | A2FD15D7-64F0-4080-AABD-884380202022 |
wdtfvolumesimpleioaction.dll | AC91E813-B116-4676-AE33-2988B590F3C7 |
wdtfconcurrentioaction.dll | AE278430-ABC2-49D1-AF30-910B9A88CB1E |
wdtf.dll | B43FF7F1-629C-4DE5-9559-1D09E0A07037 |
wdtfdriververifiersystemaction.dll | B7770265-B643-4600-A60B-93F9BA9F4B24 |
wdtfpnpaction.dll | B8D74985-4EB9-46AA-B2ED-DD2D918849DF |
wdtfmobilebroadbandsimpleioaction.dll | BCFBBB02-4DA5-466C-9DA7-DC672877B075 |
wdtf.dll | BE56FAD1-A489-4508-ABB7-3348E1C2C885 |
wdtfpnpaction.dll | C0B6C572-D37D-47CC-A89D-E6B9E0852764 |
wdtfioattackaction.dll | C88B324E-6B26-49BC-9D05-A221F15D7E13 |
wdtfsensorsiosimpleioaction.dll | C8BF7EC0-C746-4DE8-BA46-34528C6329FB |
wdtfanysimpleioaction.dll | C8C574DA-367B-4130-AED6-1EA61A5C6A4B |
simpleio_d3dtest.dll | CBC36BDB-A6BC-4383-8194-659470553488 |
wdtfsystemaction.dll | D30E1E07-AA39-4086-A7E6-9245FBD0A730 |
wdtf.dll | DD34E741-139D-4F4C-A1E2-D4184FCDD4F9 |
wdtfsupaction.dll | EA48171B-4265-48C3-B56B-70B175A7FDFA |
wdtfinterfaces.dll | EB9DB874-D23D-44D5-A988-85E966322843 |
wdtfinterfaces.dll | ED05EF76-09A9-4409-90CA-C5D0711CA057 |
wdtfwpdsimpleioaction.dll | EEA17F2B-8E8E-41A3-9776-A87FACD625D0 |
wdtfinterfaces.dll | F30FC2BB-F424-4A1F-8F95-68CFEE935E92 |
wdtfedtaction.dll | F6694E02-5AD0-476D-BD2D-43F7E5D10AF6 |
wdtfsmartcardreadersimpleioaction.dll | FA6F7E49-76C6-490C-B50E-8B1E8E0EEE2A |
wdtfiospyaction.dll | FE36026D-CDA8-4514-B3D9-57BDA3870D0C |
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應