🇰🇷 한글 설명
malcontent에서 Docker 레지스트리 자격증명을 노출하는 취약점이 발견되었습니다. 이는 malcontent가 특별히 제작된 OCI 이미지 참조를 스캔할 때 발생합니다. malcontent는 google/go-containerregistry를 사용하여 OCI 이미지를 가져오는데, 기본적으로 Docker 자격증명 키체인을 사용합니다. 악의적인 레지스트리는 `WWW-Authenticate` 헤더를 사용하여 토큰 인증을 공격자 제어 엔드포인트로 리디렉션할 수 있습니다. 이로 인해 자격증명이 해당 엔드포인트로 전송됩니다. 버전 1.20.3에서 이 문제가 수정되었습니다.
💡 쉬운 설명
malcontent에서 Docker 레지스트리 자격증명을 노출하는 취약점이 발견되었습니다. 이는 악의적인 레지스트리가 토큰 인증을 공격자 제어 엔드포인트로 리디렉션할 수 있습니다. 버전 1.20.3에서 이 문제가 수정되었습니다.
🇺🇸 원문 (English)
malcontent discovers supply-chain compromises through. context, differential analysis, and YARA. Starting in version 0.10.0 and prior to version 1.20.3, malcontent could be made to expose Docker registry credentials if it scanned a specially crafted OCI image reference. malcontent uses google/go-containerregistry for OCI image pulls, which by default uses the Docker credential keychain. A malicious registry could return a `WWW-Authenticate` header redirecting token authentication to an attacker-controlled endpoint, causing credentials to be sent to that endpoint. Version 1.20.3 fixes the issue by defaulting to anonymous auth for OCI pulls.
📍 영향받는 시스템
malcontent 버전 0.10.0부터 1.20.3 이전
⚔️ 공격 벡터
악의적인 레지스트리가 `WWW-Authenticate` 헤더를 사용하여 토큰 인증을 공격자 제어 엔드포인트로 리디렉션
🛡️ 대응 방법
malcontent 버전을 1.20.3 이상으로 업데이트하세요
🔧 검증 코드
로컬에서 malcontent 버전을 확인하여 취약점 여부를 점검합니다. Python이 설치되어 있어야 합니다. 코드를 실행하기 전에 malcontent가 설치되어 있는지 확인하세요.
python -c "import subprocess; output = subprocess.check_output(['malcontent', '--version']).decode('utf-8'); if '1.20.3' <= output.strip(): print('{{"result": "양호", "reason": "malcontent 버전이 1.20.3 이상"}}'); else: print('{{"result": "취약", "reason": "malcontent 버전이 1.20.3 미만"}}')"