Detect Microsoft Internet Explorer Use-After-Free Vulnerability (CVE-2010-0249) in IBM QRadar
CVE-2010-0249 is a use-after-free vulnerability (CWE-416) in Microsoft Internet Explorer that allows remote attackers to execute arbitrary code via a specially crafted web page. This vulnerability was actively exploited in the wild (Operation Aurora) and is listed in CISA's Known Exploited Vulnerabilities catalog. Exploitation typically involves a malicious HTML/JavaScript page that triggers memory corruption through manipulated DOM objects, enabling arbitrary code execution in the context of the logged-on user.
MITRE ATT&CK
QRadar Detection Query
SELECT DATEFORMAT(devicetime, 'yyyy-MM-dd HH:mm:ss') as EventTime, sourceip, username, "Process Name", "Parent Process Name", "Command", logsourcename(logsourceid) as LogSource
FROM events
WHERE LOWER("Parent Process Name") LIKE '%iexplore.exe'
AND LOWER("Process Name") IN ('cmd.exe', 'powershell.exe', 'wscript.exe', 'cscript.exe', 'mshta.exe', 'regsvr32.exe', 'rundll32.exe')
AND LOGSOURCE_TYPE(logsourceid) IN (12, 13)
LAST 24 HOURS
ORDER BY devicetime DESC QRadar AQL query identifying Internet Explorer spawning suspicious child processes on Windows endpoints, indicative of CVE-2010-0249 use-after-free exploitation.
Data Sources
Required Tables
False Positives & Tuning
- Browser automation tools or RPA platforms controlling Internet Explorer
- Help desk remote support tools that launch processes through the browser context
- Legacy intranet applications that invoke shell commands via ActiveX controls
- Authorized penetration testing activities targeting IE
Other platforms for CVE-2010-0249
Testing Methodology
Validate this detection against 3 adversary techniques from Atomic Red Team. Each test below lists the behaviour to exercise and the telemetry you should expect to see. Executable commands and cleanup steps are available with Pro.
- Test 1Simulate IE Use-After-Free Child Process Spawn
Expected signal: Sysmon Event ID 1 showing cmd.exe with ParentImage pointing to iexplore.exe; file creation event for cve_2010_0249_test.txt in %TEMP%
- Test 2IE Spawning PowerShell Downloader (Post-Exploit Simulation)
Expected signal: Sysmon Event ID 1 with ParentImage iexplore.exe and Image powershell.exe; command line containing -NonInteractive visible in process telemetry
- Test 3Anomalous IE Network Beacon on Non-Standard Port
Expected signal: Sysmon Event ID 3 network connection event with InitiatingProcessFileName iexplore.exe and DestinationPort 4444; connection attempt logged even on failure
Response Playbook
Triage
- Confirm the affected host is running Internet Explorer and identify the version — check Add/Remove Programs or HKLM\SOFTWARE\Microsoft\Internet Explorer\Version registry key to determine if an unpatched IE version is present.
- Review process creation logs (Sysmon Event ID 1) on the alerted host for iexplore.exe spawning cmd.exe, powershell.exe, or other interpreters within a short time window around the alert timestamp.
- Check DNS query logs and proxy/firewall logs for the alerted endpoint around the alert time to identify any suspicious outbound connections to external IPs or domains from iexplore.exe, especially to rare or newly-registered domains.
- Determine if the user visited any external or unfamiliar web pages shortly before the alert — pull browser history from %LOCALAPPDATA%\Microsoft\Windows\History or proxy logs.
Containment
- Immediately isolate the affected endpoint from the network using EDR network containment or VLAN quarantine to prevent lateral movement or C2 communication while preserving the system for forensic analysis.
- Disable or block Internet Explorer on affected and at-risk systems via Group Policy (set 'Prevent running Internet Explorer' or push a GPO disabling IE shortcuts and file associations) until the patch MS10-002 is confirmed applied.
Evidence Collection
- Collect a full memory image of the affected host using a trusted forensic tool (e.g., WinPmem or Magnet RAM Capture) to preserve potential shellcode, heap spray artifacts, and injected payloads in memory before rebooting.
- Export Windows Event Logs (Security, System, Application, Sysmon) and browser artifacts (history, cache, typed URLs from NTUSER.DAT) from the affected host for timeline reconstruction and indicator extraction.
Escalation Criteria
- !Escalate immediately if a reverse shell, beacon callback, or lateral movement activity is detected originating from the iexplore.exe process or any process it spawned — this indicates successful exploitation and active intrusion.
- !Escalate if multiple endpoints show the same pattern simultaneously or if the affected user account has elevated privileges (Domain Admin, local admin) — breadth of exposure or privilege level significantly increases incident severity.
Investigation Guide
Related Techniques
Forensic Artifacts
- >
Internet Explorer crash dumps or Windows Error Reporting files in %LOCALAPPDATA%\Microsoft\Windows\WER\ReportArchive — may contain stack traces revealing exploitation - >
Prefetch files for cmd.exe, powershell.exe, or other interpreters with a recent first-run timestamp correlating with the iexplore.exe execution window (%SystemRoot%\Prefetch\) - >
Suspicious files written to %TEMP%, %APPDATA%, or user profile directories by iexplore.exe child processes — likely dropped payloads or stagers - >
Registry Run keys (HKCU\Software\Microsoft\Windows\CurrentVersion\Run) modified after the suspected exploitation time — persistence mechanism commonly added post-exploitation
Tuning Guidance
Reduce false positives by filtering known-good parent processes of iexplore.exe (e.g., Windows Explorer, scheduled task hosts) and by maintaining an allowlist of internal URLs or enterprise applications that legitimately invoke IE child processes. In environments where IE is fully deprecated and replaced by Edge or Chrome, any iexplore.exe child process spawn should be treated as high-confidence. Add process lineage depth (grandparent) to detections to distinguish between user-launched IE and programmatically launched IE from automation frameworks.
Hunting Queries
Hunt for Internet Explorer making outbound connections on non-standard ports, which may indicate C2 communication established after successful exploitation of CVE-2010-0249
DeviceNetworkEvents
| where InitiatingProcessFileName =~ "iexplore.exe"
| where RemotePort !in (80, 443)
| where ActionType == "ConnectionSuccess"
| summarize count(), make_set(RemoteIP), make_set(RemoteUrl) by DeviceName, InitiatingProcessCommandLine, bin(Timestamp, 1h)
| where count_ > 0
| sort by Timestamp desc index=windows source="XmlWinEventLog:Microsoft-Windows-Sysmon/Operational" EventCode=3
| eval Image=lower(coalesce(Image, image, ""))
| where Image LIKE "%iexplore.exe"
AND NOT (DestinationPort=80 OR DestinationPort=443)
| stats count values(DestinationIp) as RemoteIPs values(DestinationPort) as Ports by host, User, Image
| sort -count Atomic Red Team Tests
Simulates the post-exploitation behavior of CVE-2010-0249 by launching Internet Explorer and immediately spawning cmd.exe as a child, mimicking what shellcode execution would do after a successful use-after-free exploit.
Command
Start-Process 'C:\Program Files\Internet Explorer\iexplore.exe' -ArgumentList 'about:blank'; Start-Sleep -Seconds 2; $ie = Get-Process iexplore | Select-Object -First 1; Start-Process cmd.exe -ArgumentList '/c whoami > C:\Windows\Temp\cve_2010_0249_test.txt' Cleanup
Stop-Process -Name iexplore -Force -ErrorAction SilentlyContinue; Remove-Item C:\Windows\Temp\cve_2010_0249_test.txt -Force -ErrorAction SilentlyContinue Expected Telemetry
Sysmon Event ID 1 showing cmd.exe with ParentImage pointing to iexplore.exe; file creation event for cve_2010_0249_test.txt in %TEMP%
Expected Detection
Alert fires on iexplore.exe → cmd.exe process lineage in KQL DeviceProcessEvents or Sysmon-based SPL query
Simulates an attacker using PowerShell as a second-stage stager after exploiting CVE-2010-0249, by launching powershell.exe as a child of iexplore.exe with a download cradle command.
Command
Start-Process 'C:\Program Files\Internet Explorer\iexplore.exe' -ArgumentList 'about:blank'; Start-Sleep -Seconds 2; Start-Process powershell.exe -ArgumentList '-NoProfile -NonInteractive -Command "Write-Output CVE-2010-0249-test-stager"' -WindowStyle Hidden Cleanup
Stop-Process -Name iexplore -Force -ErrorAction SilentlyContinue; Stop-Process -Name powershell -Force -ErrorAction SilentlyContinue Expected Telemetry
Sysmon Event ID 1 with ParentImage iexplore.exe and Image powershell.exe; command line containing -NonInteractive visible in process telemetry
Expected Detection
Alert fires on iexplore.exe → powershell.exe process chain in EQL sequence rule or Splunk SPL query
Simulates a C2 callback from an IE process to a non-standard port, mimicking post-exploitation network activity after CVE-2010-0249 shellcode execution establishes a reverse connection.
Command
Start-Process 'C:\Program Files\Internet Explorer\iexplore.exe' -ArgumentList 'about:blank'; Start-Sleep -Seconds 2; $client = New-Object System.Net.Sockets.TcpClient; try { $client.Connect('127.0.0.1', 4444) } catch {}; $client.Close() Cleanup
Stop-Process -Name iexplore -Force -ErrorAction SilentlyContinue Expected Telemetry
Sysmon Event ID 3 network connection event with InitiatingProcessFileName iexplore.exe and DestinationPort 4444; connection attempt logged even on failure
Expected Detection
Alert fires on IE non-standard port outbound connection in KQL DeviceNetworkEvents or Sysmon network event SPL query