🇰🇷 한글 설명
Grafana Alloy의 prometheus.operator.servicemonitors 구성 요소에서 발생하는 취약점으로, ServiceMonitor 리소스를 생성하거나 수정할 수 있는 사용자가 bearerTokenFile을 통해 임의의 로컬 파일을 지정할 수 있습니다. Alloy는 지정된 파일의 내용을 읽어 공격자가 제어하는 엔드포인트로 전송하며, 이를 통해 서비스 어카운트 토큰과 같은 민감한 정보가 유출될 수 있습니다.
💡 쉬운 설명
권한이 있는 사용자가 설정 파일을 조작하여 시스템 내부의 중요한 비밀번호나 인증 키를 외부로 몰래 빼돌릴 수 있는 보안 약점입니다. 이 과정에서 시스템의 관리 권한까지 탈취당할 위험이 있습니다.
🇺🇸 원문 (English)
Grafana Alloy’s prometheus.operator.servicemonitors component allows a user who can create or modify ServiceMonitor resources in a watched namespace to specify an arbitrary local file through bearerTokenFile. Alloy reads the file and sends its contents as a bearer token to an attacker-controlled scrape endpoint. This may disclose files accessible to the Alloy process, including its projected Kubernetes service account token, potentially granting the attacker Alloy’s Kubernetes permissions. Exploitation requires ServiceMonitor write access and lower privileges than Alloy’s service account.
📍 영향받는 시스템
Grafana Alloy (prometheus.operator.servicemonitors 구성 요소를 사용하는 버전)
⚔️ 공격 벡터
ServiceMonitor 리소스의 bearerTokenFile 필드에 임의의 로컬 파일 경로를 입력하여 데이터 유출 유도
🛡️ 대응 방법
Grafana Alloy를 최신 보안 패치가 적용된 버전으로 업데이트하고, ServiceMonitor 리소스에 대한 생성/수정 권한을 엄격히 제한하십시오.
🔧 검증 코드
출력된 Alloy의 버전을 확인하여 해당 취약점이 해결된 최신 버전인지 대조하십시오.
grafana-alloy --version 2>/dev/null || dpkg -l | grep grafana-alloy