Skip to content

Vulnerability in handling large ziplists

High
yossigo published GHSA-vw22-qm3h-49pr Oct 4, 2021

Package

No package listed

Affected versions

All versions

Patched versions

6.2.6, 6.0.16, 5.0.14

Description

Impact

An integer overflow bug in the ziplist data structure used by all versions of Redis can be exploited to corrupt the heap and potentially result with remote code execution.

The vulnerability involves modifying the default ziplist configuration parameters (hash-max-ziplist-entries, hash-max-ziplist-value, zset-max-ziplist-entries or zset-max-ziplist-value) to a very large value, and then constructing specially crafted commands to create very large ziplists.

Patches

The problem is fixed in Redis versions 6.2.6, 6.0.16, 5.0.14.

Workarounds

An additional workaround to mitigate the problem without patching the redis-server executable is to prevent users from modifying the above configuration parameters. This can be done using ACL to restrict unprivileged users from using the CONFIG SET command.

Credit

This issue was discovered and reported by sundb.

For more information

If you have any questions or comments about this advisory:

Severity

High
7.5
/ 10

CVSS base metrics

Attack vector
Network
Attack complexity
High
Privileges required
Low
User interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H

CVE ID

CVE-2021-32628

Weaknesses

Credits