Skip to main content

Checkmk CVE-2025-39663

HIGH
Basic XSS (CWE-80)
2025-10-30 security@checkmk.com
8.5
CVSS 4.0 · Vendor: checkmk
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Compromise or control remote monitoring site
  2. Delivery
    Inject malicious HTML into service output
  3. Exploit
    Output replicated to central site
  4. Execution
    Central-site user views service view
  5. Persist
    Script executes in admin browser session
  6. Impact
    Hijack session / act as central user

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization HTML tag escaping
MITRE ATT&CK

1 technique across 1 tactic: Initial Access

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires a Checkmk deployment running in distributed monitoring mode with at least one remote site, and the attacker must already control or have compromised a remote site (reflected as PR:H) so it can emit crafted service output. The payload only fires when a user on the central site passively views the affected service output (UI:P). Limiting factors: single-site/standalone Checkmk installations are not affected; the attacker needs a privileged foothold on a remote site rather than mere network reach; and a central-site operator must actually open the poisoned view. End-of-life 2.1.0 receives no fix, so those deployments remain exposed.

Impact

This is a stored/transmitted Cross-Site Scripting flaw (CWE-80) specific to Checkmk's distributed monitoring topology, where a compromised remote site injects malicious HTML into service outputs that render in the central site. The vendor CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:H/UI:P/VC:H/VI:H/VA:H) yields 8.5 (High), but the real-world risk is gated by two significant preconditions baked into the vector itself: PR:H means the attacker must already control/compromise a remote monitoring site (a privileged position in the distributed hierarchy), and UI:P means a central-site user must passively view the poisoned service output for the payload to fire. Publicly available exploit code exists (SBA Research advisory and a Full Disclosure post), which raises the practical threat, but this is NOT listed in CISA KEV and no EPSS probability was supplied, so there is no evidence of active or widespread exploitation - the POC signal and the active-exploitation signal are distinct and only the former is present. Net: a genuine, patch-worthy High for organizations running distributed Checkmk where remote sites may be less trusted, but the PR:H precompromise requirement makes this a lateral-movement/trust-boundary issue rather than an internet-facing unauthenticated drive-by, so it should rank below any remote-unauthenticated RCE in triage. Note the VC:H/VI:H/VA:H impact rating is aggressive for an XSS and appears to assume full central-site account takeover; availability impact in particular is questionable for a scripting flaw.

Exploit ScenarioDerived

An attacker who has compromised or operates a remote Checkmk monitoring site configures a monitored service to return output containing malicious HTML/JavaScript. When an administrator or operator on the trusted central site opens the affected service view, the injected script executes in their authenticated browser session, enabling session/credential theft or actions in the central UI. A public proof-of-concept for this injection is available from SBA Research and Full Disclosure.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
No patch listed yet 0.6% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 19, 2026

Stored/transmitted cross-site scripting in Checkmk's distributed monitoring lets an attacker who already controls a remote site inject malicious HTML into service output that is then rendered in the central site's GUI. The flaw affects Checkmk releases before 2.4.0p14 and before 2.3.0p39, plus the 2.2.0 line and end-of-life 2.1.0; single-site (standalone) installations are not exposed because no remote-site data is rendered. Attackers need a privileged foothold on a remote site (CVSS PR:H) and a central-site user must passively view the poisoned service output (UI:P), but successful rendering gives high confidentiality and integrity impact within the central site's browser context; publicly available exploit code exists (SBA-ADV-20250729-01), though no confirmed active exploitation was identified at time of analysis.

RemediationAI

Vendor-released patch: upgrade to Checkmk 2.4.0p14 or 2.3.0p39 (per https://checkmk.com/werk/17998); the CPE data showing every 2.3.0 patch level from the base release through p16 as vulnerable confirms those builds are below the fixed threshold. The 2.1.0 branch is end-of-life and receives no fix, so those deployments must upgrade into a supported branch or be retired. For installations that cannot patch immediately, treat every remote site as a trusted component: do not run distributed monitoring across a trust boundary where a remote site can be compromised by a lower-privileged party, and restrict which hosts may connect as remote sites to the central site's Livestatus/agent-receiver ports (trade-off: this breaks distributed topologies spanning untrusted networks and requires static address planning). Harden and monitor the remote sites as if they were central-site-equivalent assets, since a compromised remote site is the prerequisite for this attack (trade-off: extra administrative overhead with no code change). Because the payload needs a central-site user to open the poisoned service view, restricting GUI access to trusted operators and enforcing short session lifetimes reduces blast radius but does not remove the flaw (trade-off: reduced operational convenience). Central-site administrators can also audit service output for unexpected HTML markup as a detection measure.

Affects your stack

Find out whether the stacks and servers you run are on an affected version.

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

CWE-80 (improper neutralization of script-related HTML tags in a web page) is the 'basic XSS' variant: the application fails to escape HTML/script markup before embedding attacker-influenced text in a page. In Checkmk's distributed monitoring architecture a central site aggregates monitoring results from one or more remote sites, typically over the Livestatus/Multisite data path, and service output fields (plugin output, long output, perfdata) originate on the remote site. Because that remote-supplied text is rendered into the central site's web UI without adequate HTML sanitization, a compromised remote site can emit crafted markup that executes in the browser of a central-site operator who merely opens the affected service view. The trust boundary that is supposed to exist between the central and remote sites is therefore not enforced for rendered output, so compromising the lower-trust remote site yields script execution in the higher-value central site's session. The supplied CPE data (cpe:2.3:a:checkmk:checkmk:*:*:*:*:*:*:*:* plus explicit 2.3.0 base and patch levels p1 through p16) confirms the 2.3.0 branch is in scope, and the fix thresholds place remediation at 2.3.0p39 and 2.4.0p14.

Know when Checkmk gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (checkmk) PRIMARY 8.5 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
vuln.today AI 8.1 HIGH

PR:H because the attacker must control a compromised remote site; UI:R and S:C are inherent to XSS firing in a viewer's browser; A:N as a scripting flaw does not impair availability.

3.1 AV:N/AC:L/PR:H/UI:R/S:C/C:H/I:H/A:N
4.0 AV:N/AC:L/AT:N/PR:H/UI:P/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (checkmk).

CVSS VectorVendor: checkmk

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
High
User Interaction
Passive
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
High
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

Cross-Site Scripting (XSS) vulnerability in Checkmk's distributed monitoring allows a compromised remote site to inject malicious HTML code into service outputs in the central site. Affecting Checkmk before 2.4.0p14, 2.3.0p39, 2.2.0 and 2.1.0 (eol).

Executive ViewAI

Why It Matters

Checkmk distributed monitoring contains a high-severity stored/transmitted cross-site scripting flaw (CVE-2025-39663) that can let an authenticated attacker with privileged access on a remote site inject malicious content into service output rendered in a central site's GUI; publicly available exploit code exists. Single-site installations are not exposed, but organizations using distributed monitoring should care because successful rendering can compromise confidentiality and integrity within central-site browser sessions and potentially target monitoring administrators. Leadership should prioritize inventory, privileged-access review, and vendor-confirmed remediation for affected Checkmk deployments.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis; interim mitigations include restricting and auditing privileged access to remote sites, limiting distributed monitoring to trusted sites, disabling or tightly controlling central-site rendering of remote-site service output where feasible, and upgrading to Checkmk 2.4.0p14 or 2.3.0p39 once vendor-confirmed.

Threat Intelligence Overview

EPSS Score
0.6%
Top 52% exploitable
Prevalence
Medium
popular enterprise IT/infrastructure monitoring tool, common but not ubiquitous
Exploit
POC
Public exploit code exists
Data Quality
3 sources
Confidence: Low

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC Yes
EPSS 0.6%
Patch available No
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
Poc
System Exposure· derived
Open
Automatable· derived
No
Human Impact
High

Priority Score

63
Low Medium High Critical
KEV: 0
EPSS: +1
CVSS: +42
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.

Affected Products (CPE)CVE.org

cpe:2.3:a:checkmk:checkmk:*:*:*:*:*:*:*:*
cpe:2.3:a:checkmk:checkmk:2.3.0:-:*:*:*:*:*:*
cpe:2.3:a:checkmk:checkmk:2.3.0:p1:*:*:*:*:*:*
cpe:2.3:a:checkmk:checkmk:2.3.0:p10:*:*:*:*:*:*
cpe:2.3:a:checkmk:checkmk:2.3.0:p11:*:*:*:*:*:*
cpe:2.3:a:checkmk:checkmk:2.3.0:p12:*:*:*:*:*:*
cpe:2.3:a:checkmk:checkmk:2.3.0:p13:*:*:*:*:*:*
cpe:2.3:a:checkmk:checkmk:2.3.0:p14:*:*:*:*:*:*
cpe:2.3:a:checkmk:checkmk:2.3.0:p15:*:*:*:*:*:*
cpe:2.3:a:checkmk:checkmk:2.3.0:p16:*:*:*:*:*:*
cpe:2.3:a:checkmk:checkmk:2.3.0:p17:*:*:*:*:*:*
cpe:2.3:a:checkmk:checkmk:2.3.0:p18:*:*:*:*:*:*
cpe:2.3:a:checkmk:checkmk:2.3.0:p19:*:*:*:*:*:*
cpe:2.3:a:checkmk:checkmk:2.3.0:p2:*:*:*:*:*:*
cpe:2.3:a:checkmk:checkmk:2.3.0:p20:*:*:*:*:*:*
cpe:2.3:a:checkmk:checkmk:2.3.0:p21:*:*:*:*:*:*
cpe:2.3:a:checkmk:checkmk:2.3.0:p22:*:*:*:*:*:*
cpe:2.3:a:checkmk:checkmk:2.3.0:p23:*:*:*:*:*:*
cpe:2.3:a:checkmk:checkmk:2.3.0:p24:*:*:*:*:*:*
cpe:2.3:a:checkmk:checkmk:2.3.0:p25:*:*:*:*:*:*
+ 33 more
CVE-2017-14955 MEDIUM POC
5.9 Oct 02

Check_MK before 1.2.8p26 mishandles certain errors within the failed-login save feature because of a race condition, whi

CVE-2021-40904 HIGH POC
8.8 Mar 25

The web management console of CheckMK Raw Edition (versions 1.5.0 to 1.6.0) allows a misconfiguration of the web-app Dok

CVE-2021-40905 HIGH POC
8.8 Mar 25

The web management console of CheckMK Enterprise Edition (versions 1.5.0 to 2.0.0p9) does not properly sanitise the uplo

CVE-2024-28825 CRITICAL
9.8 Apr 24

Improper restriction of excessive authentication attempts on some authentication methods in Checkmk before 2.3.0b5 (beta

CVE-2021-36563 MEDIUM POC
5.4 Jul 26

The CheckMK management web console (versions 1.5.0 to 2.0.0) does not sanitise user input in various parameters of the W

CVE-2025-39666 CRITICAL
9.3 Apr 07

Local privilege escalation in Checkmk allows site users with high privileges to escalate to root by manipulating site co

CVE-2024-8606 CRITICAL
9.2 Sep 23

Bypass of two factor authentication in RestAPI in Checkmk < 2.3.0p16 and < 2.2.0p34 allows authenticated users to bypass

CVE-2023-31211 HIGH
8.8 Jan 12

Insufficient authentication flow in Checkmk before 2.2.0p18, 2.1.0p38 and 2.0.0p39 allows attacker to use locked credent

CVE-2025-32918 HIGH
8.8 Jul 04

A security vulnerability in autocomplete endpoint within the RestAPI of Checkmk (CVSS 8.8) that allows an authenticated

CVE-2023-6735 HIGH
8.8 Jan 12

Privilege escalation in mk_tsm agent plugin in Checkmk before 2.2.0p18, 2.1.0p38 and 2.0.0p39 allows local user to escal

CVE-2023-6740 HIGH
8.8 Jan 12

Privilege escalation in jar_signature agent plugin in Checkmk before 2.2.0p18, 2.1.0p38 and 2.0.0p39 allows local user t

CVE-2024-28828 HIGH
8.8 Jul 10

Cross-Site request forgery in Checkmk < 2.3.0p8, < 2.2.0p29, < 2.1.0p45, and <= 2.0.0p39 (EOL) could lead to 1-click com

References

Advisories & patches

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy