[공격] 분석 — CVE-2022-0543
CVE-2022-0543 is a Debian‑specific Redis Lua sandbox escape that allows unauthenticated remote code execution, demanding immediate patching or complete disabling of Lua scripting and strict network isolation.
📋 요약
- 심각도 critical · CVSS 10.0 · EPSS 0.99277 · 악용난이도 easy · KEV
🔍 공격 기법
-
공격 표면
- 네트워크 노출된 Redis 서비스(
6379/TCP)가 기본 설정으로bind 0.0.0.0혹은 방화벽 미설정 상태일 경우. - Lua 스크립트를 실행할 수 있는
EVAL·EVALSHA명령이 비활성화되지 않은 경우.
- 네트워크 노출된 Redis 서비스(
-
트리거 조건
- 공격자는 임의의 Lua 코드를 포함한
EVAL요청을 전송한다. Debian/Ubuntu 패키지에서 Lua 샌드박스 제한(debug,os.execute등)이 누락돼 있어, 해당 코드가 호스트 OS 명령을 실행할 수 있다.
- 공격자는 임의의 Lua 코드를 포함한
-
공격 단계
- 정찰 – 포트 스캔으로 Redis 서비스 확인 후 버전·패키지 정보를
INFO명령으로 조회. Debian/Ubuntu 배포판 여부가 핵심 전제조건. - 초기 접근 – 인증 없이(
PR:N)EVAL "require('os').execute('id')"와 같이 샌드박스 탈출용 Lua 스크립트를 전송. CVSS 벡터AV:N/AC:L/PR:N/UI:N와 일치. - 실행·권한 획득 – sandbox escape 성공 시
redis사용자 권한으로 임의 명령 실행. 이 계정은 시스템 파일 쓰기 권한을 가질 수 있어, 추가 악성 바이너리 배포·크론 작업 등록이 가능. - 지속 –
/etc/cron.d/에 악성 스크립트 삽입하거나 systemd 서비스 파일을 생성해 재부팅 후 자동 실행. - 영향 – 전체 시스템 명령 실행(
C:H/I:H/A:H)으로 데이터 유출·파괴·서비스 거부까지 가능.
- 정찰 – 포트 스캔으로 Redis 서비스 확인 후 버전·패키지 정보를
-
원리 요약 – Debian 패키지의 Lua 샌드박스 설정 오류 →
debug·os라이브러리 접근 허용 → 네트워크에서 직접 OS 명령 실행.
악용 가능성: Redis 서비스가 네트워크에 직접 노출돼 있고 인증이 비활성화된 경우(AV:N·PR:N), 공격자는 별도의 사용자 상호작용 없이 바로 요청을 전송할 수 있습니다(UI:N).
패키징 결함으로 인해 Debian에서 제공되는 Lua 샌드박스가 우회 가능하므로, 스크립트 실행 명령(EVAL/SCRIPT LOAD)만 전달하면 원격 코드 실행이 가능합니다(AC:L).
EPSS 값 0.99277은 실제 공격이 빈번히 관측되고 있음을 의미하고, KEV에 등재된 점은 이미 악용 사례가 보고되었음을 확인시켜 줍니다.
공격 표면은 기본 포트 6379를 통한 TCP 연결과 Redis 프로토콜 내 Lua 스크립트 로딩 기능이며, 별도 파일 업로드나 추가 권한 상승 단계 없이 바로 실행 단계에 도달합니다.
따라서 이 취약점은 “easy” 등급이 적절하며, 방어자는 외부 접근 차단·인증 활성화·패키지 업데이트만으로도 대부분의 실전 위협을 차단할 수 있습니다.
💥 영향 분석
- 공격 성공 시 전체 시스템 제어가 가능해짐.
- 기밀성(C): 데이터베이스 파일, 메모리 내용, 인증 정보 탈취.
- 무결성(I): 임의 파일 수정·악성 바이너리 삽입.
- 가용성(A): 서비스 중단·시스템 크래시 유발.
🔗 관련 취약점·체이닝
- CWE‑284 (Improper Access Control) – 인증 없이 Redis 명령 실행 가능.
- CWE‑269 (Improper Privilege Management) –
redis사용자에게 과도한 파일·프로세스 권한 부여. - CWE‑787 (Out-of-bounds Write) 등과 직접적인 연관은 없지만, 다른 서비스에서 취약한 파일 업로드·명령 주입이 가능해지면 정보 노출 → 권한 상승 → RCE 체인으로 확장될 수 있다.
- 추정: 동일 호스트에 존재하는 미패치된
sudo권한 오용(CWE‑250)이나 컨테이너 탈출 취약점과 결합하면, 공격자는 루트 권한까지 상승할 가능성이 높다.
🔎 탐지
- Redis 로그에서 비정상적인
EVAL/SCRIPT LOAD요청(특히 외부 IP) 감시. redis사용자에 의해 생성된 새로운 프로세스(ps -u redis) 혹은 네트워크 연결(netstat -tunp | grep redis) 확인.- 파일 무결성 모니터링으로
/etc/cron.d/,/usr/lib/systemd/system/경로의 변조 탐지.
🛡️ 완화 방안
- 즉시 조치 – 외부에서 접근 가능한 Redis 포트를 방화벽(
iptables·ufw)으로 차단하고, 내부망에서도 필요 시 TLS·ACL 적용. - 인증 강화 –
requirepass설정 후protected-mode yes활성화. - Lua 스크립트 비활성화 –
rename-command EVAL "",rename-command SCRIPT ""로 명령 차단. - 패치 적용 – Debian/Ubuntu 보안 업데이트(
apt-get update && apt-get upgrade)를 통해 해당 패키지 버전으로 교체. - 장기 방어 – 컨테이너·VM 격리, 최소 권한 원칙 적용 및 정기적인 취약점 스캐닝 수행.
본 보고서는 다중 소스 교차검증을 통해 일관성이 확인되었으며([교차검증] 다중 소스 데이터 일관성 확인됨), EPSS 0.99277이라는 매우 높은 실제 악용 예측값에 기반해 즉시 대응이 필요함을 강조합니다([우선순위 결정] immediate).
⚖️ 위험도 / 우선순위
- 조치: immediate (지금 즉시(24h 내))
- 근거: CVSS=10.0 · KEV · EPSS=0.99277 · exploit=easy · in_scope=None