A significant vulnerability has been identified in the Checkmk Windows agent, posing a high risk for organizations using it for IT monitoring. Tracked as CVE-2024-0670, this flaw allows for local privilege escalation and has been assigned a “High” severity rating with a CVSS score of 8.8.
If your organization uses Checkmk to monitor Windows systems, this is a vulnerability that needs your immediate attention. Here’s a breakdown of the risk and the necessary steps for mitigation.
What is CVE-2024-0670?
CVE-2024-0670 is a privilege escalation vulnerability that specifically affects the Checkmk agent plugin for Windows.
The key takeaway is that this flaw allows a local, unprivileged attacker to execute code with SYSTEM privileges—the highest level of authority on a Windows machine. While this is not a remote vulnerability (meaning the attacker must already have a foothold on the machine), it is a critical flaw for turning minor access into a full system compromise.
How Does the Attack Work?
The vulnerability is rooted in an “Uncontrolled Search Path Element” (CWE-427). The attack unfolds as follows:
- Attacker’s Foothold: An attacker first gains low-privilege access to a Windows server or workstation that is being monitored by an affected Checkmk agent.
- Planting the Trap: The attacker observes that the Checkmk agent process creates and executes temporary files in a public-writable directory,
C:\Windows\Temp. The filenames for these temporary files are predictable. - The Bait: The attacker places a malicious file (e.g., a
.exeor.cmdfile) inC:\Windows\Temp, naming it to match a filename the Checkmk agent is expected to create and execute. - The Exploit: When a Checkmk agent process (like an update or repair) is triggered, it runs with
SYSTEMprivileges. It finds the attacker’s pre-placed malicious file in the temporary directory and executes it, believing it to be a legitimate temporary file. - Full Compromise: The attacker’s code is now running with full
SYSTEMprivileges, allowing them to disable security software, steal data, install ransomware, or create a persistent backdoor.
What’s the Impact?
A CVSS score of 8.8 underscores the severity. The high score is driven by:
- Attack Vector (Local): An attacker must be on the local machine.
- Attack Complexity (Low): The exploit is relatively simple to perform.
- Privileges Required (Low): The attacker starts with a low-privilege account.
- User Interaction (None): The exploit requires no action from a user.
- Impact (High): The attack results in a complete loss of confidentiality, integrity, and availability for the compromised system.
This vulnerability is the perfect tool for an attacker to move from a minor beachhead to full control of a critical server.
Who is Affected?
This vulnerability affects multiple versions of the Checkmk Windows agent. According to the advisory, the following versions are vulnerable:
- Checkmk versions before 2.2.0p23
- Checkmk versions before 2.1.0p40
- All versions of Checkmk 2.0.0 (which is End of Life)
How to Protect Your Systems
The solution is to update your Checkmk agents to a patched version immediately.
The fixed versions are:
- Checkmk 2.2.0p23 (or later)
- Checkmk 2.1.0p40 (or later)
If you are using any version of Checkmk 2.0.0, you are strongly urged to upgrade to a supported and patched version (2.1 or 2.2), as the 2.0.0 branch is End of Life and will not receive security fixes.
Recommended Steps:
- Identify Vulnerable Assets: Use your Checkmk console or an asset inventory system to identify all Windows hosts running vulnerable versions of the agent.
- Deploy Patches: Roll out the updated agent versions (2.2.0p23+ or 2.1.0p40+) to all affected systems.
- Upgrade EOL Versions: Make a plan to migrate any hosts still on the 2.0.0 agent to a supported release branch.
Do not underestimate a local privilege escalation flaw. In today’s layered security landscape, it’s often the key that attackers use to turn a small incident into a major breach.








