允许在适用于企业的应用控件策略中注册 COM 对象
注意
适用于企业的 App Control 的某些功能仅适用于特定 Windows 版本。 详细了解 应用控制功能可用性。
MICROSOFT组件对象模型 (COM) 是一个独立于平台的分布式面向对象的系统,用于创建可交互的二进制软件组件。 COM 指定对象模型和编程要求,使 COM 对象能够与其他对象交互。
应用控制策略中的 COM 对象可配置性
适用于企业的 App Control 强制实施 COM 对象注册的内置允许列表。 虽然此列表适用于最常见的应用程序使用方案,但你可能需要允许更多 COM 对象来支持组织中使用的应用。 可以通过应用控制策略中的 GUID 指定允许的 COM 对象,如本文所述。
注意
若要将此功能添加到其他版本的 Windows 10,可以安装以下或更高版本的更新。
- Windows 10,1809 年 6 月 18 日 2019-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”
一个属性:
值:对于 allow,需要为“true”,对于拒绝,则为“false”
注意
拒绝仅适用于基本策略,不适用于补充策略
设置需要按 ASCII 值的顺序放置, (首先按提供程序、Key、ValueName)
多个策略注意事项
与可执行文件类似,COM 对象必须传递系统上的所有强制应用控制策略才能运行。 例如,如果评估中的 COM 对象通过大多数(但不是全部)应用控制策略,则 COM 对象将被阻止。 如果组合使用基本策略和补充策略,则 COM 对象只需在基本策略或补充策略之一中加入允许列表。
示例
示例 1:允许在任何提供程序中注册所有 COM 对象 GUID
<Setting Provider="AllHostIds" Key="AllKeys" ValueName="EnterpriseDefinedClsId">
<Value>
<Boolean>true</Boolean>
</Value>
</Setting>
示例 2:阻止特定 COM 对象通过 Internet Explorer (IE)
<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
事件 ID: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 运行它。 将策略名称视为
AppControl_policy.xml
。PS C:\WINDOWS\system32> Set-CIPolicySetting -FilePath <path to policy xml>\AppControl_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 对象允许列表
下表描述了在适用于企业的 App Control 中固有信任的 COM 对象列表。 此列表中的对象不需要在应用控制策略中加入允许列表。 可以通过在应用控制策略中创建显式拒绝规则来拒绝这些规则。
文件名 | 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 |