🇰🇷 한글 설명
Helm v3의 getHostByName 함수가 DNS 조회를 수행할 때 차트에 포함된 민감한 정보가 외부 DNS 서버로 노출될 수 있는 취약점입니다. 악의적인 차트 제작자가 이 함수를 사용하여 사용자의 기밀 데이터를 탈취할 수 있습니다. 이 문제는 Helm 3.11.1 버전에서 수정되었습니다.
💡 쉬운 설명
Helm이라는 도구를 사용할 때, 차트 안에 숨겨진 중요한 정보가 외부 DNS 서버로 몰래 전송될 수 있는 보안 결함입니다. 나쁜 의도를 가진 차트를 설치하면 사용자의 비밀번호나 설정값이 공격자에게 전달될 위험이 있습니다.
🇺🇸 원문 (English)
Helm is a tool that streamlines installing and managing Kubernetes applications.`getHostByName` is a Helm template function introduced in Helm v3. The function is able to accept a hostname and return an IP address for that hostname. To get the IP address the function performs a DNS lookup. The DNS lookup happens when used with `helm install|upgrade|template` or when the Helm SDK is used to render a chart. Information passed into the chart can be disclosed to the DNS servers used to lookup the IP address. For example, a malicious chart could inject `getHostByName` into a chart in order to disclose values to a malicious DNS server. The issue has been fixed in Helm 3.11.1. Prior to using a chart with Helm verify the `getHostByName` function is not being used in a template to disclose any information you do not want passed to DNS servers.
📍 영향받는 시스템
Helm v3 (3.11.1 미만 버전)
⚔️ 공격 벡터
악의적으로 조작된 Helm 차트 내에 getHostByName 함수를 삽입하여 DNS 쿼리를 통한 데이터 유출 유도
🛡️ 대응 방법
Helm을 최신 버전인 3.11.1 이상으로 업데이트하고, 신뢰할 수 없는 차트 사용을 지양함
🔧 검증 코드
출력된 버전 번호가 v3.11.1 이상인지 확인하여 취약점 여부를 판단합니다.
helm version --short | grep -E 'v3\.[0-9]{2}\.[0-9]{2}'