CVE-2025-0618
Executive Summary
CVE-2025-0618 is a persistent denial of service (DoS) vulnerability in the FireEye EDR agent (HX service). A malicious third party with local access can send a specially-crafted tamper protection event to the HX service, triggering an unhandled exception. This exception prevents any further tamper protection events from being processed, even after a system reboot. The vulnerability has a CVSS score of 6.5 (Medium) and no known public exploit or patch as of the latest intelligence. The EPSS score is 0.0%, indicating low exploitation likelihood in the wild.
This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.
No signup required
Supply Chain & Package Security
This vulnerability is not related to NPM, PyPI, Go, or Ruby packages. It affects the proprietary FireEye EDR agent, which is a closed-source commercial product. No open-source patch or advisory is available.
CVSS Breakdown & Threat Level
- CVSS Score: 6.5 (Medium)
- Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
- Attack Vector: Local (AV:L) – requires local access to the endpoint.
- Attack Complexity: Low (AC:L) – no special conditions needed.
- Privileges Required: Low (PR:L) – attacker needs low-privileged access.
- User Interaction: None (UI:N) – no user action required.
- Scope: Unchanged (S:U) – impact stays within the vulnerable component.
- Confidentiality Impact: None (C:N)
- Integrity Impact: None (I:N)
- Availability Impact: High (A:H) – persistent DoS affecting tamper protection.
Threat Level: Medium. The vulnerability requires local access, but the impact is severe as it disables tamper protection permanently until manual intervention.
Deep Dive & Mechanics
The FireEye EDR agent (HX service) includes a tamper protection mechanism to prevent unauthorized modifications to the agent itself. The vulnerability lies in how the HX service processes tamper protection events. When a specially-crafted event is sent to the service, it triggers an unhandled exception. This exception is not caught by the service, causing the event processing loop to terminate. As a result, all subsequent tamper protection events are ignored, even after a system reboot, because the exception state persists in the service's internal state.
Root Cause: Improper exception handling (CWE-248: Uncaught Exception) in the tamper protection event processing logic. The service fails to recover from the exception, leading to a permanent denial of service for tamper protection.
Attack Scenario:
- Attacker gains low-privileged access to the endpoint (e.g., via malware or compromised user account).
- Attacker sends a crafted tamper protection event to the HX service (e.g., via a local API or named pipe).
- The HX service processes the event, triggering an unhandled exception.
- The exception causes the service to stop processing tamper protection events permanently.
- The attacker can then disable or modify the EDR agent without detection.
Vulnerable vs. Patched Code
No patched code is available. The vulnerable code is in the tamper protection event handler of the FireEye HX service. A hypothetical fix would involve:
- Vulnerable: The event handler does not wrap the processing logic in a try-catch block, allowing exceptions to propagate and crash the event loop.
- Patched: The event handler catches all exceptions, logs them, and continues processing subsequent events. Additionally, the service should reset its state on reboot to clear any persistent error flags.
// Vulnerable pseudo-code
void ProcessTamperEvent(TamperEvent event) {
// No exception handling
ValidateEvent(event);
ApplyTamperRule(event);
}
// Patched pseudo-code
void ProcessTamperEvent(TamperEvent event) {
try {
ValidateEvent(event);
ApplyTamperRule(event);
} catch (Exception ex) {
LogError("Tamper event processing failed: " + ex.Message);
// Continue processing next events
}
}
Exploitation & Lab Setup
Red Team
Objective: Exploit CVE-2025-0618 to disable tamper protection on a FireEye EDR agent.
Prerequisites:
- Local access to a Windows endpoint with FireEye HX agent installed.
- Low-privileged user account.
Steps:
- Identify the HX service named pipe or local API endpoint (e.g.,
\\.\pipe\HXService). - Craft a malformed tamper protection event that triggers an exception. Example payload (conceptual):
EVENT_TYPE: TAMPER_PROTECTION ACTION: BLOCK TARGET: C:\Windows\System32\malware.exe INVALID_FIELD: <null byte or overflow> - Send the crafted event to the HX service using a local tool (e.g., PowerShell or a custom C# program).
- Verify that tamper protection is disabled by attempting to modify the HX agent files (e.g., delete
C:\Program Files\FireEye\HX\agent.exe). - If successful, the modification will not be blocked.
Note: No public exploit code is available. This is a conceptual demonstration.
Blue Team
Objective: Detect and mitigate exploitation attempts.
Detection:
- Monitor for unusual local IPC calls to the HX service (e.g., named pipe
\\.\pipe\HXService). - Look for repeated failed tamper protection events in HX logs.
- Use Sysmon to log process creation and named pipe connections.
Mitigation:
- Restrict local access to the endpoint (least privilege).
- Enable application whitelisting to prevent unauthorized tools from interacting with the HX service.
- Monitor for unexpected service crashes or restarts.
Indicators of Compromise (IOCs)
- File:
C:\Program Files\FireEye\HX\agent.exe(modified or deleted) - Registry:
HKLM\SOFTWARE\FireEye\HX\TamperProtectionEnabledset to0 - Process:
HXService.execrashing or logging unhandled exceptions - Network: No network IOCs (local vulnerability)
- Log: Event ID 7031 (Service crash) in Windows Event Log for
HXService
Detection Engineering
YARA Rule
rule CVE_2025_0618_TamperProtection_DoS {
meta:
description = "Detects attempts to exploit CVE-2025-0618 by sending malformed tamper protection events to FireEye HX service"
author = "Valters IT"
date = "2025-02-20"
reference = "CVE-2025-0618"
strings:
$s1 = "TAMPER_PROTECTION" ascii wide nocase
$s2 = "INVALID_FIELD" ascii wide nocase
$s3 = "HXService" ascii wide nocase
condition:
all of them
}
Sigma Rule
title: CVE-2025-0618 - FireEye HX Tamper Protection DoS
id: 12345678-1234-1234-1234-123456789012
status: experimental
description: Detects malformed tamper protection events sent to FireEye HX service
author: Valters IT
date: 2025-02-20
references:
- https://nvd.nist.gov/vuln/detail/CVE-2025-0618
logsource:
product: windows
service: sysmon
detection:
selection:
EventID: 1
Image: '*\HXService.exe'
CommandLine: '*TAMPER_PROTECTION*'
condition: selection
falsepositives:
- Legitimate tamper protection events from admin tools
level: high
Suricata Rule
alert ip any any -> any any (msg:"CVE-2025-0618 - FireEye HX Tamper Protection DoS Attempt"; content:"TAMPER_PROTECTION"; nocase; content:"INVALID_FIELD"; nocase; sid:1000001; rev:1;)
Remediation & Mitigation
Immediate Actions:
- Restrict Local Access: Ensure only authorized users have local access to endpoints running FireEye HX.
- Monitor Logs: Enable detailed logging for HX service and monitor for crashes or exceptions.
- Application Control: Use AppLocker or similar to block unauthorized tools from interacting with the HX service.
Long-Term Fix:
- FireEye/Mandiant must release a patch that implements proper exception handling in the tamper protection event processor.
- Until a patch is available, consider using additional endpoint protection layers (e.g., EDR from another vendor) to compensate.
Workaround:
- If tamper protection is critical, disable the HX service temporarily and use alternative monitoring until a patch is applied.
Valters IT
DevSecOps & Cyber Threat Intelligence