🇰🇷 한글 설명
RedisTimeSeries 모듈의 TS.QUERYINDEX, TS.MGET, TS.MRANGE, TS.MREVRANGE 명령에서 인증된 사용자가 특수 조작된 인자로 호출 시 정수 오버플로우가 발생하여 힙 오버플로우로 이어지고 원격 코드 실행을 초래할 수 있습니다. Redis 데이터베이스의 시계열 데이터 관리 기능에 심각한 보안 위협을 제공합니다.
💡 쉬운 설명
Redis 데이터베이스에서 시간 기반 데이터를 다루는 기능에 버그가 있어서, 로그인한 사용자가 잘못된 명령어를 보내면 시스템을 완전히 제어할 수 있게 됩니다. 이 버그는 특정 버전 이상으로 업그레이드하면 해결됩니다.
🇺🇸 원문 (English)
RedisTimeSeries is a time-series database (TSDB) module for Redis, by Redis. Executing one of these commands TS.QUERYINDEX, TS.MGET, TS.MRAGE, TS.MREVRANGE by an authenticated user, using specially crafted command arguments may cause an integer overflow, a subsequent heap overflow, and potentially lead to remote code execution. This vulnerability is fixed in 1.6.20, 1.8.15, 1.10.15, and 1.12.3.
📍 영향받는 시스템
RedisTimeSeries 1.6.20 미만, 1.8.15 미만, 1.10.15 미만, 1.12.3 미만의 모든 버전
⚔️ 공격 벡터
인증된 사용자가 TS.QUERYINDEX, TS.MGET, TS.MRANGE, TS.MREVRANGE 명령어에 특수 조작된 인자를 전달하여 메모리 오버플로우 유발
🛡️ 대응 방법
RedisTimeSeries를 1.6.20, 1.8.15, 1.10.15, 1.12.3 이상의 패치 버전으로 즉시 업그레이드
🔧 검증 코드
명령어 출력에서 timeseries 모듈의 버전(ver=X.X.X)을 확인하여 위 명시된 패치 버전 이상인지 확인하고, 버전이 낮으면 업그레이드 필요
redis-cli MODULE LIST 2>/dev/null | grep -i timeseries | grep -oE 'ver=[0-9]+\.[0-9]+\.[0-9]+'