Windows 10 Technical Preview添加了阻止不受信任的字体的功能

本文介绍阻止不受信任的字体Windows 10 Technical Preview的新功能。 使用该功能之前,可以查看 功能简介功能中的潜在减少 部分。 然后 ,按照步骤配置该功能

适用于:Windows 10 - 所有版本
原始 KB 数: 3053676

阻止不受信任的字体功能

由于字体使用复杂的数据结构,并且可以嵌入到网页和文档中,因此它们容易受到特权提升 (EOP) 攻击。 EOP 攻击意味着恶意黑客可以在用户共享文件或浏览 Web 时远程访问用户的计算机。 为了增强针对这些攻击的安全性,我们创建了一项功能来阻止不受信任的字体。 使用此功能,可以启用全局设置,阻止用户加载由图形设备接口 (GDI) 处理的不受信任的字体。 不受信任的字体是在目录外部 %windir%/Fonts 安装的任何字体。 阻止不受信任的字体功能有助于阻止远程 (基于 Web 或基于电子邮件的) ,以及字体文件分析过程中可能发生的本地 EOP 攻击。

此功能的工作原理

可通过三种方式使用此功能:

  • 打开。 帮助停止加载使用 GDI 处理且安装在目录外部 %windir/Fonts% 的任何字体。 它还会打开事件日志记录。

  • 审计。 打开事件日志记录,但不会阻止字体加载,而不考虑位置。 使用不受信任字体的应用程序的名称将显示在事件日志中。

    注意

    如果尚未准备好在组织中部署此功能,可以在审核模式下运行此功能,以查看不加载不受信任的字体是否会导致任何可用性或兼容性问题。

  • 排除应用以加载不受信任的字体。 可以排除特定应用程序。 它允许他们加载不受信任的字体,即使该功能已打开。

功能的潜在减少

启用此功能后,用户在以下情况下可能会体验到功能降低:

  • 将打印作业发送到使用此功能且未排除后台处理程序进程的共享打印机服务器。 在这种情况下,将不会使用服务器 %windir%/Fonts 文件夹中尚不可用的任何字体。

  • 使用文件夹外的已安装打印机图形 .dll 文件提供的字体进行 %windir%/Fonts 打印。 有关详细信息,请参阅 打印机图形 DLL 简介

  • 使用使用基于内存的字体的第一方或第三方应用。

  • 使用 Internet Explorer 查看使用嵌入字体的网站。 在这种情况下,该功能会阻止嵌入的字体,导致网站使用默认字体。 但是,并非所有字体都具有所有字符,因此网站可能会以不同的方式呈现。

  • 使用桌面 Office 查看具有嵌入字体的文档。 在这种情况下,使用 Office 选取的默认字体显示内容。

如何打开和使用该功能

若要打开、关闭此功能或使用审核模式,请使用以下方法之一。

使用组策略

  1. 打开“本地组策略 编辑器”。
  2. 在“本地计算机策略”下,依次展开“计算机配置”、“管理模板”、“系统”,然后单击“缓解选项”。
  3. “不受信任的字体阻止” 设置中,可以看到以下选项:
    • 阻止不受信任的字体和日志事件
    • 不要阻止不受信任的字体
    • 在不阻止不受信任的字体的情况下记录事件

使用注册表编辑器

  1. 打开注册表编辑器 (regedit.exe) 并转到以下注册表子项:

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Kernel\

  2. 如果没有 MitigationOptions 键,请右键单击并添加新 的 QWORD (64 位) 值,将其命名为 MitigationOptions

  3. 更新 MitigationOptions的值数据,并确保保留现有值,如以下重要说明所示:

    • 若要启用此功能,请键入 1000000000000。
    • 若要关闭此功能,请键入 2000000000000。
    • 若要使用此功能进行审核,请键入 3000000000000。

    重要

    更新期间应保存现有的 MitigationOptions 值。 例如,如果当前值为 1000,则更新的值应1000000001000。

  4. Restart your computer.

查看事件日志

启用此功能或开始使用审核模式后,可以检查事件日志以获取详细信息。

检查事件日志

  1. 打开事件查看器 (eventvwr.exe) 并转到以下路径:

    应用程序和服务日志/Microsoft/Windows/Win32k/Operational

  2. 向下滚动到 EventID:260 并查看相关事件。

    • 事件示例 1 - Microsoft Word

      注意

      由于 FontType 为 Memory,因此没有关联的 FontPath。

    • 事件示例 2 - Winlogon

      注意

      由于 FontType 为 File,因此还有一个关联的 FontPath。

    • 事件示例 3 - 在审核模式下运行的 Internet Explorer

      注意

      在审核模式下,会记录问题,但字体不会被阻止。

修复因字体受阻而出现问题的应用

用户可能仍需要因字体受阻而出现问题的应用,因此我们建议先在审核模式下运行此功能,以确定哪些字体导致了问题。 找出有问题的字体后,可以尝试通过以下两种方式之一修复应用:直接将字体安装到 %windir%/Fonts 目录中,或者通过排除基础进程并加载字体。 作为默认解决方案,强烈建议你安装有问题的字体。 安装字体比排除应用更安全,因为排除的应用可以加载任何受信任或不受信任的字体。

在安装了应用的每台计算机上,右键单击字体名称,然后单击“ 安装”。

字体应会自动安装到目录中 %windir%/Fonts 。 如果没有,则必须手动将字体文件复制到 Fonts 目录中,并从该目录中运行安装。

通过排除进程修复应用

  1. 在安装了应用的每台计算机上,打开“注册表编辑器并转到以下注册表子项:

    HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\<Process_Image_Name>

    例如,如果要排除 Microsoft Word进程,可以使用 HKEY_LOCAL_MACHINE\ Software\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\Winword.exe

  2. 如果没有 MitigationOptions 键,请右键单击并添加新 的 QWORD (64 位) 值,将其命名为 MitigationOptions

  3. 为该过程所需的设置添加值:

    • 若要启用此功能,请键入 1000000000000。
    • 若要关闭此功能,请键入 2000000000000。
    • 若要使用此功能进行审核,请键入 3000000000000。

    重要

    更新期间应保存现有的 MitigationOptions 值。 例如,如果当前值为 1000,则更新的值应1000000001000。

  4. 添加需要排除的任何其他进程,然后使用“ 通过排除进程修复应用 ”部分中提供的步骤启用字体阻止。