sveltejs/devalue · Security

devalue: Sparse arrays emitted by uneval cause eager allocation when evaluated

GHSA ID
GHSA-wf3x-273g-mvxv
Severity
low
Published
Updated
CVSS v4
2.3 · CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:P/VC:N/VI:N/VA:N/SC:N/SI:N/SA:L

Description

Evaluating legitimate uneval output for a sparse array can allocate memory proportional to its declared length. A tiny serialized value can therefore cause large memory allocation in a consuming browser/runtime. This occurs during evaluation of generated code, not in default parse sparse-array construction.

You would only be affected by this if you were serializing very large sparse arrays and then evaluating the results. In the general use case for uneval of sending data to the client, the worst that could happen is the browser tab running out of memory.

CWEs

References