CVE-2026-74757

Uncontrolled resource allocation in the mcpack2pb component in Apache bRPC (version < 1.18.0) on all platforms allows remote attackers to make the server allocate a large amount of memory via sending a crafted mcpack request with a huge array item count. Root Cause: The bRPC mcpack2pb parser trusts the item count stored in the mcpack array header without validating it against the actual payload size. The code generated by the mcpack2pb protoc plugin uses this count to preallocate memory for repeated protobuf fields via Reserve(). A malformed request declaring item_count = 0x7fffffff can force the server to preallocate about 16GB of virtual memory, which may abort the process (SIGABRT) on memory-constrained hosts. Affected Scenarios: Use a bRPC server that wires a NsheadService to UbrpcMcpack2Adaptor (the Baidu ubrpc deployment pattern) and parses requests with code generated by the mcpack2pb protoc plugin. The request body is parsed before authentication. How to Fix: (Choose one of the following options) 1. Upgrade bRPC to version 1.18.0, which fixes this issue. 2. Apply this patch: https://github.com/apache/brpc/pull/3451 Note: No matter which option you choose, you should know that the fix caps the array item count to the remaining bytes of the array payload.
Configurations

No configuration.

History

26 Oct 2026, 20:10

Type Values Removed Values Added
Summary
  • (es) Asignación descontrolada de recursos en el componente mcpack2pb de Apache bRPC (versiones anteriores a la 1.18.0) en todas las plataformas permite a atacantes remotos hacer que el servidor reserve una gran cantidad de memoria mediante el envío de una solicitud mcpack manipulada con un recuento de elementos de matriz enorme.\n\nCausa raíz:\nEl analizador mcpack2pb de bRPC confía en el recuento de elementos almacenado en el encabezado del arreglo mcpack sin validarlo contra el tamaño real de la carga útil. El código generado por el plugin mcpack2pb protoc utiliza este recuento para preasignar memoria para campos protobuf repetidos mediante Reserve(). Una solicitud malformada que declare item_count = 0x7fffffff puede obligar al servidor a preasignar aproximadamente 16?GB de memoria virtual, lo que puede abortar el proceso (SIGABRT) en hosts con recursos de memoria limitados.\n\nEscenarios afectados:\nUso de un servidor bRPC que conecta un NsheadService a UbrpcMcpack2Adaptor (el patrón de despliegue de Baidu ubrpc) y analiza solicitudes con código generado por el plugin mcpack2pb protoc. El cuerpo de la solicitud se analiza antes de la autenticación.\n\nCómo corregir:\n(Elija una de las siguientes opciones)\n1. Actualice bRPC a la versión 1.18.0, que corrige este problema.\n2. Aplique este parche: https://github.com/apache/brpc/pull/3451\n\nNota:\nIndependientemente de la opción que elija, debe saber que la corrección limita el recuento de elementos del arreglo a los bytes restantes de la carga útil del arreglo.

26 Oct 2026, 14:16

Type Values Removed Values Added
CVSS v2 : unknown
v3 : unknown
v2 : unknown
v3 : 7.5

21 Oct 2026, 12:17

Type Values Removed Values Added
New CVE

Information

Published : 2026-10-21 12:17

Updated : 2026-10-26 20:10


NVD link : CVE-2026-74757

Mitre link : CVE-2026-74757

CVE.ORG link : CVE-2026-74757


JSON object : View

Products Affected

No product.

CWE
CWE-770

Allocation of Resources Without Limits or Throttling