~ / search / GHSA-6w4m-2xhg-2658

GHSA-6w4m-2xhg-2658

Buffer overflow in sponge queue functions

Source: GitHub Advisory Database (reviewed) Critical CVE-2022-37454

Packages

EcosystemPackageAffectedFixed in
PyPI pysha3 <= 1.0.2 no fix listed
RubyGems sha3 < 1.0.5 1.0.5

Details

As written in the advisory (Markdown source, shown as plain text).

### 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](https://github.com/XKCP/XKCP/commit/fdc6fef075f4e81d6b1bc38364248975e08e340a). ### 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](https://github.com/XKCP/XKCP/issues/105) for more details.

References

External links from the advisory. They lead to third-party sites.