Bug ID 1014573: Several large arrays/objects in JSON payload may core the enforcer

Last Modified: Jan 19, 2023

Bug Tracker

Affected Product:  See more info
BIG-IP ASM(all modules)

Known Affected Versions:
14.1.0, 14.1.0.1, 14.1.0.2, 14.1.0.3, 14.1.0.5, 14.1.0.6, 14.1.2, 14.1.2.1, 14.1.2.2, 14.1.2.3, 14.1.2.4, 14.1.2.5, 14.1.2.6, 14.1.2.7, 14.1.2.8, 14.1.3, 14.1.3.1, 14.1.4, 14.1.4.1, 14.1.4.2, 14.1.4.3, 14.1.4.4, 14.1.4.5, 14.1.4.6, 14.1.5, 15.1.0, 15.1.0.1, 15.1.0.2, 15.1.0.3, 15.1.0.4, 15.1.0.5, 15.1.1, 15.1.2, 15.1.2.1, 15.1.3, 15.1.3.1, 15.1.4, 15.1.4.1, 15.1.5, 15.1.5.1, 15.1.6, 15.1.6.1, 16.1.0, 16.1.1, 16.1.2, 16.1.2.1, 16.1.2.2, 16.1.3, 17.0.0

Fixed In:
17.0.0.1, 16.1.3.1, 15.1.7, 14.1.5.1

Opened: Apr 27, 2021
Severity: 4-Minor

Symptoms

Requests with JSON payload that consists of more than one object with elements, such as a couple of large arrays, may cause the enforcer to crash.

Impact

Large enough arrays may cause performance decrease, in addition, the enforcer may crash.

Conditions

Each of the objects/arrays in JSON payload has to consist lesser amount of elements than defined in the "Maximum Array Length" JSON profile attribute.

Workaround

Set "Maximum Array Length" to a lower value than the requests array length.

Fix Information

Added internal param "count_overall_child_elements_in_json" to control "Maximum Array/Object Elements" behaviour: 0 (default) - retain current behaviour (check max elements in each array/object separately); 1 - count overall elements in all arrays/objects.

Behavior Change