☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
Checkmk gmbh logo [ WEBSITE ] [ VENDOR STATS ]
CVSS: 2.7 CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:U/C:L/I:N/A:N 🐛 CWE-532
👁️
Common Weakness Enumeration - Identifies the specific category of software weakness or flaw.

CVE-2024-28830

CVE-2024-28830 Privilege Escalation in Checkmk gmbh
📅 PUBLISHED: 2024-06-26 07:56 UTC 🔄 UPDATED: 2026-08-21 19:36 UTC
[ PATCH UNDER REVIEW ↓ ] Remains UNDER REVIEW until an independent source confirms the fix
[ DEFENSE PATCH ↓ ]
💣 PoC: None
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.28%
👁️
0.28% probability
7.1× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1552.001
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
Country: Germany License: Freemium
VULNERABLE: version not auto-detected — verify your deployed version locally
CVSS VECTOR BREAKDOWN 2.7
AV: L Attack Vector Local
AC: H Attack Complexity High
PR: H Privileges Required High
UI: N User Interaction None
S: U Scope Unchanged
C: L Confidentiality Low
I: N Integrity None
A: N Availability None
2.7
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2024-28830 is a low-severity information disclosure vulnerability affecting Checkmk, an IT monitoring solution. The flaw resides in the audit logging mechanism, where automation user secrets (passwords or tokens) are inadvertently written to log files. While the CVSS score is low (2.7) due to the high privileges required (administrator access) and the local attack vector, the exposure of automation credentials can lead to lateral movement or privilege escalation within a monitored environment. The vulnerability impacts all Checkmk versions prior to the specified patches, with version 2.0.0 being End-of-Life and unsupported.

This vulnerability is not related to a WordPress plugin or component; it is a standalone enterprise monitoring application.

⚡ AUTOMATE YOUR CVE INTELLIGENCE

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.

›Patch confidence — UNVERIFIED to CONFIRMED, cross-referenced NVD + RHSA + Debian
›Exploit & PoC — poc_status, poc_url, has_exploit. Not in NVD.
›Shodan dorks — ready-made queries to find exposed vulnerable systems
›Detection rules — YARA · Wazuh · Elastic (all plans) · Sigma (Pro)
›pending_fields — know exactly which of 7 fields NVD hasn't processed yet
›Free backfill — data incomplete when you paid? Re-check within 30 days = 0 credits
PAYG €0.08/lookup Standard €19/mo (was €29) · 5k credits Pro €65/mo (was €99) · 20k credits FOUNDING PRICE · LOCKED FOR LIFE · ENDS 31 DEC 2026
[ FROM €19/MO ]
Free sandbox key available
No signup required

Supply Chain & Package Security

This vulnerability is not in an NPM, PyPI, Go, or Ruby package. It is a proprietary software vulnerability in Checkmk. No supply chain package security implications are directly associated with this CVE.

CVSS Breakdown & Threat Level

  • CVSS Score: 2.7 (Low)
  • Vector: CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:U/C:L/I:N/A:N
  • Attack Vector (AV): Local (L) – The attacker must have local access to the system.
  • Attack Complexity (AC): High (H) – Exploitation requires knowledge of the log file location and the ability to parse it.
  • Privileges Required (PR): High (H) – The attacker must already have administrative privileges on the Checkmk server.
  • User Interaction (UI): None (N) – No user interaction is required beyond the attacker's actions.
  • Scope (S): Unchanged (U) – The vulnerability does not affect resources beyond the vulnerable component.
  • Confidentiality (C): Low (L) – Only automation user secrets are exposed, not all data.
  • Integrity (I): None (N) – No data integrity is compromised.
  • Availability (A): None (N) – No impact on system availability.

Threat Level: Low. The high privileges required significantly reduce the likelihood of exploitation by external attackers. However, for an insider threat or a compromised administrator account, this vulnerability provides a direct path to harvesting automation credentials.

Deep Dive & Mechanics

The vulnerability is a classic case of CWE-532: Insertion of Sensitive Information into Log File. Checkmk's audit log functionality is designed to record administrative actions for compliance and troubleshooting. However, when an administrator creates or modifies an automation user (a service account used for API access or automated tasks), the plaintext secret (password or token) is included in the audit log entry.

The audit log is typically stored in a file (e.g., var/log/checkmk/audit.log) or a database table. An administrator with access to this log can read the secrets of all automation users. This is particularly dangerous because automation users often have elevated privileges (e.g., full API access) and are not subject to password rotation policies applied to human users.

The flaw exists in the logging function that handles user creation/modification events. Instead of sanitizing the secret field (e.g., replacing it with [REDACTED]), the raw value is written to the log.

Vulnerable vs. Patched Code

The vulnerable code is in the audit logging module. The exact file and function depend on the Checkmk version, but the pattern is consistent.

Vulnerable Code (Pseudocode):

def log_user_creation(username, secret):
    log_entry = f"User '{username}' created with secret: {secret}"
    write_to_audit_log(log_entry)

Patched Code (Pseudocode):

def log_user_creation(username, secret):
    log_entry = f"User '{username}' created with secret: [REDACTED]"
    write_to_audit_log(log_entry)

The patch simply replaces the actual secret value with a placeholder string [REDACTED] before writing to the log.

Exploitation & Lab Setup

Red Team

Prerequisites:

  • Administrative access to the Checkmk server (e.g., via SSH or web UI).
  • Knowledge of the audit log file location.

Exploitation Steps:

  1. Access the Checkmk server: Use an existing administrator account to SSH into the server or access the web UI.
  2. Locate the audit log: The default location is /omd/sites/[SITE_NAME]/var/log/checkmk/audit.log.
  3. Extract secrets: Use grep to find automation user creation events.
    grep -i "automation" /omd/sites/[SITE_NAME]/var/log/checkmk/audit.log
    
  4. Parse the log: Look for lines containing secret: or password:.
    grep -E "(secret|password):" /omd/sites/[SITE_NAME]/var/log/checkmk/audit.log
    
  5. Use the secrets: The extracted credentials can be used to authenticate as the automation user via the Checkmk API, potentially gaining access to all monitored hosts.

Lab Setup:

  • Install a vulnerable version of Checkmk (e.g., 2.2.0p27) in a virtual machine.
  • Create an automation user via the web UI (Setup > Users > Automation > Add user).
  • Check the audit log to confirm the secret is visible.
  • Upgrade to the patched version and repeat the process to verify the secret is redacted.

Blue Team

Detection:

  • Monitor for unauthorized access to the audit log file.
  • Alert on any grep or cat commands targeting the audit log from non-standard users.
  • Use file integrity monitoring (FIM) to detect reads of the audit log.

Hunting:

  • Search for audit log entries containing plaintext secrets.
  • Look for patterns like secret: [^ ]+ or password: [^ ]+ in the log files.

Prevention:

  • Restrict access to the Checkmk server to only necessary personnel.
  • Implement strict access controls on the audit log file (e.g., chmod 600).
  • Use a SIEM to correlate audit log access with other suspicious activities.

Indicators of Compromise (IOCs)

  • File Path: /omd/sites/[SITE_NAME]/var/log/checkmk/audit.log
  • Log Entry Pattern: User 'automation_user' created with secret: <plaintext_secret>
  • Network Traffic: Unusual API calls using automation user credentials (e.g., from unexpected IPs).
  • Process: grep or cat commands targeting the audit log file.

Detection Engineering

YARA Rule

rule CVE_2024_28830_Checkmk_Secret_Leak {
    meta:
        description = "Detects Checkmk audit log entries containing plaintext automation secrets"
        author = "Valters IT"
        date = "2024-10-27"
        reference = "CVE-2024-28830"
        severity = "medium"
    strings:
        $secret_pattern = /secret:\s*\S+/ nocase
        $password_pattern = /password:\s*\S+/ nocase
        $user_created = "created with" nocase
    condition:
        all of ($user_created, $secret_pattern or $password_pattern)
}

Sigma Rule

title: Checkmk Audit Log Secret Exposure
id: 8a9b7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d
status: experimental
description: Detects access to Checkmk audit log files containing automation secrets
author: Valters IT
date: 2024/10/27
references:
    - https://nvd.nist.gov/vuln/detail/CVE-2024-28830
logsource:
    category: process_creation
    product: linux
detection:
    selection:
        Image|endswith:
            - '/grep'
            - '/cat'
            - '/less'
            - '/more'
            - '/tail'
            - '/head'
        CommandLine|contains:
            - 'audit.log'
            - 'checkmk'
    condition: selection
falsepositives:
    - Legitimate administrative tasks
level: medium

Suricata Rule

alert http $HOME_NET any -> $EXTERNAL_NET any (msg:"CVE-2024-28830 Checkmk Secret Exfiltration"; flow:to_server,established; content:"/checkmk/api/"; http_uri; content:"Authorization"; http_header; pcre:"/automation_secret_[A-Za-z0-9]+/"; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Upgrade Checkmk: Apply the latest patches for your version:
    • Upgrade to 2.3.0p7 or later.
    • Upgrade to 2.2.0p28 or later.
    • Upgrade to 2.1.0p45 or later.
    • If using 2.0.0, upgrade to a supported version immediately (2.0.0 is EOL).
  2. Rotate Automation Secrets: After patching, rotate all automation user secrets to invalidate any that may have been exposed.
  3. Audit Log Review: Examine existing audit logs for any exposed secrets. If found, assume they are compromised and rotate them.

Long-Term Mitigations:

  • Implement strict access controls on the Checkmk server.
  • Use a centralized logging solution (SIEM) that can redact sensitive data.
  • Regularly review and rotate automation user credentials.
  • Monitor for unauthorized access to log files.

Valters IT Signature This report was generated by Valters IT DevSecOps AI. For questions, contact security@valters-it.com.

👁️ SHODAN DORKS (THREAT HUNTING)

What is this? Security researchers use these exact search queries on Shodan.io (a search engine for internet-connected devices) to find vulnerable systems globally. You can copy these dorks to see if your organization's IP space is exposed.

Checkmk
Check_MK
checkmk
◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2024-28830/ · CVE data: NVD/MITRE (public domain) · © 2026 ValtersIT Hub
>_ SYSTEM_CORE: INTEL_ACTIVE
90% TEAM-CURATED // 10% AUTOMATED INGESTION.
ALL PATCH REFERENCES AND VERSION DATA SOURCED FROM NVD + OSV OFFICIAL REGISTRIES.