🇰🇷 한글 설명
StepSecurity의 Harden-Runner v2.10.2 이전 버전에서 환경 변수를 통한 명령 주입 취약점이 발견되었습니다. 악의적인 입력이 사전 필터링되지 않아 GitHub Actions 워크플로우 실행 중 임의의 명령어 실행이 가능합니다. 현재 GitHub Actions의 실행 순서상 실제 악용 가능성은 낮고 알려진 공격은 없지만 패치 적용이 필요합니다.
💡 쉬운 설명
GitHub Actions의 보안 도구인 Harden-Runner에서 환경 변수를 통해 악의적인 명령어를 주입할 수 있는 문제가 있습니다. 현재는 악용이 어렵지만 v2.10.2 이상으로 업데이트하여 완벽하게 차단해야 합니다.
🇺🇸 원문 (English)
StepSecurity's Harden-Runner provides network egress filtering and runtime security for GitHub-hosted and self-hosted runners. Versions of step-security/harden-runner prior to v2.10.2 contain multiple command injection weaknesses via environment variables that could potentially be exploited under specific conditions. However, due to the current execution order of pre-steps in GitHub Actions and the placement of harden-runner as the first step in a job, the likelihood of exploitation is low as the Harden-Runner action reads the environment variable during the pre-step stage. There are no known exploits at this time. Version 2.10.2 contains a patch.
📍 영향받는 시스템
step-security/harden-runner < v2.10.2 (GitHub Actions 환경)
⚔️ 공격 벡터
GitHub Actions 워크플로우 환경 변수에 쉘 메타문자를 포함한 페이로드 주입
🛡️ 대응 방법
step-security/harden-runner를 v2.10.2 이상으로 업그레이드
🔧 검증 코드
명령어 결과가 v2.10.2 미만 버전을 표시하면 취약함. 2.10.2 이상이면 안전
grep -h 'step-security/harden-runner@' .github/workflows/*.yml 2>/dev/null | grep -oE 'v[0-9]+\.[0-9]+\.[0-9]+' | sort -u