search menu icon-carat-right cmu-wordmark

CERT Coordination Center

Microsoft Windows NTLM automatically authenticates via SMB when following a file:// URL

Vulnerability Note VU#672268

Original Release Date: 2015-04-13 | Last Revised: 2017-09-05

Overview

Software running on Microsoft Windows that utilizes HTTP requests can be forwarded to a file:// protocol on a malicious server, which causes Windows to automatically attempt authentication via SMB to the malicious server in some circumstances. The encrypted form of the user's credentials are then logged on the malicious server. This vulnerability is alternatively known as "Redirect to SMB".

Description

CWE-201: Information Exposure Through Sent Data

Many software products use HTTP requests for various features such as software update checking. A malicious user can intercept such requests (such as with a MITM proxy) and use HTTP Redirect to redirect the victim a malicious SMB server. If the redirect is a file:// URL and the victim is running Microsoft Windows, Windows will automatically attempt to authenticate to the malicious SMB server by providing the victim's user credentials to the server. These credentials can then be logged by the malicious server. The credentials are encrypted, but may be "brute-forced" to break the encryption.

The following Windows API functions (available via urlmon.dll) have been identified as being affected:

    • URLDownloadA
    • URLDownloadW
    • URLDownloadToCacheFileA
    • URLDownloadToCacheFileW
    • URLDownloadToFileA
    • URLDownloadToFileW
    • URLOpenStream
    • URLOpenBlockingStream

urlmon uses the wininet library for processing, therefore the affected functionality may be contained within wininet; it is currently not clear where the vulnerability lies. Internet Explorer and the WebBrowser component of .NET have also be reported vulnerable to this SMB redirection. For a longer description with more examples, see Cylance's blog on the issue.

While the HTTP Redirect vector is novel, this type of issue with SMB has been well known for some time. For example, see Aaron Spangler's report from 1997, Steve Birnbaum's report, Paul Ashton's report, and information from Microsoft from 2009. Please see the full list of references at the end of this publication.

Impact

An attacker exploiting this vulnerability may obtain the victim's user credentials in an encrypted format.

Solution

The CERT/CC is currently unaware of a full solution to this problem. However, affected users may consider the following workarounds.

Block outbound SMB

Consider blocking outbound SMB connections (TCP ports 139 and 445) from the local network to the WAN.

Update NTLM group policy

This attack may be mitigated in some circumstances by restricting NTLM via appropriate Group Policy. See reference one and reference two from Microsoft.

Do not use NTLM for authentication by default in applications

Developers should ensure their software complies with appropriate Group Policy and does not use NTLM for authentication by default.

Use a strong password and change passwords frequently

Since the credentials are provided to the attacker in encrypted form, a stronger password may require more time to break the encryption. Changing passwords regularly further deters brute-force attacks against the encryption.

Vendor Information

672268
 

View all 12 vendors View less vendors


CVSS Metrics

Group Score Vector
Base 6.3 AV:N/AC:M/Au:S/C:C/I:N/A:N
Temporal 5.7 E:F/RL:W/RC:C
Environmental 5.7 CDP:ND/TD:H/CR:ND/IR:ND/AR:ND

References

Acknowledgements

Thanks to Brian Wallace of Cylance, Inc., for reporting this vulnerability.

This document was written by Garret Wassermann.

Other Information

CVE IDs: None
Date Public: 2015-04-13
Date First Published: 2015-04-13
Date Last Updated: 2017-09-05 21:58 UTC
Document Revision: 67

Sponsored by CISA.