🔍 CVE-2021-32761

7.5
CVSS Score
HIGH
2021-07-21
2026-06-17 03:53
✅ 완료

🇰🇷 한글 설명

Redis의 BIT 명령어를 사용할 때 발생하는 정수 오버플로 및 경계 외 읽기 취약점입니다. 32비트 시스템에서 특정 설정값을 조작하여 힙 메모리를 손상시키거나 임의의 코드를 실행할 수 있습니다.

💡 쉬운 설명

데이터베이스가 숫자를 계산하는 과정에서 오류가 발생하여 메모리의 중요한 정보를 훔쳐보거나 해커가 명령을 내릴 수 있는 문제입니다. 주로 32비트 환경의 Redis에서 발생합니다.

🇺🇸 원문 (English)

Redis is an in-memory database that persists on disk. A vulnerability involving out-of-bounds read and integer overflow to buffer overflow exists starting with version 2.2 and prior to versions 5.0.13, 6.0.15, and 6.2.5. On 32-bit systems, Redis `*BIT*` command are vulnerable to integer overflow that can potentially be exploited to corrupt the heap, leak arbitrary heap contents or trigger remote code execution. The vulnerability involves changing the default `proto-max-bulk-len` configuration parameter to a very large value and constructing specially crafted commands bit commands. This problem only affects Redis on 32-bit platforms, or compiled as a 32-bit binary. Redis versions 5.0.`3m 6.0.15, and 6.2.5 contain patches for this issue. An additional workaround to mitigate the problem without patching the `redis-server` executable is to prevent users from modifying the `proto-max-bulk-len` configuration parameter. This can be done using ACL to restrict unprivileged users from using the CONFIG SET command.

📍 영향받는 시스템

Redis 2.2 ~ 5.0.12, 6.0.14 이하, 6.2.4 이하 (32-bit 시스템 한정)

⚔️ 공격 벡터

proto-max-bulk-len 설정을 매우 크게 변경한 후 특수하게 제작된 BIT 명령어를 전송

🛡️ 대응 방법

Redis를 5.0.13, 6.0.15, 6.2.5 이상 버전으로 업데이트하거나 ACL을 통해 CONFIG SET 명령어를 제한

🔧 검증 코드

출력된 redis_version이 취약한 버전 범위에 해당하는지 확인

Shell / Script
redis-cli INFO server | grep redis_version

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H

💻 영향받는 소프트웨어

Redis