Microsoft Security Advisory MS02-050 - Microsoft Windows, Microsoft Office for Mac, Microsoft Internet Explorer for Mac, and Microsoft Outlook Express for Mac is vulnerable to certificate identity spoofing because the CryptoAPI does not check Basic Constraints field.
5a7729e51ebec0efb6b48ada409971e53911b361fad8035cca735a906d62b3b7
-----BEGIN PGP SIGNED MESSAGE-----
- ----------------------------------------------------------------------
Title: Certificate Validation Flaw Could Enable Identity
Spoofing (Q328145)
Date: September 04, 2002
Software: Microsoft Windows, Microsoft Office for Mac, Microsoft
Internet Explorer for Mac, or Microsoft Outlook Express
for Mac.
Impact: Identity spoofing.
Max Risk: Critical
Bulletin: MS02-050
Microsoft encourages customers to review the Security Bulletin at:
https://www.microsoft.com/technet/security/bulletin/MS02-050.asp .
- ----------------------------------------------------------------------
Issue:
======
The IETF Profile of the X.509 certificate standard defines several
optional fields that can be included in a digital certificate. One
of these is the Basic Constraints field, which indicates the maximum
allowable length of the certificate's chain and whether the
certificate is a Certificate Authority or an end-entity certificate.
However, the APIs within CryptoAPI that construct and validate
certificate chains (CertGetCertificateChain(),
CertVerifyCertificateChainPolicy(), and WinVerifyTrust()) do not
Check the Basic Constraints field. The same flaw, unrelated to
CryptoAPI, is also present in several Microsoft products for
Macintosh.
The vulnerability could enable an attacker who had a valid
end-entity certificate to issue a subordinate certificate that,
although bogus, would nevertheless pass validation. Because
CryptoAPI is used by a wide range of applications, this could
enable a variety of identity spoofing attacks. These are discussed
in detail in the bulletin FAQ, but could include:
- Setting up a web site that poses as a different web site, and
"proving" its identity by establishing an SSL session as the
legitimate web site.
- Sending emails signed using a digital certificate that
purportedly belongs to a different user.
- Spoofing certificate-based authentication systems to gain
entry as a highly privileged user.
- Digitally signing malware using an Authenticode certificate
that claims to have been issued to a company users might trust.
Mitigating Factors:
====================
Overall:
- The user could always manually check a certificate chain, and
might notice in the case of a spoofed chain that there was an
unfamiliar intermediate CA.
- Unless the attacker's digital certificate were issued by a CA
in the user's trust list, the certificate would generate a
warning when validated.
- The attacker could only spoof certificates of the same type as
the one he or she possessed. In the case where the attacker
attempted an attack using a high-value certificate such as
Authenticode certificates, this would necessitate obtaining
a legitimate certificate of the same type - which could
require the attacker to prove his or her identity or
entitlement to the issuing CA.
Web Site Spoofing:
- The vulnerability provides no way for the attacker to cause the
user to visit the attacker's web site. The attacker would need
to redirect the user to a site under the attacker's control
using a method such as DNS poisoning. As discussed in the
bulletin FAQ, this is extremely difficult to carry out in
practice.
- The vulnerability could not be used to extract information from
the user's computer. The vulnerability could only be used by an
attacker as a means of convincing a user that he or she has
reached a trusted site, in the hope of persuading the user to
voluntarily provide sensitive data.
Email Signing:
- The "from" address on the spoofed mail would need to match the
one specified in the certificate, giving rise to either of two
scenarios if a recipient replied to the mail. In the case where
the "from" and "reply-to" fields matched, replies would be sent
to victim of the attack rather than the attacker. In the case
where the fields didn't match, replies would obviously be
addressed to someone other than ostensible sender. Either case
could be a tip-off that an attack was underway.
Certificate-based Authentication:
- In most cases where certificates are used for user
authentication, additional information contained within the
certificate is necessary to complete the authentication. The
type and format of such data typically varies with every
installation, and as a result significant insider information
would likely be required for a successful attack.
Authenticode Spoofing:
- To the best of Microsoft's knowledge, such an attack could not
be carried out using any commercial CA's Authenticode
certificates. These certificates contain policy information
that causes the Basic Constraints field to be correctly
evaluated, and none allow end-entity certificates to act as CAs.
- Even if an attack were successfully carried out using an
Authenticode certificate that had been issued by a corporate
PKI, it wouldn't be possible to avoid warning messages, as trust
in Authenticode is brokered on a per-certificate, not per-name,
basis.
Risk Rating:
============
Microsoft Windows platforms:
- Internet systems: Critical
- Intranet systems: Critical
- Client systems: Critical
Microsoft programs for Mac:
- Internet systems: None
- Intranet systems: None
- Client systems: Moderate
Patch Availability:
===================
- A patch is available to fix this vulnerability for Windows NT
4.0, Windows NT 4.0, Terminal Server Edition, Windows XP, and
Windows XP 64 bit Edition.
Please read the Security Bulletin at
https://www.microsoft.com/technet/security/bulletin/ms02-050.asp
for information on obtaining this patch.
- ---------------------------------------------------------------------
THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS
PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS
ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE
FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL,
CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF
MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION
OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR
INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.
-----BEGIN PGP SIGNATURE-----
Version: PGP 7.1
iQEVAwUBPXbSv40ZSRQxA/UrAQEB/Af/axxrqnjY1hu3H7A7cF8icgkKPAaELIHl
m83g4INXCKgzfzG0LkPKiaZkB5l9YTyeENVsmrju+J00/q9GZR1ltE1KdATGCkoo
Q2ta2y/RvZZcgrxjzX5qyHv1QOdMhSKIIBS5CRGHHUsetFg1jAr+gl4SB9/5NI0I
jsCNwbp++UikaX9W8mV8EHDR7VrMvEU3AIyrnNiA/qzI90Msp3Ano2fRaNh4mzim
S3gTq8WLERUfd+TVuA6ImQUatxmZAdPTe6xKpRjMNaLnWMqGEYdITXWwl6m+BJY3
s6X9p5I8IPnn8ZMZCtN1ATZQYqXKX6VtTKcdu3jt3JiZiUXGSJRCUg==
=J3c2
-----END PGP SIGNATURE-----