🇰🇷 한글 설명
Harden-Runner 2.12.0 이전 버전의 disable-sudo 정책이 Docker 그룹 멤버십을 통해 우회 가능합니다. runner 사용자가 특권 컨테이너를 실행하거나 호스트 파일시스템에 접근하여 sudo 제한을 무효화할 수 있으며, 관리자 권한을 복구할 수 있습니다.
💡 쉬운 설명
CI/CD 보안 도구인 Harden-Runner에서 관리자가 설정한 사용자 권한 제한(sudo 비활성화)을 Docker를 이용해 우회할 수 있습니다. 공격자가 이를 악용하면 다시 관리자 권한을 얻을 수 있습니다.
🇺🇸 원문 (English)
Harden-Runner is a CI/CD security agent that works like an EDR for GitHub Actions runners. Versions from 0.12.0 to before 2.12.0 are vulnerable to `disable-sudo` bypass. Harden-Runner includes a policy option `disable-sudo` to prevent the GitHub Actions runner user from using sudo. This is implemented by removing the runner user from the sudoers file. However, this control can be bypassed as the runner user, being part of the docker group, can interact with the Docker daemon to launch privileged containers or access the host filesystem. This allows the attacker to regain root access or restore the sudoers file, effectively bypassing the restriction. This issue has been patched in version 2.12.0.
📍 영향받는 시스템
Harden-Runner 0.12.0 ~ 2.11.x 버전
⚔️ 공격 벡터
runner 사용자의 Docker 그룹 멤버십을 이용한 특권 컨테이너 실행 또는 호스트 파일시스템 접근을 통한 sudo 정책 우회
🛡️ 대응 방법
Harden-Runner을 2.12.0 이상으로 업그레이드
🔧 검증 코드
반환된 버전 번호가 2.0~2.11 범위면 취약, 2.12.0 이상이거나 아무것도 반환되지 않으면 패치됨 또는 미설치
cat /opt/harden-runner/VERSION 2>/dev/null | grep -E "^2\.(0|1|11)\."