CVE-2026-97705
Received Received - Intake

Denial of Service in Moleculer Framework

Vulnerability report for CVE-2026-97705, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-11-04

Last updated on: 2026-11-04

Assigner: GitHub, Inc.

Description

Moleculer is a progressive microservices framework for Node.js. Prior to 0.14.36 and 0.15.2, Parser._write in src/transporters/tcp/parser.js used Buffer.prototype.readInt32BE to read a signed packet length, so a remote unauthenticated peer could supply a negative value that caused packet.slice(length) to return the unchanged buffer while the while (packet.length > 0) loop continued indefinitely. The synchronous loop blocked the Node.js event loop and made every service in the process unresponsive until restart. The TCP transporter must be enabled and reachable, and neither CRC validation nor maxPacketSize prevents the malformed length value. This issue is fixed in versions 0.14.36 and 0.15.2.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-11-04
Last Modified
2026-11-04
Generated
2026-11-04
AI Q&A
2026-11-04
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Showing 2 associated CPEs
Vendor Product Version / Range
moleculerjs moleculer >= 0.15.0, < 0.15.2
moleculerjs moleculer < 0.14.36

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-835 The product contains an iteration or loop with an exit condition that cannot be reached, i.e., an infinite loop.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

CVE-2026-97705 is a Denial of Service (DoS) vulnerability in the Moleculer framework affecting versions before 0.14.36 and 0.15.2. It occurs in the TCP transporter's packet parser where a crafted TCP packet with a negative length field triggers an infinite synchronous loop. This blocks the Node.js event loop, making the entire process unresponsive until a restart.

Detection Guidance

Monitor for unresponsive services or blocked event loops on nodes using Moleculer's TCP transporter. Check for processes consuming excessive CPU due to infinite loops. Use network traffic analysis tools like tcpdump or Wireshark to inspect TCP packets sent to Moleculer's TCP transporter port for malformed length fields.

Impact Analysis

An unauthenticated remote attacker can send a single ~10-byte crafted packet to the TCP transporter's port, causing the Node.js event loop to hang. This disrupts all services in the affected process, requiring a forced restart. The attack is possible from any host on the same network segment.

Mitigation Strategies

Upgrade Moleculer to version 0.14.36, 0.15.2, or later. If immediate upgrade is not possible, disable the TCP transporter or restrict access to its port via firewall rules. Monitor for suspicious network traffic targeting the TCP transporter port.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-97705. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart

Security Radar

News mentioning this vulnerability
Loading related security news...