반응형

CVE-2025-49844 - Redis Lua 원격 코드 실행(RCE) 취약점 점검 및 조치
요약
- CVE-2025-49844는 Redis의 Lua 스크립트 엔진에서 발생하는 use-after-free 기반 원격 코드 실행(RCE) 취약점입니다.
- 인증 이후 공격자가 특수 제작된 Lua 스크립트를 보내면, Lua 샌드박스를 탈출해 Redis 데몬이 구동 중인 호스트 OS에서 임의 코드 실행이 가능합니다.
- Redis 측은 6.x ~ 8.x 주요 릴리스 라인에 대한 보안 패치 버전을 공개했으며, 해당 버전 미만은 모두 취약합니다.
1️⃣ 장애·취약점 상황 요약
운영 환경에서 Redis 프로세스는 정상적으로 떠 있지만(ps로 확인 시), 사용 중인 버전이 매우 오래된 redis-cli 4.0.10 계열로 확인되었다고 가정합니다. 이 경우 CVE-2025-49844뿐만 아니라 이후 발견된 여러 취약점에 동시에 노출되어 있을 가능성이 매우 큽니다.
특히 Redis를 0.0.0.0:포트로 바인딩해 내부·외부망에 그대로 노출한 경우, 악의적인 사용자가 Lua 기반 공격 스크립트를 전송해 호스트 권한 탈취 및 랜섬웨어, 크립토 마이너 설치 등으로 이어질 수 있습니다.
2️⃣ 환경 정보 및 프로세스 상태 예시
▪ 프로세스 확인 예시
$ ps -ef | grep redis
torange 1046735 1 0 Aug18 ? 02:23:20 /app/torange/torange_mariadb/redis/redis-server 0.0.0.0:16379
- 서비스 계정:
torange - 실행 경로:
/app/torange/torange_mariadb/redis/redis-server - 리스닝: 0.0.0.0:16379 (모든 인터페이스에 바인딩)
▪ Redis 버전 확인 예시
$ redis-cli -h 127.0.0.1 -p 16379 INFO server | grep -i redis_version
redis_version:4.0.10
위와 같이 4.x 구버전이 사용 중이라면, CVE-2025-49844 뿐 아니라 최근 보안 공지에서 언급된 다수 취약점에 모두 해당되므로 업그레이드가 아닌 “전면 교체” 수준으로 접근하는 것이 안전합니다.
3️⃣ CVE-2025-49844 기술 개요
1. 취약점 핵심 요약
- 취약점 ID: CVE-2025-49844
- 심각도: CVSS 10.0 (Critical) 수준으로 평가됨
- 영향 기능: Lua 스크립트(EVAL 등) 실행 기능
- 공격 조건: 인증 가능한 계정 또는 인증이 비활성화된 Redis 인스턴스
2. 취약점 동작 방식(요약)
- 공격자가 Redis에 접속한 뒤, 특수 제작된 Lua 스크립트를
EVAL등으로 실행 요청. - Lua 엔진 내부의 오래된 use-after-free 메모리 오류가 트리거되며 메모리가 손상.
- 샌드박스 밖의 네이티브 코드가 실행될 수 있는 상태로 이어져, 공격자가 만든 리버스 셸 / 명령 실행 페이로드가 동작.
- 이후 공격자는 호스트 OS 권한으로 파일 접근, 계정 탈취, 추가 악성코드 설치, 내부망 측면 이동 등을 수행할 수 있음.
4️⃣ 영향 버전 및 안전 버전 정리
공식 권고에 따르면, 6.x ~ 8.x 주요 릴리스 라인 대부분이 영향을 받으며, 패치가 반영된 최소 버전은 다음과 같습니다.
| 릴리스 라인 | 취약 버전 범위 | 권장 최소 버전(이상) |
|---|---|---|
| 6.2.x | 6.2.20 이하 전체 | 6.2.20 이상 최신 |
| 7.2.x | 7.2.10 이하 | 7.2.11 이상 |
| 7.4.x | 7.4.5 이하 | 7.4.6 이상 |
| 8.0.x | 8.0.3 이하 | 8.0.4 이상 |
| 8.2.x | 8.2.1 이하 | 8.2.2 이상 |
| 4.x, 5.x 등 더 구버전 | 공식 지원 종료, 다수 취약점 누적 | 최소 6.2.x / 7.2.x / 8.x 최신 안정 버전으로 교체 |
예시 환경 업그레이드 권고
redis-cli 4.0.10→ Redis 7.2.11 이상 또는 신규 구축 시 8.0.4 이상으로 마이그레이션 권장- 운영 정책, 모듈 호환성에 따라 LTS에 가까운 6.2.x, 7.2.x 중 하나를 선택할 수 있지만, 가능하면 최신 메이저 라인을 권장
5️⃣ 점검 절차(실무용 체크리스트)
1. 버전·노출 상태 확인
redis-cli INFO server로redis_version확인ss -tulpn | grep redis또는netstat로 바인딩 포트와 주소 확인- 방화벽/보안그룹에서 해당 포트가 인터넷에 직접 노출되어 있는지 점검
- Redis 설정 파일(
redis.conf)의requirepass/aclfile여부 확인
2. 의심스러운 Lua 스크립트 사용 유무 점검
- 애플리케이션 코드에서
EVAL,EVALSHA,SCRIPT LOAD등을 사용하는 부분 조사 - 운영 중인 Lua 스크립트가 있다면 형상관리(Git 등)에 등록되어 있는지, 변경 이력이 정상인지 확인
3. 로그 및 행위 기반 탐지
- Redis 로그에서 비정상적인 Lua 호출, 알 수 없는 키/명령 패턴, 외부로 나가는 셸 명령 흔적 확인
- 호스트 관점에서:
- Redis 계정으로 실행되는
bash,sh,curl,wget,nc등 프로세스 탐지 - 알 수 없는 비인가 사용자 계정,
authorized_keys수정 흔적 점검
- Redis 계정으로 실행되는
6️⃣ 조치 전략 및 운영 가이드
1. 단기 조치(패치 전 임시 대응)
- 외부 노출 인스턴스는 즉시 방화벽 또는 보안그룹으로 접근 IP 제한
- 사용하지 않는 경우, Lua 스크립트 기능 비활성화 또는 ACL로
EVAL계열 명령 차단 - Redis 프로세스 계정을 비루트 일반계정으로 한정하고, 파일 시스템 권한 최소화
2. 장기 조치(버전 업그레이드 및 구조 개선)
- 테스트 환경에서 Redis를 권장 패치 버전(예: 7.2.11 이상, 8.0.4 이상)으로 업그레이드 후 애플리케이션 회귀 테스트
- 운영 환경에서는:
- 새 버전 Redis 노드 구성 → 데이터 복제 또는 덤프/복원 → 서비스 트래픽 전환
- 구버전 노드는 일정 기간 모니터링 후 완전 제거
- 구성 파일 재정비:
bind 127.0.0.1 <내부 IP>형태로 불필요한 외부 바인딩 제거- 필수적으로
requirepass또는 ACL 기반 인증 강제
3. 재발 방지 및 모니터링
- 정기적으로 CVE 피드 및 벤더 보안 공지 모니터링 후, Redis 보안 업데이트 계획에 반영
- SIEM/로그 수집 시스템에 Redis 로그를 연동해 Lua 실행·인증 실패·비정상 명령 패턴을 탐지 룰로 구성
- 클라우드 환경에서는 CSPM/워크로드 보안 솔루션으로 익명 Redis 인스턴스 자동 탐지·차단 정책 적용
7️⃣ 기본 오류 대응 4단계
- 1단계 - 노출 차단
- 의심 인스턴스의 외부 접근을 즉시 차단(보안그룹/방화벽/로드밸런서 레벨)
- 필요 시 서비스 중단을 감수하더라도, RCE 확산을 막는 것을 우선
- 2단계 - 상태 진단
- 버전, 설정, 프로세스·포트 상태, 최근 로그 및 시스템 변경 이력 점검
- 의심 Lua 스크립트, 알 수 없는 계정 및 프로세스 식별
- 3단계 - 패치·마이그레이션
- 테스트 후 권장 버전으로 업그레이드 또는 신규 클러스터로 마이그레이션
- 동시에 인증·네트워크 정책·권한 모델을 재설계
- 4단계 - 모니터링·리뷰
- 보안 솔루션 및 로그 기반 탐지 룰을 업데이트
- 취약점 대응 결과를 문서화하고, 향후 동일 유형 이슈가 반복되지 않도록 아키텍처와 운영 프로세스를 재점검
반응형
LIST
'IT 소식 뉴스 > CVE CODE' 카테고리의 다른 글
| CVE-2025-61882 / CVE-2025-61884 (2) | 2025.11.12 |
|---|---|
| CVE-2025-59287 — Microsoft WSUS 원격 코드 실행 취약점 분석 (1) | 2025.11.07 |
| CVE-2025-62626 — AMD 젠5 RDSEED 난수 오류 분석 (0) | 2025.11.06 |
| Apache Tomcat 취약점 CVE-2025-52434 / 52520 / 53506 (0) | 2025.11.04 |
| CVE-2025-41244 — VMware Aria Operations 권한 상승 취약점 (2) | 2025.11.03 |
