🇰🇷 한글 설명
Windows용 Docker Desktop 4.6 미만 버전에서 발생하는 취약점으로, WindowsContainerStartRequest 클래스의 DaemonJSON 내 data-root 필드를 조작하여 임의의 파일을 덮어쓸 수 있습니다. 이는 ..\dataRoot\network\files\local-kv.db 파일의 심볼릭 링크 취약점과 TOCTOU 레이스 컨디션을 악용하여 발생합니다.
💡 쉬운 설명
공격자가 Docker 설정을 조작하여 컴퓨터에 있는 중요한 파일을 마음대로 바꿀 수 있는 보안 약점입니다. 파일이 생성되는 찰나의 순간을 이용해 엉뚱한 파일로 연결되도록 속이는 방식입니다.
🇺🇸 원문 (English)
Docker Desktop for Windows before 4.6 allows attackers to overwrite any file through the windowscontainers/start dockerBackendV2 API by controlling the data-root field inside the DaemonJSON field in the WindowsContainerStartRequest class. This allows exploiting a symlink vulnerability in ..\dataRoot\network\files\local-kv.db because of a TOCTOU race condition.
📍 영향받는 시스템
Docker Desktop for Windows 4.6 미만 버전
⚔️ 공격 벡터
WindowsContainerStartRequest API의 data-root 필드 조작을 통한 심볼릭 링크 및 TOCTOU 레이스 컨디션 공격
🛡️ 대응 방법
Docker Desktop for Windows를 최신 버전(4.6 이상)으로 업데이트하십시오.
🔧 검증 코드
출력 결과가 'Vulnerable'이면 취약한 버전이며, 'Safe'이면 안전한 버전입니다.
docker version --format '{{.Client.Version}}' 2>/dev/null | awk -F. '{if ($1 < 4 || ($1 == 4 && $2 < 6)) print "Vulnerable"; else print "Safe"}'