Security Vulnerability Report
中文
CVE-2025-12708 CVSS 6.2 MEDIUM

CVE-2025-12708

Published: 2026-03-25 20:16:22
Last Modified: 2026-03-27 18:18:08

Description

IBM Concert 1.0.0 through 2.2.0 contains hard-coded credentials that could be obtained by a local user.

CVSS Details

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

Configurations (Affected Products)

cpe:2.3:a:ibm:concert:*:*:*:*:*:*:*:* - VULNERABLE
IBM Concert 1.0.0
IBM Concert 1.0.1
IBM Concert 1.0.2
IBM Concert 2.0.0
IBM Concert 2.1.0
IBM Concert 2.2.0

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
# Proof of Concept (PoC) for CVE-2025-12708 # This script demonstrates how to search for hardcoded credentials in the application files. # Note: Actual paths and signature strings depend on the specific installation of IBM Concert. import os import re def scan_for_credentials(directory): # Common patterns that might indicate hardcoded credentials patterns = [ r'password\s*=\s*["\']?[^"\'\s]+["\']?', r'apikey\s*=\s*["\']?[^"\'\s]+["\']?', r'secret\s*=\s*["\']?[^"\'\s]+["\']?' ] print(f"[*] Scanning directory: {directory}") for root, dirs, files in os.walk(directory): for file in files: file_path = os.path.join(root, file) try: with open(file_path, 'r', errors='ignore') as f: content = f.read() for pattern in patterns: if re.search(pattern, content, re.IGNORECASE): print(f"[+] Potential hardcoded credential found in: {file_path}") # In a real scenario, the analyst would verify the context of this match break except Exception as e: continue if __name__ == "__main__": # Replace with the actual installation path of IBM Concert target_path = "/opt/ibm/concert" if os.path.exists(target_path): scan_for_credentials(target_path) else: print("[-] Target path not found. Please update the path.")

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-12708", "sourceIdentifier": "[email protected]", "published": "2026-03-25T20:16:22.067", "lastModified": "2026-03-27T18:18:08.177", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "IBM Concert 1.0.0 through 2.2.0 contains hard-coded credentials that could be obtained by a local user."}, {"lang": "es", "value": "IBM Concert 1.0.0 hasta 2.2.0 contiene credenciales codificadas de forma rígida que podrían ser obtenidas por un usuario local."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N", "baseScore": 6.2, "baseSeverity": "MEDIUM", "attackVector": "LOCAL", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "NONE", "availabilityImpact": "NONE"}, "exploitabilityScore": 2.5, "impactScore": 3.6}, {"source": "[email protected]", "type": "Primary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N", "baseScore": 5.5, "baseSeverity": "MEDIUM", "attackVector": "LOCAL", "attackComplexity": "LOW", "privilegesRequired": "LOW", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "NONE", "availabilityImpact": "NONE"}, "exploitabilityScore": 1.8, "impactScore": 3.6}]}, "weaknesses": [{"source": "[email protected]", "type": "Primary", "description": [{"lang": "en", "value": "CWE-798"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:ibm:concert:*:*:*:*:*:*:*:*", "versionStartIncluding": "1.0.0", "versionEndIncluding": "2.2.0", "matchCriteriaId": "2E37B307-BAA4-487B-958B-7354E39D7B2A"}]}]}], "references": [{"url": "https://www.ibm.com/support/pages/node/7267105", "source": "[email protected]", "tags": ["Vendor Advisory"]}]}}