Executive Summary

Summary
Title Changes in Windows Authenticode Signature Verification
Informations
Name KB2915720 First vendor Publication 2013-12-10
Vendor Microsoft Last vendor Modification 2014-02-11
Severity (Vendor) N/A Revision 1.2

Security-Database Scoring CVSS v3

Cvss vector : N/A
Overall CVSS Score NA
Base Score NA Environmental Score NA
impact SubScore NA Temporal Score NA
Exploitabality Sub Score NA
 
Calculate full CVSS 3.0 Vectors scores

Security-Database Scoring CVSS v2

Cvss vector :
Cvss Base Score Not Defined Attack Range Not Defined
Cvss Impact Score Not Defined Attack Complexity Not Defined
Cvss Expoit Score Not Defined Authentication Not Defined
Calculate full CVSS 2.0 Vectors scores

Detail

General Information

Executive Summary

Microsoft is announcing the availability of an update for all supported releases of Microsoft Windows to change how signatures are verified for binaries signed with the Windows Authenticode signature format. The change is included with Security Bulletin MS13-098, but will not be enabled until June 10, 2014. Once enabled, the new default behavior for Windows Authenticode signature verification will no longer allow extraneous information in the WIN_CERTIFICATE structure. Note that after June 10, 2014, Windows will no longer recognize non-compliant binaries as signed.

Recommendation. Microsoft recommends that by June 10, 2014, executables authors ensure that all signed binaries comport with this new verification behavior by containing no extraneous information in the WIN_CERTIFICATE structure. Microsoft also recommends that customers appropriately test this change to evaluate how it will behave in their environments. Please see the Suggested Actions section of this advisory for more information.

Advisory Details

Issue References

For more information about this issue, see the following references:

ReferencesIdentification
Security BulletinMS13-098
General InformationIntroduction to Code Signing
WinVerifyTrust function
Authenticode Portable Executable Signature Format
Specific InformationWindows Root Certificate Program - Technical Requirements

Advisory FAQ

What is the scope of the advisory?
The purpose of this advisory is to inform customers of an impending change to how Windows verifies Authenticode-signed binaries and to recommend that executables authors who sign binaries with Windows Authenticode ensure that their signatures conform to the change by June 10, 2014.

What is Windows Authenticode?
Windows Authenticode is a digital signature format that is used to determine the origin and integrity of software binaries. Authenticode uses Public-Key Cryptography Standards (PKCS) #7 signed data and X.509 certificates to bind an Authenticode-signed binary to the identity of a software publisher. The term "Authenticode signature" refers to a digital signature format that is generated and verified using the WinVerifyTrust function.

What is Windows Authenticode signature verification?
Windows Authenticode signature verification consists of two primary activities: signature checking on specified objects and trust verification. These activities are carried out by the WinVerifyTrust function, which executes a signature check then passes the inquiry to a trust provider that supports the action identifier, if one exists. For more technical information regarding the WinVerifyTrust function, see WinVerifyTrust function.

For an introduction to Authenticode, see Introduction to Code Signing.

Can I enable this signature verification behavior in advance of June 10, 2014?
Yes. Customers who choose to enable the new Authenticode signature validation behavior before June 10, 2014 can do so by setting a key in the system registry. Once the key is set, Windows Authenticode signature verification will no longer recognize binaries with Authenticode signatures that contain extraneous information in the WIN_CERTIFICATE structure. See Suggested Actions below for details on how to enable this registry key.

Suggested Actions

  • Review Microsoft Root Certificate Program Technical Requirements

    Customers who are interested in learning more about the topic covered in this advisory should review Windows Root Certificate Program - Technical Requirements.

  • Modify Binary Signing Processes by June 10, 2014

    After reviewing the technical details underlying the change in Authenticode signature verification behavior, Microsoft recommends that customers ensure that their Authenticode signatures do not contain extraneous information in the WIN_CERTIFICATE structure. Microsoft also recommends that executables authors verify that their Authenticode-signed binaries conform to the new verification requirements before June 10, 2014. Authors who have modified their binary signing processes and would like to enable the new behavior prior to June 10, 2014 may do so on an opt-in basis. After June 10, 2014, binaries with signatures that do not conform to the new verification process will be considered unsigned. See Windows Root Certificate Program - Technical Requirements for guidance.

  • Test the Improvement to Authenticode Signature Verification

    Microsoft recommends that customers test how this change to Authenticode signature verification behaves in their environment by enabling it prior to June 10, 2014. To enable the Authenticode signature verification improvements, modify the registry to add the EnableCertPaddingCheck value as detailed below.

    Warning Performing these steps to enable the functionality changes included in the MS13-098 update will cause non-conforming binaries to appear unsigned and, therefore, render them untrusted.

    Note If you use Registry Editor incorrectly, you may cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that you can solve problems that result from using Registry Editor incorrectly. Use Registry Editor at your own risk.

    After installing the MS13-098 update, perform the following:

    For 32-bit versions of Microsoft Windows

    Paste the following text in a text editor such as Notepad. Then, save the file by using the .reg file name extension (for example, enableAuthenticodeVerification.reg).

    Windows Registry Editor Version 5.00
    [HKEY_LOCAL_MACHINE\Software\Microsoft\Cryptography\Wintrust\Config]
    "EnableCertPaddingCheck"="1"

    You can apply this .reg file to individual systems by double-clicking it.

    Note You must restart the system for your changes to take effect.

    For 64-bit versions of Microsoft Windows

    Paste the following text in a text editor such as Notepad. Then, save the file by using the .reg file name extension (for example, enableAuthenticodeVerification64.reg).

    Windows Registry Editor Version 5.00
    [HKEY_LOCAL_MACHINE\Software\Microsoft\Cryptography\Wintrust\Config]
    "EnableCertPaddingCheck"="1"

    [HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Cryptography\Wintrust\Config]
    "EnableCertPaddingCheck"="1"

    You can apply this .reg file to individual systems by double-clicking it.

    Note You must restart the system for your changes to take effect.

    Impact of enabling the functionality changes included in the MS13-098 update. Non-conforming binaries will appear unsigned and, therefore, be rendered untrusted.

    How to disable the functionality. Perform the following to delete the registry value previously added.

    For 32-bit versions of Microsoft Windows, paste the following text in a text editor such as Notepad. Then, save the file by using the .reg file name extension (for example, disableAuthenticodeVerification.reg).

    Windows Registry Editor Version 5.00
    [HKEY_LOCAL_MACHINE\Software\Microsoft\Cryptography\Wintrust\Config]
    "EnableCertPaddingCheck"=-

    You can apply this .reg file to individual systems by double-clicking it.

    Note You must restart the system for your changes to take effect.

    For 64-bit versions of Microsoft Windows, paste the following text in a text editor such as Notepad. Then, save the file by using the .reg file name extension (for example, disableAuthenticodeVerification64.reg).

    Windows Registry Editor Version 5.00
    [HKEY_LOCAL_MACHINE\Software\Microsoft\Cryptography\Wintrust\Config]
    "EnableCertPaddingCheck"=-

    [HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Cryptography\Wintrust\Config]
    "EnableCertPaddingCheck"=-

    You can apply this .reg file to individual systems by double-clicking it.

    Note You must restart the system for your changes to take effect.

Additional Suggested Actions
  • Protect your PC

    We continue to encourage customers to follow our Protect Your Computer guidance of enabling a firewall, getting software updates and installing antivirus software. For more information, see Microsoft Safety & Security Center.

  • Keep Microsoft Software Updated

    Users running Microsoft software should apply the latest Microsoft security updates to help make sure that their computers are as protected as possible. If you are not sure whether your software is up to date, visit Microsoft Update, scan your computer for available updates, and install any high-priority updates that are offered to you. If you have automatic updating enabled and configured to provide updates for Microsoft products, the updates are delivered to you when they are released, but you should verify that they are installed.

Original Source

Url : http://www.microsoft.com/technet/security/advisory/2915720.mspx

Alert History

If you want to see full details history, please login or register.
0
1
2
3
Date Informations
2014-02-17 11:38:44
  • Multiple Updates
2014-02-11 21:20:01
  • Multiple Updates
2013-12-13 21:18:18
  • Multiple Updates
2013-12-11 05:17:56
  • First insertion