Apollo 路由器协处理器在处理请求主体时可能导致拒绝服务(CVE-2024-43783)
CVE编号
CVE-2024-43783利用情况
暂无补丁情况
N/A披露时间
2024-08-28漏洞描述
Apollo Router Core是一个可配置的高性能图路由器,采用Rust编写,用于运行使用Apollo Federation 2的联邦超图。对于运行版本在>=1.21.0和< 1.52.1之间的Apollo Router实例,如果满足以下条件,则会受到拒绝服务漏洞的影响:1. Apollo Router已配置为支持外部协处理(External Coprocessing)。2. Apollo Router已配置为向协处理器发送请求正文。这是一种非默认配置,必须由管理员有意配置。对于运行版本在>=1.7.0和< 1.52.1之间的Apollo Router实例,如果满足以下条件,则会受到拒绝服务漏洞的影响:1. 路由器已配置为使用自定义开发的Native Rust插件。2. 该插件在RouterService层访问Request.router_request。3. 您正在将Request.router_request中的正文累积到内存中。如果使用受影响的配置,路由器会将整个HTTP请求正文加载到内存中,而不考虑其他HTTP请求大小限制配置(如limits.http_max_request_bytes)。如果发送到路由器的请求足够大,这可能导致路由器因内存不足(OOM)而终止。默认情况下,路由器将limits.http_max_request_bytes设置为2MB。如果具有上述定义的受影响配置,请升级到至少Apollo Router 1.52.1。如果不能升级,可以通过将coprocessor.router.request.body配置项设置为false来缓解针对外部协处理器的拒绝服务机会。请注意,更改此配置选项将更改发送到您的协处理器的信息,并可能影响这些协处理器的功能实现。如果您开发了Native Rust插件且无法升级,可以更新您的插件,不要累积请求正文或强制执行最大正文大小限制。也可以通过在路由器之前(例如在代理或Web应用防火墙设备中)限制HTTP正文有效负载大小来缓解此问题。解决建议
"将组件 apollo-router 升级至 1.52.1 及以上版本"- 攻击路径 N/A
- 攻击复杂度 N/A
- 权限要求 N/A
- 影响范围 N/A
- 用户交互 N/A
- 可用性 N/A
- 保密性 N/A
- 完整性 N/A
CWE-ID | 漏洞类型 |
Exp相关链接

版权声明
本站原创文章转载请注明文章出处及链接,谢谢合作!
评论