CVE-2021-34448
Medium · 6.8 CISA KEVCVSS
6.8
EPSS
40.1%
Published
Jul 16, 2021
CISA due date
Nov 17, 2021
Cloudanix analysis
A malicious web page or document can take control of an unpatched Windows computer after a user opens it.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Moderate
- Impact
- Remote Code Execution
- Component
- Library
- Class
- Memory Corruption
- Remediation
- Patch
- Effort
- Low
- Patch risk
- Low
What it actually does
CVE-2021-34448 is a memory corruption flaw in the Microsoft Windows scripting engine. A remote, unauthenticated attacker can craft malicious script content that corrupts process memory when rendered or executed by a vulnerable Windows component or application that hosts the scripting engine. Successful exploitation can allow arbitrary code execution in the context of the current user. The vulnerability requires user interaction, such as opening a malicious document, viewing a crafted web page, or interacting with attacker-controlled content, but does not require attacker credentials.
Why it matters to the business
Successful exploitation can turn a single user action into endpoint compromise, enabling data theft, malware installation, credential harvesting, and lateral movement if the compromised user has access to sensitive systems. Because this vulnerability is listed in CISA KEV and has been observed exploited in the wild, organizations should treat unpatched Windows systems as high-priority exposure even though exploitation requires user interaction. The CISA remediation deadline was 2021-11-17, so any remaining exposure is materially overdue.
How an attack unfolds
An attacker prepares malicious script content designed to trigger memory corruption in the Windows scripting engine. The content is delivered through a common user-facing vector such as a phishing email, malicious attachment, compromised website, redirect chain, or hosted HTML/script payload. When a vulnerable Windows system processes the content, the scripting engine mishandles memory in a way that allows attacker-controlled code execution. The code runs with the privileges of the user who opened or rendered the content. From there, the attacker typically drops a loader or payload, establishes command-and-control, steals browser or Windows credentials, performs local discovery, and attempts privilege escalation or lateral movement. Exploitation has been reported in the wild; no ransomware-specific KEV designation is associated with this entry.
How to fix it
Apply the Microsoft security updates that address CVE-2021-34448 for all affected Windows client and server versions, or install the latest cumulative updates available for the supported Windows release. Prioritize Windows 7, Windows 8.1, Windows 10 versions 1507 through 21H1, Windows RT 8.1, Windows Server 2008, 2012, 2016, and 2019 where still present. Systems on end-of-support Windows versions should be upgraded to supported releases or isolated until they can be replaced. As compensating controls, reduce exposure to script-based content by disabling or restricting legacy browser components where possible, enforcing email and web content filtering, blocking high-risk script interpreters from launching from Office or browser child processes, enabling attack surface reduction rules, and ensuring EDR is active on endpoints.
How to confirm the fix worked
Confirm that affected Windows hosts have the relevant Microsoft security update or a later cumulative update installed. Use centralized patch management, vulnerability scanning, or authenticated endpoint inventory to verify patch compliance across all affected Windows versions. Validate that unsupported operating systems are either removed, upgraded, or formally isolated. Test endpoint controls by confirming that suspicious child-process behavior from browsers, document readers, and Office applications is blocked or alerted. Re-scan externally and internally managed assets after remediation to verify the vulnerability is no longer reported.
Typical attack path
- Identify organizations or users likely to open web, email, or document-based content on vulnerable Windows versions.
- Host or attach malicious content that invokes the vulnerable Windows scripting engine path.
- Use phishing, malvertising, compromised websites, or document lures to induce a user to open or render the content.
- Trigger scripting engine memory corruption and gain code execution in the current user context.
- Drop and execute a secondary payload such as a loader, remote access trojan, or credential theft tool.
- Establish persistence, contact command-and-control infrastructure, and conduct host reconnaissance.
- Steal credentials or tokens and attempt privilege escalation or lateral movement to expand access.
How to detect it
Review endpoint telemetry, EDR alerts, Windows event logs, proxy logs, DNS logs, email gateway logs, and browser history for suspicious activity originating from browsers, Office applications, document readers, or script-hosting processes. Focus on systems that were unpatched at the time of user interaction, especially around phishing emails, web redirects, or downloaded HTML/script content. Look for parent-child process chains where iexplore.exe, msedge.exe, chrome.exe, firefox.exe, outlook.exe, winword.exe, excel.exe, powerpnt.exe, or acrord32.exe spawn mshta.exe, wscript.exe, cscript.exe, powershell.exe, cmd.exe, rundll32.exe, regsvr32.exe, certutil.exe, bitsadmin.exe, or unsigned binaries in user-writable directories. Investigate unexpected network connections shortly after document or browser activity, newly created executables or scripts in Downloads, Temp, AppData, or ProgramData, and persistence creation through Run keys, Startup folders, scheduled tasks, or services. Because public exploit artifacts vary, absence of a single IOC does not rule out exploitation; behavioral correlation is more reliable.
- mshta.exe
- wscript.exe
- cscript.exe
- rundll32.exe javascript:
- regsvr32.exe /i:http
- powershell.exe -EncodedCommand
- certutil.exe -urlcache
- bitsadmin.exe /transfer
- %TEMP%\*.hta
- %APPDATA%\*.hta
- %LOCALAPPDATA%\Temp\*.js
- %LOCALAPPDATA%\Temp\*.jse
- %LOCALAPPDATA%\Temp\*.vbs
- HKCU\Software\Microsoft\Windows\CurrentVersion\Run
- HKLM\Software\Microsoft\Windows\CurrentVersion\Run
- \Microsoft\Windows\Start Menu\Programs\Startup\
- schtasks /create
What your security team should do
- Immediately identify all affected Windows client and server versions and prioritize patching because the vulnerability is in CISA KEV and has active in-the-wild exploitation.
- Patch or isolate internet-facing, user-facing, kiosk, VDI, and high-risk workstation populations first, followed by remaining Windows servers and endpoints.
- Investigate endpoints that were unpatched after the 2021-11-17 KEV due date for signs of historical compromise.
- Use EDR or SIEM hunting for suspicious script-engine exploitation patterns, especially browser, Office, or document-reader processes spawning script interpreters, download tools, or unsigned executables.
- Harden email and web gateways to block malicious HTML, script, and attachment delivery patterns commonly used for user-interaction exploits.
- Enable Microsoft Defender Attack Surface Reduction rules that block Office child processes, executable content from email/webmail, and script abuse where operationally feasible.
- Retire or isolate unsupported Windows versions that cannot receive current cumulative security updates.
The record
Scripting Engine Memory Corruption Vulnerability
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|
Related vulnerabilities
- CVE-2026-78402 Stack-based buffer overflow and out-of-bounds write vulnerability in Thales Sentinel Keys… CWE-787
- CVE-2026-119777 A flaw was found in GStreamer's gst-plugins-bad H.266/VVC parser. CWE-787
- CVE-2026-104065 Scribus before 1.6.7 contains an out-of-bounds write vulnerability in the importdrw… CWE-787
- CVE-2026-104067 Scribus before 1.6.7 contains an out-of-bounds memory access vulnerability in the… CWE-787
- CVE-2026-104066 Scribus before 1.6.7 contains a heap buffer overflow vulnerability in the Mac PICT image… CWE-787
- CVE-2026-104061 Scribus before 1.6.7 contains a heap out-of-bounds write vulnerability in the… CWE-787
- CVE-2026-104062 Scribus before 1.6.7 contains a heap buffer overflow vulnerability in the PICT image… CWE-787
- CVE-2026-61627 libass is a portable subtitle renderer for the `ASS`/SSA (Advanced Substation… CWE-787