[
https://issues.apache.org/jira/browse/AVRO-4280?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Ismaël Mejía resolved AVRO-4280.
--------------------------------
Resolution: Duplicate
Superseded by AVRO-4299. The collection block-count cap for [perl] has been
folded into that issue's fix (PR https://github.com/apache/avro/pull/3864),
which now provides a single complete protection against collection allocation
DoS: available-bytes validation, a heap-aware cap for zero-byte-element
collections, a structural cap, and bounded skip paths. Resolving this as a
duplicate/superseded; the PR here (closed) is superseded by #3864.
> [perl] Bound collection size when decoding arrays and maps
> ----------------------------------------------------------
>
> Key: AVRO-4280
> URL: https://issues.apache.org/jira/browse/AVRO-4280
> Project: Apache Avro
> Issue Type: Sub-task
> Components: perl
> Affects Versions: 1.11.5, 1.12.1
> Reporter: Ismaël Mejía
> Assignee: Ismaël Mejía
> Priority: Major
> Labels: pull-request-available
> Fix For: 1.12.2
>
> Time Spent: 1.5h
> Remaining Estimate: 0h
>
> {{decode_array()}} and {{decode_map()}} in
> {{lang/perl/lib/Avro/BinaryDecoder.pm}} iterate {{for (1..$block_count)}}
> using the block count read from input; the block size for negative blocks is
> read but discarded, and no limit is applied.
> Add a configurable maximum collection length, validated per block and
> cumulatively, and fail decoding with a clear error when exceeded. Add a
> corresponding test.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)