Описание
Buffer overflow in sponge queue functions
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.
Ссылки
- https://github.com/XKCP/XKCP/security/advisories/GHSA-6w4m-2xhg-2658
- https://nvd.nist.gov/vuln/detail/CVE-2022-37454
- https://github.com/XKCP/XKCP/issues/105
- https://github.com/johanns/sha3/issues/17
- https://github.com/tiran/pysha3/issues/29
- https://github.com/XKCP/XKCP/commit/fdc6fef075f4e81d6b1bc38364248975e08e340a
- https://github.com/johanns/sha3/commit/5f2e8118a62831911703c8753ff2435c3b5d7312
- https://www.debian.org/security/2022/dsa-5269
- https://www.debian.org/security/2022/dsa-5267
- https://security.gentoo.org/glsa/202305-02
- https://news.ycombinator.com/item?id=35050307
- https://news.ycombinator.com/item?id=33281106
- https://mouha.be/sha-3-buffer-overflow
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/CMIEXLMTW5GO36HTFFWIPB3OHZXCT3G4
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/3ALQ6BDDPX5HU5YBQOBMDVAA2TSGDKIJ
- https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/CMIEXLMTW5GO36HTFFWIPB3OHZXCT3G4
- https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/3ALQ6BDDPX5HU5YBQOBMDVAA2TSGDKIJ
- https://lists.debian.org/debian-lts-announce/2022/11/msg00000.html
- https://lists.debian.org/debian-lts-announce/2022/10/msg00041.html
- https://github.com/rubysec/ruby-advisory-db/blob/master/gems/sha3/CVE-2022-37454.yml
- https://eprint.iacr.org/2023/331
- https://csrc.nist.gov/projects/hash-functions/sha-3-project
Пакеты
pysha3
<= 1.0.2
Отсутствует
sha3
< 1.0.5
1.0.5
Связанные уязвимости
The Keccak XKCP SHA-3 reference implementation before fdc6fef has an integer overflow and resultant buffer overflow that allows attackers to execute arbitrary code or eliminate expected cryptographic properties. This occurs in the sponge function interface.
The Keccak XKCP SHA-3 reference implementation before fdc6fef has an integer overflow and resultant buffer overflow that allows attackers to execute arbitrary code or eliminate expected cryptographic properties. This occurs in the sponge function interface.
The Keccak XKCP SHA-3 reference implementation before fdc6fef has an integer overflow and resultant buffer overflow that allows attackers to execute arbitrary code or eliminate expected cryptographic properties. This occurs in the sponge function interface.
The Keccak XKCP SHA-3 reference implementation before fdc6fef has an i ...