CVE-2021-32765
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Summary
Hiredis is a minimalistic C client library for the Redis database. In affected versions Hiredis is vulnurable to integer overflow if provided maliciously crafted or corrupted RESP mult-bulk protocol data. When parsing multi-bulk (array-like) replies, hiredis fails to check if count * sizeof(redisReply*) can be represented in SIZE_MAX. If it can not, and the calloc() call doesn't itself make this check, it would result in a short allocation and subsequent buffer overflow. Users of hiredis who are unable to update may set the maxelements context option to a value small enough that no overflow is possible.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| redis | hiredis | < 1.0.1 | affected |
Weaknesses
- CWE-190: CWE-190: Integer Overflow or Wraparound
- CWE-680: CWE-680: Integer Overflow to Buffer Overflow
ADP Enrichment
CVE Program Container
Additional References
- https://github.com/redis/hiredis/security/advisories/GHSA-hfm9-39pp-55p2
- https://github.com/redis/hiredis/commit/76a7b10005c70babee357a7d0f2becf28ec7ed1e
- https://wiki.sei.cmu.edu/confluence/display/c/MEM07-C.+Ensure+that+the+arguments+to+calloc%28%29%2C+when+multiplied%2C+do+not+wrap
- https://lists.debian.org/debian-lts-announce/2021/10/msg00007.html
- https://security.netapp.com/advisory/ntap-20211104-0003/
- https://security.gentoo.org/glsa/202210-32
References
- https://github.com/redis/hiredis/security/advisories/GHSA-hfm9-39pp-55p2
- https://github.com/redis/hiredis/commit/76a7b10005c70babee357a7d0f2becf28ec7ed1e
- https://wiki.sei.cmu.edu/confluence/display/c/MEM07-C.+Ensure+that+the+arguments+to+calloc%28%29%2C+when+multiplied%2C+do+not+wrap
- https://lists.debian.org/debian-lts-announce/2021/10/msg00007.html
- https://security.netapp.com/advisory/ntap-20211104-0003/
- https://security.gentoo.org/glsa/202210-32
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.