Lucene search

K
githubGitHub Advisory DatabaseGHSA-6W4M-2XHG-2658
HistoryApr 26, 2023 - 5:39 p.m.

Buffer overflow in sponge queue functions

2023-04-2617:39:58
CWE-190
GitHub Advisory Database
github.com
24
keccak
sponge function
buffer overflow
queue
input data
output digest
partial input
partial output
patches
workarounds
issue 105
xkcp

0.016 Low

EPSS

Percentile

87.5%

Impact

The Keccak sponge function interface accepts partial inputs to be absorbed and partial outputs to be squeezed. A buffer can overflow when partial data with some specific sizes are queued, where at least one of them has a length of 2^32 - 200 bytes or more.

Patches

Yes, see commit fdc6fef0.

Workarounds

The problem can be avoided by limiting the size of the partial input data (or partial output digest) below 2^32 - 200 bytes. Multiple calls to the queue system can be chained at a higher level to retain the original functionality. Alternatively, one can process the entire input (or produce the entire output) at once, avoiding the queuing functions altogether.

References

See issue #105 for more details.

CPENameOperatorVersion
sha3lt1.0.5
pysha3le1.0.2

References