CVE-2017-0149 — Microsoft Internet Explorer Memory Corruption Vulnerability

CVE-2017-0149

Microsoft Internet Explorer — OOB Write in Layout Engine Enables Drive-By RCE; Exploit Kit Adoption; Patched MS17-006 (March 2017)

What Is Internet Explorer?

Internet Explorer (IE) is Microsoft's legacy web browser, included in all Windows versions from Windows 95 through Windows 10. Despite the release of Edge as its successor, IE 11 remained the default browser for enterprise organizations running older Windows environments and continued to receive security updates through its end-of-life in June 2022. The IE rendering engine (mshtml.dll / Trident) and its layout engine were frequent targets for memory corruption exploits due to the complexity of HTML/CSS processing and the browser's privileged role on the desktop.

Overview

Actively Exploited. This vulnerability has been added to CISA's Known Exploited Vulnerabilities (KEV) Catalog on May 24, 2022. Federal agencies are required to apply mitigations per BOD 22-01.

CVE-2017-0149 is a memory corruption vulnerability in Internet Explorer's layout engine that allows a remote attacker to execute arbitrary code if a user visits a specially crafted web page. Patched in MS17-006 (March 14, 2017), this out-of-bounds write vulnerability follows the classic drive-by download exploitation pattern: adversaries embed exploit code in malicious or compromised web pages and serve it to IE users, then execute arbitrary code in the context of the current user. Exploit kit operators adopted this vulnerability after the patch, targeting unpatched IE installations. CISA added CVE-2017-0149 to the KEV catalog in May 2022.

Affected Versions

Internet Explorer Version Status
Internet Explorer 9 Vulnerable
Internet Explorer 10 Vulnerable
Internet Explorer 11 Vulnerable
All above with MS17-006 applied Fixed

Affected on Windows Vista SP2, Windows Server 2008 SP2/R2 SP1, Windows 7 SP1, Windows 8.1, Windows RT 8.1, Windows Server 2012/2012 R2, Windows 10 (all pre-patch versions), and Windows Server 2016.

Technical Details

Root Cause: Out-of-Bounds Write in Layout Engine

CVE-2017-0149 is an out-of-bounds write vulnerability (CWE-787) in the Internet Explorer layout engine (mshtml.dll). When processing certain HTML or CSS constructs, the layout engine performs a memory write operation beyond the bounds of an allocated buffer, corrupting adjacent memory. Successful exploitation overwrites function pointers or object metadata in the heap, allowing an attacker to redirect execution to attacker-controlled shellcode.

Exploitation pattern:

  • Attacker hosts a specially crafted web page containing the exploit
  • A user browses to the page using Internet Explorer (via phishing link, malvertising, or compromised legitimate site)
  • The layout engine processes the crafted content and triggers the OOB write
  • The attacker achieves code execution in the security context of the logged-in user
  • If the user is running as an administrator, the attacker gains full system access

Sandbox escape consideration: IE 11 runs in Protected Mode (a sandbox) on modern Windows — successful exploitation gives code execution inside the sandbox. Achieving full system access typically requires chaining with a local privilege escalation vulnerability to escape the sandbox. Enterprise environments that had disabled Protected Mode or were running IE in legacy compatibility modes were particularly vulnerable.

Attack Characteristics

Attribute Detail
Attack Vector Network — user visits malicious URL
Authentication None required
User Interaction Required (user must visit malicious page)
Complexity Low — reliable exploitation after patch analysis
Impact Remote code execution in user context

Discovery

Discovered and reported to Microsoft through coordinated vulnerability disclosure; patched in MS17-006 (March 14, 2017). The specific researcher attribution is not publicly documented.

Exploitation Context

  • Exploit kit deployment: After the March 2017 patch, reverse engineering of the patch revealed the vulnerability details; exploit kit operators incorporated CVE-2017-0149 into their frameworks to target unpatched IE users, a standard practice for high-value browser memory corruption vulnerabilities
  • Enterprise IE targeting: Organizations running IE 11 in enterprise compatibility mode for legacy web applications were particularly at risk — the corporate reliance on IE for internal applications created a large population of users who could not easily switch browsers
  • Drive-by download campaigns: CVE-2017-0149 was used in watering hole attacks and malvertising campaigns where compromised legitimate websites or ad networks served the exploit to IE visitors
  • CISA KEV (2022): Added May 2022 reflecting continued active exploitation against unpatched IE installations years after the patch; IE's extended support lifecycle (not EOL until June 2022) meant vulnerable systems remained in production for five years after the patch

Remediation

CISA BOD 22-01 Deadline: June 14, 2022. Apply mitigations per vendor instructions, follow applicable BOD 22-01 guidance for cloud services, or discontinue use of the product if mitigations are unavailable.
  1. Apply MS17-006 — install the March 2017 Cumulative Security Update for Internet Explorer on all Windows systems running IE 9, 10, or 11.

  2. Migrate from Internet Explorer — IE reached end of life on June 15, 2022 and no longer receives security updates; migrate all users and web applications to Microsoft Edge or other supported browsers immediately.

  3. Disable Internet Explorer if not required — use Group Policy to prevent users from launching IE:

    Computer Configuration → Administrative Templates → Windows Components → Internet Explorer → Prevent running Internet Explorer
    
  4. Enable Enhanced Protected Mode — if IE must remain in use, ensure Enhanced Protected Mode is enabled in IE 11 to limit exploitation impact.

  5. Deploy exploit mitigation tools — Windows Defender Exploit Guard or EMET (for older Windows versions) can block common IE exploitation techniques including heap spraying and ROP chains.

Key Details

PropertyValue
CVE ID CVE-2017-0149
Vendor / Product Microsoft — Internet Explorer
NVD Published2017-03-17
NVD Last Modified2025-10-22
CVSS 3.1 Score8.8
CVSS 3.1 VectorCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
SeverityHIGH
CWE CWE-787 — Out-of-Bounds Write find similar ↗
CISA KEV Added2022-05-24
CISA KEV Deadline2022-06-14
Known Ransomware Use No

CVSS 3.1 Breakdown

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
Required
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

Required Action

CISA BOD 22-01 Deadline: 2022-06-14. Apply updates per vendor instructions.

Timeline

DateEvent
2017-03-14Microsoft releases MS17-006 patching CVE-2017-0149 and other IE memory corruption vulnerabilities
2017-03-17CVE-2017-0149 published by NVD
2022-05-24Added to CISA Known Exploited Vulnerabilities catalog
2022-06-14CISA BOD 22-01 remediation deadline