A Patch in Time Saved Nine

Morey Haber, Chief Technology Officer
March 28th, 2018

If you think back only about 10 years ago, Microsoft Windows Update was a part of Internet Explorer and you had to run it over and over, reboot in between, and patiently wait for each patch to download and install until the asset was up-to-date.

In addition, if any patches failed, diagnosing the issue was difficult and could prevent additional dependent updates from being applied as well. For an operating system like Windows XP or Windows 7, this could literally be hundreds of patches – so organizations embraced service packs and cumulative updates to shorten this process and ensure every required patch was applied. A single update versus potentially dozens allowed for time savings and an easier patch cycle. Hence, spinning off of the old cliché, “a patch in time saved nine.”

In today’s environment, things are changing again and that may no longer be true.

Beginning with Windows 10, Microsoft began enforcing automatic patch deployments on its desktop operating system. Recently this has evolved by bundling all of the patches in one distribution versus allowing organizations to select which ones to deploy. While enterprises still have the ability to control their own patch schedules, most environments are forced to accept them every month – as one bundle. This ensures the latest and greatest are always delivered and vulnerabilities are automatically remediated in a timely manner. That is a good thing. Right? What is changing next that we need to be concerned about?

With the this year’s news of the Intel vulnerabilities and subsequent patches for Spectre and Meltdown, Microsoft did something very unusual to its update process. Early on, when testing security updates, Microsoft noticed that many anti-virus vendors were not compatible with the fixes. They were notified, encouraged to test the fixes, and issue updates accordingly. In order to keep track of these incompatibilities, Microsoft added a new compatibility registry key that must be set by an anti-virus vendor in order for Windows Update to continue functioning.

Key=”HKEY_LOCAL_MACHINE” Subkey=”SOFTWARE\Microsoft\Windows\CurrentVersion\QualityCompat” Value=”cadca5fe-87d3-4b96-b7fb-a231484277cc” Type=”REG_DWORD”

The goal is for the anti-virus vendor to state they are compatible with the Spectre and Meltdown security updates and by setting this flag, they will accept these patches and allow future patches to provide compatibility. If the anti-virus vendor does not set the flag as a part of the update, then they have not proven co-existence and windows update stops working. Then, you will not receive any more updates.

So here is the rub. If you are running an older anti-virus solution and have not updated it in a while or have a vendor that has still not proven compatibility and set the appropriate registry flag – you are not getting updates.

Yes, you are stuck and thus vulnerable to any new exploits and cannot receive patches until they update the solution and you deploy the update – everywhere. This means you may have missed the X month patch update cycle and may miss Y month as well since your anti-virus vendor is not compatible – yet. You may even be forced to upgrade your anti-virus license or change vendors if the delay is too long in order to maintain proper security and regulatory compliance.

But here is the messy part. Malware, executing with the proper privileges, could tamper with this registry key and revert to an acceptable state to stop updates in the future. This could allow a persistent presence that may be resolved with future Windows Updates. Essentially, this technique controls future Windows Updates and provides a vehicle for tampering with the entire process – something that has not been implemented before in Windows, to control when updates should stop due to incompatibility.

End users and business should, therefore, take note. If machines stop receiving updates –check if your anti-virus vendor is compatible and if they have done the proper due diligence in setting the registry key. Machines that are not set are going to fall out of your patch cycle. In addition, if you use a third-party patch solution, they need to honor this setting as well. Otherwise, future updates could cause issues to the host if anti-virus is not compatible – and newer Windows Updates are applied.

A Vicious Dependency and Circle

Patching individual issues is no longer possible, and we must complete them as one patch (stitch) every month once we have confirmed they will be applied correctly. You’ve been warned.  It is worth checking your environment to make sure you can still receive patches, too.

For more information on patch management, check out BeyondTrust’s Retina Enterprise Vulnerability Management, or contact us for a strategy session.

Editors note: this blog was originally posted by CSO Online

Morey Haber, Chief Technology Officer

With more than 20 years of IT industry experience and author of Privileged Attack Vectors, Mr. Haber joined BeyondTrust in 2012 as a part of the eEye Digital Security acquisition. He currently oversees BeyondTrust technology for both vulnerability and privileged access management solutions. In 2004, Mr. Haber joined eEye as the Director of Security Engineering and was responsible for strategic business discussions and vulnerability management architectures in Fortune 500 clients. Prior to eEye, he was a Development Manager for Computer Associates, Inc. (CA), responsible for new product beta cycles and named customer accounts. Mr. Haber began his career as a Reliability and Maintainability Engineer for a government contractor building flight and training simulators. He earned a Bachelors of Science in Electrical Engineering from the State University of New York at Stony Brook.