{"id":"CVE-2022-37454","aliases":["GHSA-6w4m-2xhg-2658","BIT-libphp-2022-37454","BIT-libpython-2022-37454","BIT-php-2022-37454","BIT-php-min-2022-37454","BIT-python-2022-37454","BIT-python-min-2022-37454","PSF-2022-11","PYSEC-2026-504"],"title":"Buffer overflow in sponge queue functions","summary":"Buffer overflow in sponge queue functions","severity":"critical","cvss":9.8,"cvssVector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","vendor":"pysha3","product":"pysha3","ecosystem":"pip","affected":["pysha3 <= 1.0.2","sha3 < 1.0.5"],"patched":["sha3 1.0.5"],"published":"2023-04-26","updated":"2026-09-10","sourceUpdated":"2026-09-10T03:49:53.723946181Z","source":"OSV","sourceUrl":"https://osv.dev/vulnerability/GHSA-6w4m-2xhg-2658","references":[{"url":"https://github.com/XKCP/XKCP/security/advisories/GHSA-6w4m-2xhg-2658"},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2022-37454"},{"url":"https://github.com/XKCP/XKCP/issues/105"},{"url":"https://github.com/johanns/sha3/issues/17"},{"url":"https://github.com/tiran/pysha3/issues/29"},{"url":"https://github.com/XKCP/XKCP/commit/fdc6fef075f4e81d6b1bc38364248975e08e340a"},{"url":"https://github.com/johanns/sha3/commit/5f2e8118a62831911703c8753ff2435c3b5d7312"},{"url":"https://www.debian.org/security/2022/dsa-5269"},{"url":"https://www.debian.org/security/2022/dsa-5267"},{"url":"https://security.gentoo.org/glsa/202305-02"},{"url":"https://news.ycombinator.com/item?id=35050307"},{"url":"https://news.ycombinator.com/item?id=33281106"},{"url":"https://mouha.be/sha-3-buffer-overflow"},{"url":"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/CMIEXLMTW5GO36HTFFWIPB3OHZXCT3G4"},{"url":"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/3ALQ6BDDPX5HU5YBQOBMDVAA2TSGDKIJ"},{"url":"https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/CMIEXLMTW5GO36HTFFWIPB3OHZXCT3G4"},{"url":"https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/3ALQ6BDDPX5HU5YBQOBMDVAA2TSGDKIJ"},{"url":"https://lists.debian.org/debian-lts-announce/2022/11/msg00000.html"},{"url":"https://lists.debian.org/debian-lts-announce/2022/10/msg00041.html"},{"url":"https://github.com/rubysec/ruby-advisory-db/blob/master/gems/sha3/CVE-2022-37454.yml"},{"url":"https://eprint.iacr.org/2023/331"},{"url":"https://csrc.nist.gov/projects/hash-functions/sha-3-project"}],"tags":["osv","pip"],"epss":0.05737,"epssPercentile":0.92713,"ingestedAt":"2026-07-08T18:25:46.543Z","slug":"CVE-2022-37454","body":"## Overview\n\n### Impact\n\nThe 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.\n\n### Patches\n\nYes, see commit [fdc6fef0](https://github.com/XKCP/XKCP/commit/fdc6fef075f4e81d6b1bc38364248975e08e340a).\n\n### Workarounds\n\nThe 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.\n\n### References\n\nSee [issue #105](https://github.com/XKCP/XKCP/issues/105) for more details.\n\n\n## Affected packages\n\n- `pysha3 <= 1.0.2`\n- `sha3 < 1.0.5`\n\n## Remediation\n\nUpgrade to a patched release:\n\n- `sha3 1.0.5`","depth":"midnight","depthScore":55,"depthScoreParts":{"impact":53.9,"likelihood":1.1,"exploitation":0,"ransomware":0},"changes":[]}