MS16-087: Security update for Windows print spooler components: July 12, 2016

Gælder for: Windows Server 2012 R2 DatacenterWindows Server 2012 R2 StandardWindows Server 2012 R2 Essentials


This security update was re-released September 12, 2017, to address known issues in update 3170455 for CVE-2016-3238.

Microsoft has made available the following updates for currently-supported versions of Microsoft Windows. For more information, go to the following article in the Microsoft Knowledge Base:

  • Re-released update 3170455 for Windows Server 2008
  • Monthly rollup 4038777 and security update 4038779 for Windows 7 and Windows Server 2008 R2
  • Monthly rollup 4038799 and security update 4038786 for Windows Server 2012
  • Monthly rollup 4038792 and security update 4038793 for Windows 8.1 and Windows Server 2012 R2
  • Cumulative update 4038781 for Windows 10
  • Cumulative update 4038781 for Windows 10 Version 1511
  • Cumulative update 4038782 for Windows 10 Version 1607 and Windows Server 2016

Microsoft recommends that customers who are running Windows Server 2008 reinstall update 3170455. Microsoft recommends that customers who are running other supported versions of Windows install the appropriate update. For more information, go to Microsoft Knowledge Base article 3170455.

Other changes that are included in the MS16-087 re-release

  • Added Event logging to help determine cause of printer driver installation errors

Previously, the only way for a customer to know why a driver failed the new restriction checks which that implemented as part of MS16-087 was to gather print etw logs, then send to Microsoft for analysis.

We have added functionality to log the cause of failures to the event logger so that customers can investigate the root cause of driver failures themselves.

Information that will be logged:

1. If a driver is not package-aware or is not properly signed, the following message is logged:

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. If a driver fails validation of a signature by using the provided catalog, the following message is logged:

VALIDATEDRVINFO_FAILED: "In VALIDATINGDRVINFO, Adding printer driver <driverName> failed, error code <errorCodeFromListBelow>.

Possible Error codes:




Publisher not trusted


Hash not in catalog


No Catalog for OEM INF


No authenticode catalog


Authenticode disallowed


Generic “Driver install blocked”



This security update resolves vulnerabilities in Microsoft Windows. The more severe of the vulnerabilities could allow remote code execution if an attacker is able to execute a man-in-the-middle (MiTM) attack on a workstation or print server, or set up a rogue print server on a target network.

To learn more about the vulnerability, see Microsoft Security Bulletin MS16-087.

More Information

  • After you install this security update, in order to deploy Point and Print drivers from print servers to clients, you must apply the following Windows update rollup on the Windows 8.1 or Windows Server 2012 R2 printer server:
    3000850 November 2014 update rollup for Windows RT 8.1, Windows 8.1, and Windows Server 2012 R2
  • All future security and nonsecurity updates for Windows RT 8.1, Windows 8.1, and Windows Server 2012 R2 require update 2919355 to be installed. We recommend that you install update 2919355 on your Windows RT 8.1-based, Windows 8.1-based, or Windows Server 2012 R2-based computer so that you receive future updates.
  • If you install a language pack after you install this update, you must reinstall this update. Therefore, we recommend that you install any language packs that you need before you install this update. For more information, see Add language packs to Windows.

Additional information about this security update

The following articles contain additional information about this security update as it relates to individual product versions. The articles may contain known issue information.
  • 3170455 MS16-087: Description of the security update for Windows print spooler components: July 12, 2016
  • 3163912 Cumulative update for Windows 10: July 12, 2016
  • 3172985 Cumulative update for Windows 10 Version 1511 and Windows Server 2016 Technical Preview 4: July 12, 2016

Known issues

If you're using network printing in your environment, you may experience one of the following issues:
  • You may be prompted by a warning about installing a printer driver, or the driver may fail to install without notification after you apply MS16-087. The symptoms here depend on the specific scenario.

    Scenario 1

    For non-package-aware v3 printer drivers, the following warning message may be displayed when users try to connect to point-and-print printers:

    Do you trust this printer?

    Scenario 2

    Package-aware drivers must be signed with a trusted certificate. The verification process checks whether all the files that are included in the driver are hashed in the catalog. If that verification fails, the driver is deemed untrustworthy. In this situation, driver installation is blocked, and the following warning message is displayed:

    Add printer

    Scenario 3

    For non-interactive scenarios (for example, the printer is installed through an automated script), when the printer driver matches the criteria that's described in either Scenario 1 or Scenario 2, printer installation fails, and no warning message is displayed.

    In these situations, contact your network administrator to obtain an updated driver from the printer manufacturer.

    Guidance for network administrators:
    • Update the affected printer driver. Package-aware V3 printer drivers were introduced in Windows Vista. Installing a package-aware printer driver will resolve the issue.
    • If a specific legacy printer does not have the appropriate printer driver available, preinstalling the problematic printer driver on the client system will resolve the issue.
    For more information about these scenarios, see the following Microsoft resources:
  • After you apply security update MS16-087 (KB 3170455 ) and try to connect to a trusted package-aware printer that is installed on a system that is running Windows 8.1 or Windows Server 2012 R2, you cannot connect to the printer.

    To resolve this issue, apply the following Windows update rollup on the Windows 8.1 or Windows Server 2012 R2 printer server:
    3000850 November 2014 update rollup for Windows RT 8.1, Windows 8.1, and Windows Server 2012 R2

Oct 2016 Update: Mitigation for known issues

Microsoft has released an update for October 2016 that lets network administrators configure policies that permit the installation of print drivers that they consider are safe. This update also allows for network administrators to deploy printer connections that they consider safe.

The updates are contained in the following roll-up packages.

Windows 10 RTM KB 3192440
Windows 10 1511 KB 3192441
Windows 10 1607 KB 3194798
Windows 7 and Windows Server 2008 R2 KB 3192403
Windows Server 2012 KB 3192406
Windows 8.1 and Windows Server 2012 R2 KB 3192404

Configuring Group Policy to add print servers to allowed list

  1. Click Start, and then click Run.
  2. Type gpedit.msc, and then click OK.
  3. Expand Computer Configuration, and then expand Administrative Templates.
  4. Click Printers.
  5. Double click Point and Print Restrictions, and then select the Enabled option.
  6. Under Options, select the Users can only point and print to these servers check box, and then type the fully qualified server names in the text box, separated by semi-colons.
  7. Under Security Prompts, select Do not show warning or elevation prompt in both the When installing drivers for a new connection and When updating drivers for an existing connection lists.
  8. Click Apply, and then OK.
  9. In the Printers policy page, double-click Package Point and Print – Approved servers.
  10. Select the Enabled option.
  11. Under Options, click Show.
  12. Type one fully qualified server name in each row.
  13. Click OK.
  14. Click Apply, and then click OK.
  15. If you are using a stand-alone client, restart the client, and then verify that these policies are in effect.
  16. If you use domain policies, push the policies to the domain clients, and then verify that these policies are in effect.
Note After you enable these group policies, you have to add all printer servers to both the Point and Print Restrictions list and the Package Point and Print – Approved server list. This is true regardless of package awareness.

Oct 2016 Update Frequently Asked Questions

  • Q: Should we uninstall the previous update?
    A: No. The previous update fixes the vulnerability. The October 2016 update provides mitigation to give network administrators the ability to install drivers they consider to be safe.
  • Q: Even with the October 2016 update installed and the group policies configured, the "Do you trust this printer" message is still displayed when I try to install a local printer. Why is that?
    A: This mitigation targets network printers and not local printers, so this behavior is expected.

    Note If you do receive the "Do you trust this printer" message, either replace your current driver by using a trusted package-aware driver, or install the driver files to the local driver store before you install the local printer. For more information, see the Guidance for network administrators section.

How to obtain and install the update

Method 1: Windows Update

This update is available through Windows Update. When you turn on automatic updating, this update will be downloaded and installed automatically. For more information about how to turn on automatic updating, see Get security updates automatically.

Note For Windows RT 8.1, this update is available through Windows Update only.