CVE-2024-47866CVE-2024-47866是影响Ceph分布式存储平台的拒绝服务漏洞。Ceph是一款广泛使用的分布式对象、块和文件存储解决方案,为云基础设施和企业级存储系统提供支持。该漏洞存在于Ceph的RGW(Rados Gateway)组件中,RGW是Ceph的对象存储接口,提供了与Amazon S3兼容的API。在受影响的版本(直至并包括19.2.3)中,攻击者可以通过构造特殊的HTTP请求来触发漏洞。具体而言,当使用AWS S3兼容的`x-amz-copy-source`请求头时,如果指定空字符串作为复制源内容,将导致RGW守护进程发生崩溃。这种崩溃会使得对象存储服务不可用,从而造成拒绝服务攻击。由于该漏洞无需认证即可利用,且可以通过网络远程触发,因此具有较高的安全风险。攻击者无需特殊的权限或用户交互,即可使整个存储服务瘫痪,对业务连续性造成严重影响。截至披露时,官方尚未发布修复版本。
该漏洞的技术根源在于Ceph RGW处理AWS S3兼容API请求时的输入验证缺陷。当RGW收到带有`x-amz-copy-source`头的PUT对象请求时,如果该头部的值被设置为空字符串,RGW的内部处理逻辑会在解析和处理这个空字符串时出现异常。具体来说,RGW在尝试执行对象复制操作时,会调用底层的RADOS库来处理源对象,但由于源对象路径被设置为空字符串,导致内存访问错误或断言失败,最终造成守护进程崩溃。攻击者可以利用任何能够发送HTTP请求的工具(如curl)来触发此漏洞,无需任何身份认证。攻击流程包括:构造包含`x-amz-copy-source`头的PUT请求,将该头的值设为空字符串或无效路径,发送到目标RGW端点。服务器在处理该请求时会立即崩溃,需要重启服务才能恢复。这是一种典型的资源耗尽型DoS漏洞,攻击成功后会使得所有依赖该存储服务的应用受到影响。