Avro schema-field amplification PoC
This repository contains a benign security research proof of concept for a valid Avro object-container file whose embedded record schema contains 100000 null fields.
Files
poc-schema-fields-100k.avro- valid.avrofile with one record and a100000-field record schemabuild-meta-schema-fields.json- file size and measurement summaryreproduce_avro_schema_fields_amp.py- replay helper for Apache Avro and fastavro
What it demonstrates
The same .avro artifact produces very different behavior across readers:
- Apache
avro.datafile.DataFileReaderspends about49 sparsing the embedded schema fastavro.readerprocesses the same file in about79 ms
The artifact size is only about 3.59 MB.
Quick repro
Install:
avro==1.12.1fastavro==1.12.2
Then run:
python reproduce_avro_schema_fields_amp.py poc-schema-fields-100k.avro
Expected output shape:
{
"file_size": 3589005,
"apache": {
"elapsed_ms": 49091.86
},
"fastavro": {
"elapsed_ms": 79.46
}
}
This PoC is intended for defensive validation and bug bounty triage only.
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support