metadata
tags:
- security
- proof-of-concept
- protobuf
license: mit
Protocol Buffers MetricDescriptor monitored_resource_types materialization DoS PoC
This repository contains a benign security research PoC for a protobuf binary
artifact that drives large repeated-string materialization during
google.api.metric_pb2.MetricDescriptor.ParseFromString(...).
Files:
control_one_display_name.pbmalicious_monitored_resource_types_6000000.pbreproduce.py
Observed behavior:
- control artifact:
- parses successfully with zero
monitored_resource_types
- parses successfully with zero
- malicious artifact:
- both files are
12,000,000bytes - parses successfully with
6,000,000monitored_resource_typesentries - increases peak RSS by about
213988 kBin local clean-process replay - takes about
15.42xthe control parse time
- both files are
Tested runtime:
protobuf==7.35.1- Python:
/usr/bin/python3
Public files:
https://huggingface.co/hacnho/protobuf-metricdescriptor-monitored-resource-types-dos-poc/resolve/main/control_one_display_name.pbhttps://huggingface.co/hacnho/protobuf-metricdescriptor-monitored-resource-types-dos-poc/resolve/main/malicious_monitored_resource_types_6000000.pbhttps://huggingface.co/hacnho/protobuf-metricdescriptor-monitored-resource-types-dos-poc/resolve/main/reproduce.py
Reproduction:
python3 reproduce.py