🇰🇷 한글 설명
Docker Engine 19.03.9 미만 버전의 util/binfmt_misc/check.go 내 Builder에서 발생합니다. ioutil.TempDir 호출 시 첫 번째 인자가 비어 있어 생성되는 qemu-check 임시 경로가 잠재적으로 안전하지 않아 os.OpenFile을 통해 보안 취약점이 발생할 수 있습니다.
💡 쉬운 설명
Docker가 임시 파일을 만들 때 이름이 예측 가능한 방식으로 만들어지는 문제입니다. 공격자가 이 점을 이용해 시스템의 중요한 파일을 가로채거나 조작할 위험이 있습니다.
🇺🇸 원문 (English)
util/binfmt_misc/check.go in Builder in Docker Engine before 19.03.9 calls os.OpenFile with a potentially unsafe qemu-check temporary pathname, constructed with an empty first argument in an ioutil.TempDir call.
📍 영향받는 시스템
Docker Engine 19.03.9 미만 버전
⚔️ 공격 벡터
예측 가능한 임시 파일 경로를 이용한 심볼릭 링크 공격 또는 파일 권한 탈취
🛡️ 대응 방법
Docker Engine을 19.03.9 버전 이상으로 업데이트하십시오.
🔧 검증 코드
출력 결과에 'Vulnerable'이 표시되면 취약한 버전이며, 아무것도 출력되지 않으면 안전한 버전입니다.
docker version --format '{{.Server.Version}}' | grep -E '^([0-9]+\.[0-9]+\.[0-9]+)$' | awk -F. '$1==19 && $2==03 && $3 < 9 {print "Vulnerable"}'