Intel

AIKIDO-2026-826894

buffa-descriptor is vulnerable to Uncontrolled Resource Consumption

Uncontrolled Resource Consumption Pre-CVE
Found by Aikido Intel before public disclosure or CVE publication.
Published 6 days ago

53

Medium Risk

This Affects:

RUSTbuffa-descriptor
0.7.0 - 0.8.1
Fixed in 0.9.0
Are you affected? Scan for Free

TL;DR

The reflective DynamicMessage decoder in buffa-descriptor materializes the elements of repeated fields and map entries without bounding the memory they consume. An attacker who supplies a small protobuf payload containing many empty repeated-message, string, bytes, or map elements can force the decoder to allocate far more memory than the input size, because each element expands to its full in-memory footprint on decode. Before the fix no decode option bounded this in-decode expansion, so untrusted input could exhaust process memory. The fix adds a per-decode element-memory budget (DecodeOptions::with_element_memory_limit, default 32 MiB) that charges each materialized element and rejects over-budget input with DecodeError::ElementMemoryLimitExceeded.

Who does this affect?

You are affected if you are using a version that falls within the vulnerable range and decode untrusted protobuf input using the reflective DynamicMessage decoder.

Background info

buffa-descriptor is vulnerable to Uncontrolled Resource Consumption in versions 0.7.0 - 0.8.1.

How to fix this

Upgrade the buffa-descriptor library to the patch version.