🇰🇷 한글 설명
Docker 1.0.0의 관리 소켓이 모든 사용자에게 읽기/쓰기 권한을 가지고 있어, 로컬 사용자가 이를 악용하여 권한 상승 공격을 수행할 수 있습니다. 공격자는 Docker 데몬과 통신하여 호스트 시스템에 대한 완전한 통제권을 획득할 수 있습니다.
💡 쉬운 설명
Docker의 관리 명령을 보내는 통로가 아무나 접근할 수 있어서, 일반 사용자가 관리자 권한을 빼앗을 수 있습니다. 이를 통해 컴퓨터 전체를 제어할 수 있게 됩니다.
🇺🇸 원문 (English)
Docker 1.0.0 uses world-readable and world-writable permissions on the management socket, which allows local users to gain privileges via unspecified vectors.
⚔️ 공격 벡터
로컬 사용자가 /var/run/docker.sock 관리 소켓에 직접 접근하여 Docker 데몬과 통신하고 권한 상승 명령어 실행
🛡️ 대응 방법
Docker를 1.0.1 이상으로 업그레이드하거나 /var/run/docker.sock의 권한을 600으로 변경하여 소유자만 접근 가능하게 제한
🔧 검증 코드
권한이 srw------- 또는 srw-rw---- 형태여야 하며, 'w' 권한이 others에 없어야 안전합니다. world-writable(rw-rw-rw- 형태) 권한이 없는지 확인하세요.
stat -c '%A %n' /var/run/docker.sock 2>/dev/null || ls -la /var/run/docker.sock 2>/dev/null