IPBUF安全漏洞报告
English
CVE-2026-41636 CVSS 7.5 高危

CVE-2026-41636 Apache Thrift Node.js不受控递归漏洞

披露日期: 2026-04-28

漏洞信息

漏洞编号
CVE-2026-41636
漏洞类型
拒绝服务
CVSS评分
7.5 高危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
Apache Thrift

相关标签

不受控递归拒绝服务DoSApache ThriftNode.js

漏洞概述

Apache Thrift Node.js bindings 中存在不受控递归漏洞。由于缺乏对递归深度的限制,攻击者可以通过发送特制的恶意数据包触发该漏洞,导致应用程序资源耗尽或崩溃,从而造成拒绝服务。该漏洞影响 0.23.0 之前的版本,且无需认证即可通过网络进行利用。

技术细节

该漏洞源于 Apache Thrift Node.js 绑定在处理某些输入时未能正确控制递归深度。攻击者可以利用精心构造的 Thrift 数据(例如深度嵌套的结构或特定的序列化数据),触发解析器中的无限递归或过深的递归调用。由于 Node.js 的调用栈大小有限,过深的递归会导致 'Maximum call stack size exceeded' 错误,进而导致服务进程终止。CVSS 3.1 向量为 AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H,表明这是一个无需用户交互、通过网络发起的高危可用性漏洞。

攻击链分析

STEP 1
1. 侦察
攻击者扫描网络,识别使用 Apache Thrift Node.js bindings 且版本低于 0.23.0 的服务。
STEP 2
2. 武器化
攻击者构造特制的 Thrift 数据包,该数据包包含能够触发解析器无限递归或深度递归的恶意结构。
STEP 3
3. 交付
攻击者通过网络向目标服务的开放端口发送该恶意数据包。
STEP 4
4. 利用
目标服务解析数据包时,由于未限制递归深度,导致调用栈溢出(Stack Overflow)。
STEP 5
5. 影响
目标服务进程崩溃或停止响应,造成拒绝服务。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
// PoC for CVE-2026-41636: Uncontrolled Recursion in Apache Thrift Node.js // This script demonstrates how a deeply nested payload could trigger the issue. const thrift = require('thrift'); // Create a deeply nested object to simulate the malicious input function createDeepNestedObject(depth) { if (depth === 0) return {}; return { next: createDeepNestedObject(depth - 1) }; } try { // Attempting to process a structure with excessive recursion depth // This would trigger the stack overflow in vulnerable versions < 0.23.0 const maliciousPayload = createDeepNestedObject(50000); // Hypothetical serialization/deserialization function // In a real scenario, this would be passed to a Thrift processor console.log("Sending payload..."); } catch (e) { console.error("PoC execution failed (expected in patched environments):", e.message); }

影响范围

Apache Thrift < 0.23.0

防御指南

临时缓解措施
如果无法立即升级,建议在网络层(如防火墙或 WAF)限制传入 Thrift 数据包的大小和复杂度,或者在应用层对输入数据的嵌套深度进行严格校验,以防止递归过深。

参考链接

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