注意
该安全更新于 2017 年 9 月 12 日重新发布,以解决 CVE-2016-3238 的 3170455 更新中的已知问题。 Microsoft 已经为当前支持的 Microsoft Windows 版本提供了以下更新。 有关更多信息,请转到以下 Microsoft 知识库中文章:
-
适用于 Windows Server 2008 的重新发布的更新 3170455
-
适用于 Windows 7 和 Windows Server 2008 R2 的每月汇总补丁 4038777 和安全更新 4038779
-
适用于 Windows 8.1 和 Windows Server 2012 R2 的每月汇总 4038792 和安全更新 4038793
-
适用于 Windows 10 的累积更新 4038781
-
适用于 Windows 10 版本 1511 的累积更新 4038781
-
适用于 Windows 10 版本 1607 和 Windows Server 2016 的累积更新 4038782
Microsoft 建议运行 Windows Server 2008 的客户重新安装更新 3170455。 Microsoft 建议运行其他受支持版本的 Windows 的客户安装相应的更新。 有关更多信息,请转到 Microsoft 知识库文章 3170455:
MS16-087 重新发布的版本中包含的其他更改
-
添加了事件日志,以帮助确定打印机驱动程序安装错误的原因
以前,客户了解驱动程序为什么执行新的限制检查(作为 MS16-087 的一部分执行)失败的唯一方法是,收集打印 etw 日志,然后发送给 Microsoft 进行分析。
我们添加了将失败原因记录到事件记录程序的功能,以便客户可以自己调查驱动程序失败的根本原因。
将记录的信息:
1. 如果驱动程序不能感知驱动程序或未正确签名,则会记录以下消息:
MSG_CSRSPL_UNTRUSTED_DRIVER: "The print spooler failed to download package for driver <driverName>. Error code= <errorCodeFromListBelow>. Blocking driver as there could be a possibility of potential tampering."
2. 如果驱动程序通过使用提供的目录无法验证签名,则会记录以下消息:
VALIDATEDRVINFO_FAILED:“在 VALIDATINGDRVINFO 中,添加打印机驱动程序 <driverName> 失败,错误代码 <errorCodeFromListBelow>。
Possible Error codes:
代码 |
含义 |
0x800F0243L |
Publisher 不可信 |
0x800F024BL |
哈希不在目录中 |
0x800F022FL |
OEM INF 没有目录 |
0x800F023FL |
无验证码目录 |
0x800F0240L |
不允许使用验证码 |
0x800F0249L |
通用“驱动程序安装被阻止” |
摘要
此安全更新修复了 Microsoft Windows 中的漏洞。 如果攻击者能够对工作站或打印服务器执行中间人 (MiTM) 攻击或在目标网络设立 rogue 打印服务器,更严重的漏洞可能允许远程代码执行。Microsoft 安全公告 MS16-087。
要了解此漏洞的更多信息,请参阅更多信息
重要提示
-
安装此安全更新程序后,为了将指向并打印驱动程序从打印服务器部署到客户端,必须应用以下 Windows 8.1 或 Windows Server 2012 R2 打印机服务器上的 Windows 更新汇总:
3000850 Windows RT 8.1、Windows 8.1 和 Windows Server 2012 R2 更新汇总(2014 年 11 月)
-
今后所有适用于 Windows RT 8.1、Windows 8.1 和 Windows Server 2012 R2 的安全更新和非安全更新均要求安装更新 2919355。 我们建议在基于 Windows RT 8.1、Windows 8.1 或 Windows Server 2012 R2 的计算机上安装更新 2919355,以便今后持续接收更新。
-
如果在安装此更新程序后安装语言包,则必须重新安装此更新程序。 因此,我们建议先安装所需的全部语言包,然后再安装此更新。 有关更多信息,请参阅添加语言包至 Windows。
有关此安全更新的其他信息
下列文章包含此安全更新针对具体产品版本的其他信息。 文章可能包含已知问题信息。
-
3170455 MS16-087: Windows 打印后台处理程序组件安全更新说明: 2016 年 7 月 12 日
-
3163912 Windows 10 累积更新: 2016 年 7 月 12 日
-
3172985 Windows 10 版本 1511 和 Windows Server 2016 Technical Preview 4 累积更新: 2016 年 7 月 12 日
已知问题
如果在你的系统环境中使用网络打印,则可能会遇到下面其中的一个问题:
-
你可能会收到一条警告,提示你安装一个打印机驱动,否则在应用 MS16-087 后,驱动可能无法安装,并且不通知。 此现象取决于具体情形。
情形 1 对于无可识别程序包的 v3 打印机驱动程序,在用户尝试连接指向并打印打印机时,可能显示以下警告消息:
情形 2 有可识别程序包驱动程序必须使用信任证书进行签名。 验证过程将检查驱动内包括的所有文件是否散列于目录中。 如果验证失败,此驱动会被认为不可信任。 在此情况下,驱动程序安装会被阻止,并显示以下警告消息:
情形 3 对于非交互情形(例如,打印机已通过自动脚本安装),如果打印机驱动程序符合情形 1 或情形 2 描述的条件,打印机安装失败且不显示警告消息。
在此情况下,请联系网络管理员,以从打印机制造商处获取更新的驱动程序。 网络管理员指南:-
更新受影响的打印机驱动。 有可识别程序包的 V3 打印机驱动已引入 Windows Vista 中。 安装一个有可识别程序包的打印机驱动来解决此问题。
-
如果特定旧的打印机没有适合的可用打印机驱动,可在客户端系统上预装产生问题的打印机驱动来解决此问题。
有关这些情形的详细信息,请参阅下列 Microsoft 资源:
-
-
应用安全更新程序 MS16-087 (KB 3170455) 并尝试连接到在运行 Windows 8.1 或 Windows Server 2012 R2 的系统上安装的受信任程序包可感知打印机之后,无法连接到打印机。 要解决此问题,请应用以下有关 Windows 8.1 或 Windows Server 2012 R2 打印机服务器的 Windows 更新汇总:
3000850 Windows RT 8.1、Windows 8.1 和 Windows Server 2012 R2 的更新汇总(2014 年 11 月)
2016 年 10 月更新: 已知问题缓解措施
Microsoft 已发布 2016 年 10 月更新,此更新可允许网络管理员配置允许安装他们认为安全的打印驱动程序的策略。 此更新还允许网络管理员部署他们认为安全的打印机连接。
这些更新包含在以下汇总程序包中。
Windows 10 RTM |
|
Windows 10 1511 |
|
Windows 10 1607 |
|
Windows 7 和 Windows Server 2008 R2 |
|
Windows Server 2012 |
|
Windows 8.1 和 Windows Server 2012 R2 |
配置组策略以将打印服务器添加到允许的列表
-
单击“开始”,然后单击“运行”。
-
键入 gpedit.msc,然后单击“确定”。
-
展开“计算机配置”,然后展开“管理模板”。
-
单击“打印机”。
-
双击“指向并打印限制”,然后选择“已启用”选项。
-
在“选项”下,选中“用户只能指向并打印到这些服务器”复选框,然后在文本框中键入以分号分隔的完全限定服务器名称。
-
在“安全提示”下,按如下所示设置它们:
-
“为新连接安装驱动程序时”:“显示警告和提升提示”。
-
“更新现有连接的驱动程序时”:“显示警告和提升提示”。
-
-
单击“应用”,然后单击“确定”。
-
在“打印机”策略页面中,双击“程序包指向并打印 - 批准的服务器”。
-
选择“已启用”选项。
-
在“选项”下,单击“显示”。
-
在每行中键入一个完全限定服务器名称。
-
单击“确定”。
-
单击“应用”,然后单击“确定”。
-
如果你正在使用独立客户端,请重启该客户端,然后确认这些策略已生效。
-
如果你正在使用域策略,请将这些策略推送到域客户端,然后确认这些策略已生效。
注意:启用这些组策略之后,必须将所有打印机服务器添加到“指向并打印限制”列表和“程序包指向并打印 - 批准的服务器”列表。 此条件成立,不管程序包是否可感知。
2016 年 10 月更新常见问题解答
-
问:我们应卸载以前的更新吗?
答:不用。 较低版本的更新修复了漏洞。 2016 年 10 月更新提供了缓解措施,使网络管理员可以安装他们认为安全的驱动程序。 -
问:即使安装了 2016 年 10 月更新并配置了组策略,我在尝试安装本地打印机时,仍显示“你是否信任此打印机?”消息。 为什么会这样?网络管理员指南部分。
答:此缓解措施针对网络打印机而不是本地打印机,因此,此行为在预料之内。 注意:如果收到“你是否信任此打印机?”消息,请通过使用受信任的可识别程序包驱动程序替换当前驱动程序,或在安装本地打印机之前将驱动程序文件安装到本地驱动程序存储。 有关详细信息,请参阅
如何获取和安装更新
方法 1: Windows Update
可以通过 Windows 更新获取此更新。 当你开启自动更新后,系统会自动下载并安装此更新。 有关如何开启自动更新的更多信息,请参阅自动获取安全更新。 注意:对于 Windows RT 8.1,此更新仅可通过 Windows 更新获得。
可以通过 Microsoft 下载中心获取独立的更新程序包。 要安装此更新,请按照下载页面上的安装说明进行操作。Microsoft 安全公告 MS16-087 中与你运行的 Windows 版本相对应的下载链接。
单击更多信息
Windows Vista(所有版本)参考表
下表包含此软件的安全更新信息。
安全更新文件名 |
对于所有受支持的 32 位 Windows Vista 版本: Windows6.0-KB3170455-x86.msu |
对于所有受支持的基于 x64 的 Windows Vista 版本: Windows6.0-KB3170455-x64.msu |
|
安装开关 |
|
重启要求 |
在某些情况下,此更新不需要重启系统。 如果所需文件正在使用中,则此更新程序会要求重启系统。 如果发生这种情况,您将收到一条消息,提醒您重启系统。 |
删除信息 |
WUSA.exe 不支持卸载更新程序。 若要卸载由 WUSA 安装的更新,请依次单击“控制面板”和“安全”。 在“Windows 更新”下,单击“查看已安装的更新”并从更新列表中选择。 |
文件信息 |
|
注册表项验证 |
注意 没有用于验证此更新是否存在的注册表项。 |
Windows Server 2008(所有版本)参考表
下表包含此软件的安全更新信息。
安全更新文件名 |
对于所有受支持的 32 位 Windows Server 2008 版本: Windows6.0-KB3170455-x86.msu |
对于所有受支持的基于 x64 的 Windows Server 2008 版本: Windows6.0-KB3170455-x64.msu |
|
对于所有受支持的基于 Itanium 的 Windows Server 2008 版本: Windows6.0-KB3170455-ia64.msu |
|
安装开关 |
|
重启要求 |
在某些情况下,此更新不需要重启系统。 如果所需文件正在使用中,则此更新程序会要求重启系统。 如果发生这种情况,您将收到一条消息,提醒您重启系统。 |
删除信息 |
WUSA.exe 不支持卸载更新程序。 若要卸载由 WUSA 安装的更新,请依次单击“控制面板”和“安全”。 在“Windows 更新”下,单击“查看已安装的更新”并从更新列表中选择。 |
文件信息 |
|
注册表项验证 |
注意 没有用于验证此更新是否存在的注册表项。 |
Windows 7(所有版本)参考表
下表包含此软件的安全更新信息。
安全更新文件名 |
对于所有受支持的 32 位 Windows 7 版本: Windows6.1-KB3170455-x86.msu |
对于所有受支持的基于 x64 的 Windows 7 版本: Windows6.1-KB3170455-x64.msu |
|
安装开关 |
|
重启要求 |
在某些情况下,此更新不需要重启系统。 如果所需文件正在使用中,则此更新程序会要求重启系统。 如果发生这种情况,您将收到一条消息,提醒您重启系统。 |
删除信息 |
若要卸载由 WUSA 安装的更新,请使用“/Uninstall”设置开关,或依次单击“控制面板”、“系统和安全”和“Windows 更新”,单击“已安装的更新”,然后从更新列表中进行选择。 |
文件信息 |
|
注册表项验证 |
注意 没有用于验证此更新是否存在的注册表项。 |
Windows Server 2008 R2(所有版本)参考表
下表包含此软件的安全更新信息。
安全更新文件名 |
对于所有受支持的基于 x64 的 Windows Server 2008 R2 版本: Windows6.1-KB3170455-x64.msu |
对于所有受支持的基于 Itanium 的 Windows Server 2008 R2 版本: Windows6.1-KB3170455-ia64.msu |
|
安装开关 |
|
重启要求 |
在某些情况下,此更新不需要重启系统。 如果所需文件正在使用中,则此更新程序会要求重启系统。 如果发生这种情况,您将收到一条消息,提醒您重启系统。 |
删除信息 |
若要卸载由 WUSA 安装的更新,请使用“/Uninstall”设置开关,或依次单击“控制面板”、“系统和安全”和“Windows 更新”,单击“已安装的更新”,然后从更新列表中进行选择。 |
文件信息 |
|
注册表项验证 |
注意 没有用于验证此更新是否存在的注册表项。 |
Windows 8.1(所有版本)参考表
下表包含此软件的安全更新信息。
安全更新文件名 |
对于所有受支持的 32 位 Windows 8.1 版本: Windows8.1-KB3170455-x86.msu |
对于所有受支持的基于 x64 的 Windows 8.1 版本: Windows8.1-KB3170455-x64.msu |
|
安装开关 |
|
重启要求 |
在某些情况下,此更新不需要重启系统。 如果所需文件正在使用中,则此更新程序会要求重启系统。 如果发生这种情况,您将收到一条消息,提醒您重启系统。 |
删除信息 |
若要卸载由 WUSA 安装的更新,请使用“/Uninstall”设置开关,或依次单击“控制面板”、“系统和安全”和“Windows 更新”,在“另请参阅”下单击“已安装的更新”,然后从更新列表中进行选择。 |
文件信息 |
|
注册表项验证 |
注意 没有用于验证此更新是否存在的注册表项。 |
Windows Server 2012 和 Windows Server 2012 R2(所有版本)参考表
下表包含此软件的安全更新信息。
安全更新文件名 |
对于所有受支持的 Windows Server 2012 版本: Windows8-RT-KB3170455-x64.msu |
对于所有受支持的 Windows Server 2012 R2 版本: Windows8.1-KB3170455-x64.msu |
|
安装开关 |
|
重启要求 |
在某些情况下,此更新不需要重启系统。 如果所需文件正在使用中,则此更新程序会要求重启系统。 如果发生这种情况,您将收到一条消息,提醒您重启系统。 |
删除信息 |
若要卸载由 WUSA 安装的更新,请使用“/Uninstall”设置开关,或依次单击“控制面板”、“系统和安全”和“Windows 更新”,在“另请参阅”下单击“已安装的更新”,然后从更新列表中进行选择。 |
文件信息 |
|
注册表项验证 |
注意 没有用于验证此更新是否存在的注册表项。 |
Windows RT 8.1(所有版本)参考表
下表包含此软件的安全更新信息。
部署 |
此安全更新仅通过 Windows 更新提供。 |
重启要求 |
在某些情况下,此更新不需要重启系统。 如果所需文件正在使用中,则此更新程序会要求重启系统。 如果发生这种情况,您将收到一条消息,提醒您重启系统。 |
删除信息 |
依次单击“控制面板”、“系统和安全”和“Windows 更新”,然后在“另请参阅”下单击“已安装的更新”,并从更新列表中进行选择。 |
文件信息 |
Windows 10(所有版本)参考表
下表包含此软件的安全更新信息。
安全更新文件名 |
对于所有受支持的 32 位 Windows 10 版本: Windows10.0-KB3163912-x86.msu |
对于所有受支持的基于 x64 的 Windows 10 版本: Windows10.0-KB3163912-x64.msu |
|
对于所有受支持的 32 位版本 Windows 10 版本 1511: Windows10.0-KB3172985-x86.msu |
|
对于所有受支持的基于 x64 版本的 Windows 10 版本 1511: Windows10.0-KB3172985-x64.msu |
|
安装开关 |
|
重启要求 |
在某些情况下,此更新不需要重启系统。 如果所需文件正在使用中,则此更新程序会要求重启系统。 如果发生这种情况,您将收到一条消息,提醒您重启系统。 |
删除信息 |
若要卸载由 WUSA 安装的更新,请使用“/Uninstall”设置开关,或依次单击“控制面板”、“系统和安全”和“Windows 更新”,在“另请参阅”下单击“已安装的更新”,然后从更新列表中进行选择。 |
文件信息 |
|
注册表项验证 |
注意 没有用于验证此更新是否存在的注册表项。 |
帮助安装更新:Microsoft 更新支持 IT 专业人员安全解决方案:TechNet 安全疑难解答与支持 帮助保护基于 Windows 的计算机不受病毒和恶意软件的破坏:病毒解决方案和安全中心 基于国家/地区的本地支持:国际支持