提交 #904600: kvcache-ai Mooncake >= 0.3.4, <= 0.3.12 Authorization Bypass信息

标题kvcache-ai Mooncake >= 0.3.4, <= 0.3.12 Authorization Bypass
描述Mooncake Store Master does not verify that the supplied `client_id` owns the supplied `segment_id` before processing the immediate `UnmountSegment(segment_id, client_id)` RPC. A network peer that can reach the Master RPC endpoint can therefore submit a victim's segment ID with an attacker-controlled client ID. The Master removes the victim segment's allocator, cleans related object-replica metadata, and erases the victim segment from the global mount table. The newer `GracefulUnmountSegment` path explicitly checks this ownership relationship and rejects the same cross-client request. The immediate path does not. In Mooncake v0.3.12, the Master admin HTTP endpoint `GET /get_segments_detail` discloses the identifiers needed for exploitation. Its handler returns every registered `segment_id` and `client_id` without performing an authentication check. By default, the Master binds RPC to `x.x.x.x` on port `50051` and starts the admin HTTP server on port `9003`. When both control-plane ports are reachable, these behaviors form an unauthenticated cross-client segment-deletion chain. The core cross-client unmount behavior was dynamically reproduced with the `mooncake-transfer-engine==0.3.11.post1` wheel. The same vulnerable path and the identifier-disclosure endpoint were confirmed by source inspection in v0.3.12. The vulnerable path was also present in the `main` branch at commit `a1ca71f42a2c7fc708d74d5314bf576dfde9ad8f`, inspected on 2026-07-24. The complete v0.3.12 HTTP-to-RPC chain has not been rerun dynamically.
来源⚠️ https://gist.github.com/yyymk/76d099537af0e661dd01eacc82b9a7ea
用户
 YYYMK (UID 100105)
提交2026-07-24 20時11分 (2 月前)
管理2026-09-23 18時01分 (2 months later)
状态已接受
VulDB条目409016 [kvcache-ai mooncake 直到 0.3.12/0.3.13.post1 RPC Path UnmountSegment client_id/segment_id 权限提升]
积分20

Interested in the pricing of exploits?

See the underground prices here!