Windows字体解析远程代码执行漏洞
编辑:深度系统|深度-值得深入
2020-03-25
来源于:网络
Microsoft已经意识到可以利用Adobe Type Manager库中未修补的漏洞的基于Windows 7的有针对性的有限攻击,并提供了以下指南来帮助降低客户风险,直到发布安全更新为止。我们感谢业界合作伙伴的努力,并遵守7天的时间表来披露有关这些有限攻击的信息。当Windows Adobe类型管理器库不适当地处理特制的多主字体-Adobe Type 1 PostScript格式时,Microsoft Windows中存在两个远程执行代码漏洞。攻击者可以通过多种方式利用此漏洞,例如说服用户打开特制文档或在Windows预览窗格中查看它。Microsoft已意识到此漏洞,并正在进行修复。解决Microsoft软件中安全漏洞的更新通常在每月的第二个星期二的更新星期二发布。这一可预测的时间表可用于合作伙伴质量保证和IT计划,从而有助于将Windows生态系统维护为客户的可靠,安全的选择。下面列出了受此漏洞影响的操作系统版本。请参阅缓解措施和变通办法,以获取有关如何降低风险的指导。请注意:对于那些运行Windows 10的系统来说,由于在2015年发布的第一个版本已实施了缓解措施,因此威胁很小。请参阅缓解措施部分以了解详细信息。Microsoft不了解对Windows 10平台的任何攻击。远程执行代码的可能性可以忽略不计,特权提升是不可能的。我们不建议运行Windows 10的IT管理员实施以下解决方法。Microsoft建议升级到Windows 10客户端和服务器系列。安全更新要确定您的软件版本的支持生命周期,请参阅Microsoft支持生命周期。
产品 |
平台 |
文章 |
下载 |
影响力 |
严重程度 |
取代 |
Windows 10(用于32位系统) |
|
|
|
远程执行代码 |
重要 |
|
Windows 10(用于基于x64的系统) |
|
|
|
远程执行代码 |
重要 |
|
适用于32位系统的Windows 10版本1607 |
|
|
|
远程执行代码 |
重要 |
|
Windows 10 1607版(用于基于x64的系统) |
|
|
|
远程执行代码 |
重要 |
|
适用于32位系统的Windows 10版本1709 |
|
|
|
远程执行代码 |
重要 |
|
Windows 10版本1709(用于基于ARM64的系统) |
|
|
|
远程执行代码 |
重要 |
|
Windows 10版本1709(用于基于x64的系统) |
|
|
|
远程执行代码 |
重要 |
|
适用于32位系统的Windows 10版本1803 |
|
|
|
远程执行代码 |
重要 |
|
Windows 10版本1803(用于基于ARM64的系统) |
|
|
|
远程执行代码 |
重要 |
|
Windows 10版本1803(用于基于x64的系统) |
|
|
|
远程执行代码 |
重要 |
|
适用于32位系统的Windows 10版本1809 |
|
|
|
远程执行代码 |
重要 |
|
Windows 10版本1809(用于基于ARM64的系统) |
|
|
|
远程执行代码 |
重要 |
|
Windows 10版本1809(用于基于x64的系统) |
|
|
|
远程执行代码 |
重要 |
|
适用于32位系统的Windows 10版本1903 |
|
|
|
远程执行代码 |
重要 |
|
Windows 10 1903版(用于基于ARM64的系统) |
|
|
|
远程执行代码 |
重要 |
|
Windows 10 1903版(用于基于x64的系统) |
|
|
|
远程执行代码 |
重要 |
|
适用于32位系统的Windows 10版本1909 |
|
|
|
远程执行代码 |
重要 |
|
Windows 10 1909版(用于基于ARM64的系统) |
|
|
|
远程执行代码 |
重要 |
|
Windows 10版本1909(用于基于x64的系统) |
|
|
|
远程执行代码 |
危急 |
|
Windows 7(用于32位系统)Service Pack 1 |
|
|
|
远程执行代码 |
危急 |
|
Windows 7(用于基于x64的系统)Service Pack 1 |
|
|
|
远程执行代码 |
危急 |
|
Windows 8.1(用于32位系统) |
|
|
|
远程执行代码 |
危急 |
|
Windows 8.1(用于基于x64的系统) |
|
|
|
远程执行代码 |
危急 |
|
Windows RT 8.1 |
|
|
|
远程执行代码 |
危急 |
|
Windows Server 2008(用于32位系统)Service Pack 2 |
|
|
|
远程执行代码 |
危急 |
|
Windows Server 2008(用于32位系统)Service Pack 2(服务器核心安装) |
|
|
|
远程执行代码 |
危急 |
|
Windows Server 2008(用于基于Itanium的系统)Service Pack 2 |
|
|
|
远程执行代码 |
危急 |
|
Windows Server 2008(用于基于x64的系统)Service Pack 2 |
|
|
|
远程执行代码 |
危急 |
|
Windows Server 2008(用于基于x64的系统)Service Pack 2(服务器核心安装) |
|
|
|
远程执行代码 |
危急 |
|
Windows Server 2008 R2(用于基于Itanium的系统)Service Pack 1 |
|
|
|
远程执行代码 |
危急 |
|
Windows Server 2008 R2(用于基于x64的系统)Service Pack 1 |
|
|
|
远程执行代码 |
危急 |
|
Windows Server 2008 R2(用于基于x64的系统)Service Pack 1(服务器核心安装) |
|
|
|
远程执行代码 |
危急 |
|
Windows Server 2012 |
|
|
|
远程执行代码 |
危急 |
|
Windows Server 2012(服务器核心安装) |
|
|
|
远程执行代码 |
危急 |
|
Windows Server 2012 R2 |
|
|
|
远程执行代码 |
危急 |
|
Windows Server 2012 R2(服务器核心安装) |
|
|
|
远程执行代码 |
危急 |
|
Windows Server 2016 |
|
|
|
远程执行代码 |
重要 |
|
Windows Server 2016(服务器核心安装) |
|
|
|
远程执行代码 |
重要 |
|
Windows Server 2019 |
|
|
|
远程执行代码 |
重要 |
|
Windows Server 2019(服务器核心安装) |
|
|
|
远程执行代码 |
重要 |
|
缓解措施对于运行Windows 10支持版本的系统,成功的攻击只能导致在权限有限和功能有限的AppContainer沙箱上下文中执行代码。
版 |
字体处理方式 |
ATMFD.DLL状态 |
Windows 10 |
用户模式appcontainer中的fontdrvhost.exe。安装的字体仍在内核模式下处理 |
当下 |
Windows 10版本1607 /服务器2016 |
用户模式appcontainer中的fontdrvhost.exe。安装的字体仍在内核模式下处理 |
当下 |
Windows 10 1703 |
所有字体均在用户模式appcontainer中的fontdrvhost.exe中处理。 |
存在但未使用 |
视窗10 1709 |
所有字体均在用户模式appcontainer中的fontdrvhost.exe中处理。 |
不存在 |
Windows 10 1803 / Windows Server版本1803 |
所有字体均在用户模式appcontainer中的fontdrvhost.exe中处理。 |
不存在 |
Windows 10 1809 /服务器2019 |
所有字体均在用户模式appcontainer中的fontdrvhost.exe中处理。 |
不存在 |
Windows 10 1903 / Windows Server版本1903 |
所有字体均在用户模式appcontainer中的fontdrvhost.exe中处理。 |
不存在 |
Windows 10 1909 / Windows Server版本1909 |
所有字体均在用户模式appcontainer中的fontdrvhost.exe中处理。 |
不存在 |
有关更多信息,请参见使用AppContainer减轻字体利用。解决方法
- 在Windows资源管理器中禁用预览窗格和详细信息窗格
在Windows资源管理器中禁用“预览”和“详细信息”窗格将阻止在Windows资源管理器中自动显示OTF字体。虽然这可以防止在Windows资源管理器中查看恶意文件,但并不能阻止经过身份验证的本地用户运行特制程序来利用此漏洞。要在Windows Server 2008,Windows 7,Windows Server 2008 R2,Windows Server 2012,Windows Server 2012 R2和Windows 8.1中禁用这些窗格,请执行以下步骤:
- 打开Windows资源管理器,单击“组织”,然后单击“布局”。
- 清除“详细信息”窗格和“预览”窗格的菜单选项。
- 单击组织,然后单击文件夹和搜索选项。
- 单击查看选项卡。
- 在“高级设置”下,选中“始终显示图标,从不显示缩略图”框。
- 关闭Windows资源管理器的所有打开的实例,以使更改生效。
对于Windows Server 2016,Windows 10和Windows Server 2019,请执行以下步骤:
- 打开Windows资源管理器,单击“查看”选项卡。
- 清除“详细信息”窗格和“预览”窗格的菜单选项。
- 单击选项,然后单击更改文件夹和搜索选项。
- 单击查看选项卡。
- 在“高级设置”下,选中“始终显示图标,从不显示缩略图”框。
- 关闭Windows资源管理器的所有打开的实例,以使更改生效。
解决方法的影响。Windows资源管理器不会自动显示OTF字体。如何撤消变通办法。要在Windows资源管理器中为Windows Server 2008,Windows 7,Windows Server 2008 R2,Windows Server 2012,Windows Server 2012 R2和Windows 8.1重新启用预览和详细信息窗格,请执行以下操作:
- 打开Windows资源管理器,单击“组织”,然后单击“布局”。
- 选择详细信息窗格和预览窗格菜单选项。
- 单击组织,然后单击文件夹和搜索选项。
- 单击查看选项卡。
- 在“高级设置”下,清除“始终显示图标,从不显示缩略图”框。
- 关闭Windows资源管理器的所有打开的实例,以使更改生效。
对于Windows Server 2016,Windows 10和Windows Server 2019:
- 打开Windows资源管理器,单击“查看”选项卡。
- 选择详细信息窗格和预览窗格菜单选项。
- 单击选项,然后单击更改文件夹和搜索选项。
- 单击查看选项卡。
- 在“高级设置”下,清除“始终显示图标,从不显示缩略图”框。
- 关闭Windows资源管理器的所有打开的实例,以使更改生效。
禁用WebClient服务禁用WebClient服务通过通过Web分布式创作和版本控制(WebDAV)客户端服务阻止最可能的远程攻击媒介,从而帮助保护受影响的系统免遭利用此漏洞的尝试。应用此替代方法后,成功利用此漏洞的远程攻击者仍然有可能导致系统运行位于目标用户计算机或局域网(LAN)上的程序,但是在从Windows Server 2003中打开任意程序之前,系统将提示用户进行确认。互联网。要禁用WebClient服务,请执行以下步骤:
- 单击开始,单击运行(或按键盘上的Windows键和R),键入Services.msc,然后单击确定。
- 右键单击WebClient服务,然后选择“属性”。
- 将启动类型更改为禁用。如果服务正在运行,请单击“停止”。
- 单击确定,然后退出管理应用程序。
解决方法的影响。禁用WebClient服务时,将不发送Web分布式创作和版本控制(WebDAV)请求。此外,任何明确依赖于WebClient服务的服务都不会启动,并且错误消息将记录在系统日志中。例如,将无法从客户端计算机访问WebDAV共享。如何撤消变通办法。要重新启用WebClient服务,请执行以下步骤:
- 单击开始,单击运行(或按键盘上的Windows键和R),键入Services.msc,然后单击确定。
- 右键单击WebClient服务,然后选择“属性”。
- 将启动类型更改为自动。如果该服务未运行,请单击“启动”。
- 单击确定,然后退出管理应用程序。
重命名ATMFD.DLL对于32位系统:1.在管理命令提示符处输入以下命令: 32位_重命名_ATMFD.DLL.bat 下载码:
cd “%windir%\ system32”
takeown 。exe / f atmfd 。dll文件
icacls 。exe atmfd 。dll / 保存atmfd 。dll文件。ACL
icacls 。exe atmfd 。dll / grant 管理员:(F )
重命名atmfd 。dll x - atmfd 。dll文件
2.重新启动系统。对于64位系统:1.在管理命令提示符处输入以下命令: 64位_重命名_ATMFD.DLL.bat 下载码:
cd “%windir%\ system32”
takeown 。exe / f atmfd 。dll文件
icacls 。exe atmfd 。dll / 保存atmfd 。dll文件。ACL
icacls 。exe atmfd 。dll / grant 管理员:(F )
重命名atmfd 。dll x - atmfd 。dll文件
cd “%windir%\ syswow64”
takeown 。exe / f atmfd 。dll文件
icacls 。exe atmfd 。dll / 保存atmfd 。dll文件。ACL
icacls 。exe atmfd 。dll / grant 管理员:(F )
重命名atmfd 。dll x - atmfd 。dll文件
2.重新启动系统。Windows 8.1或更低版本操作系统的可选过程(禁用ATMFD):注意错误使用注册表编辑器会导致严重的问题,可能需要重新安装操作系统。Microsoft无法保证可以解决由于注册表编辑器使用不当而导致的问题。使用注册表编辑器需要您自担风险。有关如何编辑注册表的信息,请在注册表编辑器(Regedit.exe)中查看“更改键和值”帮助主题,或在Regedt32中查看“在注册表中添加和删除信息”和“编辑注册表数据”帮助主题。可执行程序。方法1(手动编辑系统注册表):
- 以管理员身份运行regedit.exe。
- 在注册表编辑器中,导航到以下子项(或创建它)并将其DWORD值设置为1:HKLM \ Software \ Microsoft \ Windows NT \ CurrentVersion \ Windows \ DisableATMFD,DWORD = 1
- 关闭注册表编辑器,然后重新启动系统。
方法2(使用托管部署脚本):
- 创建一个名为ATMFD-disable.reg的文本文件,其中包含以下文本:
ATMFD-disable.reg
下载
码:
Windows 注册表编辑器版本5.00 [ HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ Windows ] “ DisableATMFD” = dword :00000001
- 运行regedit.exe。
- 在注册表编辑器中,单击“文件”菜单,然后单击“导入”。
- 浏览并选择您在第一步中创建的ATMFD-disable.reg文件。(请注意,如果未在您期望的位置列出文件,请确保未自动为文件指定.txt文件扩展名,或将对话框的文件扩展名参数更改为“所有文件”)。
- 单击“打开”,然后单击“确定”关闭注册表编辑器。
解决方法的影响依赖于嵌入式字体技术的应用程序将无法正确显示。禁用ATMFD.DLL可能会导致某些应用程序使用OpenType字体而无法正常运行。Microsoft Windows不会本地发布任何OpenType字体。但是,第三方应用程序可以安装它们,并且它们可能会受到此更改的影响。如何撤消变通办法对于32位系统:1.在管理命令提示符处输入以下命令: 32位_Undo.bat 下载码:
cd “%windir%\ system32”
重命名x - atmfd 。dll atmfd 。dll文件
icacls 。exe atmfd 。dll / setowner “ NT SERVICE \ TrustedInstaller”
icacls 。exe文件。/ 恢复atmfd 。dll文件。ACL
2.重新启动系统。对于64位系统:1.在管理命令提示符处输入以下命令: 64位_Undo.bat 下载码:
cd “%windir%\ system32”
重命名x - atmfd 。dll atmfd 。dll文件
icacls 。exe atmfd 。dll / setowner “ NT SERVICE \ TrustedInstaller”
icacls 。exe文件。/ 恢复atmfd 。dll文件。ACL
cd “%windir%\ syswow64”
重命名x - atmfd 。dll atmfd 。dll文件
icacls 。exe atmfd 。dll / setowner “ NT SERVICE \ TrustedInstaller”
icacls 。exe文件。/ 恢复atmfd 。dll文件。ACL
2.重新启动系统。Windows 8.1或更低版本操作系统的可选过程(启用ATMFD):注意错误地使用注册表编辑器会导致严重的问题,可能需要重新安装操作系统。Microsoft无法保证可以解决由于注册表编辑器使用不当而导致的问题。使用注册表编辑器需要您自担风险。有关如何编辑注册表的信息,请在注册表编辑器(Regedit.exe)中查看“更改键和值”帮助主题,或在Regedt32中查看“在注册表中添加和删除信息”和“编辑注册表数据”帮助主题。可执行程序。方法1(手动编辑系统注册表):
- 以管理员身份运行regedit.exe。
- 在注册表编辑器中,导航到以下子项并将其DWORD值设置为0:HKLM \ Software \ Microsoft \ Windows NT \ CurrentVersion \ Windows \ DisableATMFD,DWORD = 0
- 关闭注册表编辑器,然后重新启动系统。
方法2(使用托管部署脚本):
- 创建一个名为ATMFD-enable.reg的文本文件,其中包含以下文本:
ATMFD-enable.reg
下载
码:
Windows 注册表编辑器版本5.00 [ HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ Windows ] “ DisableATMFD” = dword :00000000
- 运行regedit.exe。
- 在注册表编辑器中,单击“文件”菜单,然后单击“导入”。
- 导航到并选择您在第一步中创建的ATMFD-enable.reg文件。(请注意,如果未在您期望的位置列出文件,请确保未自动为文件指定.txt文件扩展名,或将对话框的文件扩展名参数更改为“所有文件”)。
- 单击“打开”,然后单击“确定”关闭注册表编辑器。
常见问题解答是否有解决此漏洞的更新?否,Microsoft知道此漏洞并正在修复。解决Microsoft软件中安全漏洞的更新通常在每月的第二个星期二的更新星期二发布。这一可预测的时间表可用于合作伙伴质量保证和IT计划,从而有助于将Windows生态系统维护为客户的可靠,安全的选择。Microsoft是否了解尝试利用此漏洞的攻击?是的,Microsoft知道尝试利用此漏洞的有限的针对性攻击。发布后,客户如何从Microsoft收到有关此问题的通知和更新的信息?订阅Microsoft技术安全通知的客户将在Microsoft的《安全更新指南》中发布新内容时收到通知。在此处找到有关这些通知的更多信息:技术安全通知。我是否需要ESU许可证才能接收此漏洞的Windows 7,Windows Server 2008和Windows Server 2008 R2更新?是的,要接收针对Windows 7,Windows Server 2008或Windows Server 2008 R2的此漏洞的安全更新,您必须具有ESU许可证。看到4522133 了解更多信息。为什么未为所有Windows 7客户发布此更新?Windows 7已于2020年1月14日终止支持。有关Microsoft生命周期策略的更多信息,请访问生命周期。Outlook预览窗格是否是此漏洞的攻击媒介?不,Outlook预览窗格不是此漏洞的攻击媒介Windows资源管理器预览窗格是否是此漏洞的攻击媒介?是的,Windows预览窗格是此漏洞的攻击媒介。Windows Servers上默认启用了“增强安全配置”吗?不,增强的安全配置不能缓解此漏洞。致谢Microsoft认识到安全社区中通过协调一致的漏洞披露帮助我们保护客户的人们所做的努力。有关更多信息,请参见确认。免责声明Microsoft知识库中提供的信息按“原样”提供,不提供任何形式的保证。Microsoft不承担任何明示或暗示的保证,包括适销性和针对特定目的的适用性的保证。即使已被告知Microsoft Corporation或其供应商有可能造成此类损害,Microsoft Corporation或其供应商也不对任何损害承担任何责任,包括直接,间接,偶然,因果,业务利润损失或特殊损害。一些州不允许排除或限制间接或偶然损失的责任,因此上述限制可能不适用。修订版
版 |
日期 |
描述 |
1.0 |
2020/03/23 |
信息发布。 |
1.1 |
2020/03/23 |
向缓解措施中添加了澄清信息。这仅是信息更改。 |
1.2 |
2020年3月24日 |
在执行摘要中添加了信息,以阐明攻击的目标。这仅是信息更改。 |
1.3 |
2020年3月24日 |
已将Windows 10客户端和服务器产品的严重性更新为“重要”。这仅是信息更改。 |
相关信息