뉴스 목록
The Hacker News2026. 09. 18.

Docker Sandboxes 심각한 취약점, 악성 게스트 코드가 macOS 호스트 파일 읽기·수정 가능

한 줄 요약

Docker Sandboxes(AI 코딩 에이전트를 격리된 가상 머신에서 실행하는 Docker 제품)에서 심각한 보안 취약점 두 가지가 공개되었습니다. CVE-2026-77179(위험도 Critical, CVSS 9.4)는 가상 머신 내부의 악성 코드가 공유 프로젝트 폴더를 벗어나 macOS 호스트의 임의 파일을 읽고 수정하거나, 심지어 호스트에서 코드를 실행할 수 있는 취약점입니다. CVE-2026-79994(위험도 High, CVSS 8.7)는 샌드박스가 허가되지 않은 Unix 소켓(프로세스 간 통신 경로)에 접근하도록 유도할 수 있는 결함입니다. 두 취약점 모두 2026년 9월 7일 출시된 버전 0.42.0에서 수정되었으며, 현재까지 실제 악용 사례는 보고되지 않았습니다. Docker Sandboxes를 사용하는 환경은 즉시 0.42.0 이상으로 업데이트해야 합니다.

사건

Docker Sandboxes의 virtio-fs 호스트 서버(CVE-2026-77179)와 게스트-호스트 Unix 소켓 릴레이(CVE-2026-79994)에서 가상 머신 탈출(VM escape) 취약점이 각각 발견됨. 두 결함 모두 심링크(symbolic link) 교체를 악용해 허가된 경계 밖 자원에 접근하는 방식임.

영향

CVE-2026-77179는 가상 머신 내 악성 코드가 VMM 사용자 권한으로 macOS 호스트의 임의 파일을 읽거나 수정하고 코드 실행까지 이어질 수 있음. CVE-2026-79994는 허가 범위 밖의 AF_UNIX 소켓에 호스트가 연결되도록 유도해 데이터 노출 또는 호스트 기능 남용이 가능함.

원인

CVE-2026-77179: virtio-fs 서버가 삭제된 파일을 저장된 경로로 재열람할 때 심링크를 따라가 경계 검사를 우회. CVE-2026-79994: 소켓 경로가 허가 범위 내인지 검사한 뒤 재연결할 때까지 사이에 심링크로 디렉터리를 교체하는 TOCTOU(검사-사용 시점 불일치) 결함.

대응

Docker는 2026년 9월 7일 버전 0.42.0으로 두 취약점을 모두 수정했으며, 즉시 업데이트가 불가한 경우 클론 모드(--clone) 사용 및 읽기-쓰기 호스트 마운트 회피를 권고함. 현재 최신 버전은 0.43.0(9월 15일 출시).

실무 포인트

Docker Sandboxes를 CI/CD 파이프라인이나 AI 코딩 에이전트 실행 환경에 사용 중이라면 즉시 0.43.0으로 업데이트해야 함. 클론 모드도 .env 등 비추적 파일은 샌드박스 내에서 읽힐 수 있으므로, 업데이트 전까지 민감 파일 포함 디렉터리에서 실행하지 않도록 주의.

본문

macOS에서 실행 중인 Docker Sandboxes 가상 머신 내부의 악성 코드가 공유된 프로젝트 디렉터리를 벗어나 호스트의 다른 파일을 읽거나 변경할 수 있다고, Docker가 9월 15일 보안 공지를 통해 경고했습니다.

탈출은 가상 머신을 실행하는 호스트 계정의 권한으로 이루어집니다. CVE-2026-77179로 식별된 이 결함은 Critical 등급이며, macOS의 버전 0.28.0 이상 0.42.0 미만에 영향을 미치고 9월 7일 출시된 0.42.0에서 수정되었습니다.

Docker Sandboxes는 각각의 AI 코딩 에이전트를 독립된 소형 가상 머신에서 실행하며, 프로젝트 디렉터리를 공유 마운트 형태로 제공합니다. 탈출을 시도할 수 있는 코드는 해당 가상 머신 내부에서 실행되는 모든 것으로, 예컨대 사용자를 공격하도록 조작된 코딩 에이전트나 에이전트가 설치·실행한 악성 소프트웨어가 해당됩니다.

Docker는 악용 사례를 보고하지 않았습니다. CVE 레코드에 대한 CISA의 추가 평가에는 악용 없음으로 기재되어 있으며, 이 결함은 9월 16일 기준 CISA의 Known Exploited Vulnerabilities(실제 악용 확인 목록) 카탈로그에 등재되어 있지 않습니다.

이 결함은 샌드박스 내부에 악성 코드가 있어야 하며, 에이전트가 실행하는 코드로부터 호스트를 보호하는 것이 바로 샌드박스의 존재 이유입니다. 에이전트는 가상 머신 내에서 sudo로 패키지를 설치하고 명령을 실행하며, Docker의 격리 문서에 따르면 하이퍼바이저 경계가 "VM 내부 권한 분리가 아닌 격리 통제 수단"입니다.

탈출은 virtio-fs 호스트 서버, 즉 Mac과 가상 머신 간 파일 공유의 호스트 측 구성 요소를 통해 이루어집니다. Docker에 따르면 이 서버는 저장된 경로로 삭제된 파일을 재열람할 때 심링크를 따라갔습니다.

게스트, 즉 가상 머신 내부에서 실행되는 모든 것이 상위 디렉터리를 심링크로 교체한 뒤 VMM 사용자(가상 머신 모니터가 실행되는 호스트 계정)로 파일을 읽거나 수정할 수 있으며, Docker는 이것이 "잠재적으로 호스트에서의 코드 실행으로 이어질 수 있다"고 밝혔습니다.

Docker의 문서에는 3월부터 워크스페이스(공유 프로젝트 디렉터리를 가리키는 Docker 용어) 외부를 가리키는 심링크는 따라가지 않는다고 명시되어 있습니다.

동일한 릴리스에서 두 번째 결함인 CVE-2026-79994도 수정되었습니다. Docker가 CVSS 8.7의 High 등급으로 평가한 이 결함은 샌드박스가 허가된 워크스페이스 내의 Unix 도메인 소켓에 연결할 수 있도록 하는 릴레이에 존재합니다.

릴레이는 소켓 경로가 워크스페이스 내에 있는지 확인한 뒤 해당 경로명으로 재연결합니다. 경로를 검사한 후 연결하기 전 사이에 게스트가 경로 상의 디렉터리를 심링크로 교체하면, 호스트가 워크스페이스 외부의 임의 AF_UNIX 소켓에 연결하도록 만들 수 있다고 Docker는 밝혔으며, 이는 "해당 소켓이 제공하는 데이터나 호스트 측 기능을 노출시킬 수 있습니다."

이 결함은 버전 0.37.0 이상 0.41.9 이하에 영향을 미치나 0.42.0은 영향을 받지 않습니다. Docker는 첫 번째 결함을 macOS 전용으로 분류하고 있지만 플랫폼을 명시하지 않은 반면, Docker Sandboxes는 macOS, Windows, Linux 호스트에서 실행됩니다. CISA의 평가도 악용 없음으로 기재되어 있으며 KEV 카탈로그에도 등재되어 있지 않습니다.

영향을 받는 버전 및 업데이트 방법

CVE구성 요소영향 버전플랫폼Docker 위험도
CVE-2026-77179virtio-fs 호스트 서버0.28.0 이상 0.42.0 미만macOSCritical, CVSS 9.4
CVE-2026-79994게스트-호스트 Unix 소켓 릴레이0.37.0 이상 0.42.0 미만명시 없음High, CVSS 8.7
  1. 0.42.0 이상으로 업데이트하십시오. 9월 17일 기준 최신 릴리스는 9월 15일 출시된 0.43.0입니다.
  2. 즉시 업데이트가 불가한 경우 클론 모드를 사용하고 읽기-쓰기 호스트 마운트를 추가하지 마십시오. 이는 두 결함 모두에 대한 Docker의 권고 사항입니다.

기본적으로 sbx run은 현재 디렉터리를 읽기-쓰기 권한으로 샌드박스에 공유합니다. 클론 모드는 프로젝트가 Git 저장소일 때만 작동하며, 샌드박스 생성 시 설정되므로 기존 샌드박스는 --clone 옵션으로 삭제 후 재생성해야 합니다.

클론 모드는 저장소를 변경으로부터 보호하지만 읽기는 막지 못합니다. 저장소는 /run/sandbox/source에 읽기 전용으로 마운트되며, .env와 같이 추적되지 않는 파일은 샌드박스 내부에서 읽힐 수 있다고 Docker 문서는 명시하고 있습니다.

Docker는 0.42.0 출시 8일 후인 9월 15일에 CVE 레코드와 보안 권고문을 공개했습니다.

GitHub 및 Docker 문서 사이트의 0.42.0 릴리스 노트에는 9월 17일 기준 두 CVE 중 어느 것도 명시되어 있지 않습니다. 일반 수정 사항 중 "샌드박스 프로세스가 데몬으로 하여금 호스트 D-Bus 전송을 열어 호스트에서 임의 명령을 실행하도록 만들 수 있는" 문제에 대한 수정이 포함되어 있습니다. Docker는 이 수정을 두 CVE 중 어느 것과도 연결 짓지 않았습니다.

CVE-2026-79994 레코드에는 초기에 0.41.0이 최초 수정 버전으로 기재되어 있었고, 존재하지 않는 0.41.0 릴리스 페이지로 링크가 걸려 있었습니다. Docker는 9월 15일 레코드 공개 약 한 시간 후 두 항목 모두 0.42.0으로 수정했습니다.

Docker는 CVE-2026-77179를 발견한 accomplish.ai의 Oren Yomtov와 CVE-2026-79994를 발견한 ThreatNotify의 Jurre van Bergen의 공로를 인정했습니다.

지난 4월, Cyera Research Labs는 Docker 기반 샌드박스 내의 프롬프트 인젝션(prompt injection)된 코딩 에이전트가 별도의 Docker Engine 결함을 악용해 호스트를 공격하도록 속을 수 있다는 내용을 공개했습니다.

출처
The Hacker News · thehackernews.com
원문 보기

분야별 뉴스

관심 분야의 보안 이슈를 모아 보세요.

TORUN SECURITY

투런이 제공하는 보안 솔루션

공격 표면 관리부터 엔드포인트·내부정보 보호까지, 기업 환경에 맞는 보안 솔루션을 투런이 함께 설계합니다.