CVE-2026-32941Sliver是一个命令与控制(C2)框架,其1.7.3及以下版本中存在严重的远程内存耗尽(OOM)漏洞。该漏洞位于Sliver C2服务器的mTLS和WireGuard C2传输层。攻击者可通过已植入的代理或有效凭证,利用并发yamux流发送伪造的长度前缀数据包。由于服务器信任攻击者控制的长度前缀进行内存分配,攻击者可诱导服务器尝试分配约256 GiB的巨大内存,从而触发操作系统的OOM Killer机制,导致服务器崩溃及所有活动会话中断。
该漏洞的核心原因在于Sliver C2服务器中的`socketReadEnvelope`和`socketWGReadEnvelope`函数未对输入数据包的长度前缀进行充分验证。这两个函数直接使用攻击者可控的4字节长度前缀来申请内存,且配置中的`ServerMaxMessageSize`允许单次分配高达约2 GiB的内存。攻击者利用合法的身份验证建立连接后,可通过单个连接开启多达128个并发的yamux流,并在每个流中发送伪造的大数值长度前缀。这种并发攻击会迫使服务器尝试分配总计约256 GiB的内存,迅速耗尽系统资源,导致操作系统强制杀死Sliver服务进程,造成拒绝服务。此外,客户端植入程序的读取器也存在无上限检查的问题。