🔍 CVE-2025-31479

8.2
CVSS Score
HIGH
2025-04-02
2026-04-15 00:35
✅ 완료

🇰🇷 한글 설명

canonical/get-workflow-version-action GitHub composite action에서 step 실패 시 GITHUB_TOKEN이 exception output에 포함될 수 있으며, 완전히 redact되지 않아 토큰의 일부가 평문으로 GitHub Actions 로그에 노출될 수 있습니다. 저장소에 read access가 있는 모든 사용자가 이 토큰을 확인할 수 있습니다.

💡 쉬운 설명

GitHub Actions 자동화 도구에서 실패할 때 보안 토큰의 일부가 실수로 로그에 노출될 수 있습니다. 로그에 접근 가능한 누구나 이 노출된 토큰을 악용할 수 있습니다.

🇺🇸 원문 (English)

canonical/get-workflow-version-action is a GitHub composite action to get commit SHA that GitHub Actions reusable workflow was called with. Prior to 1.0.1, if the get-workflow-version-action step fails, the exception output may include the GITHUB_TOKEN. If the full token is included in the exception output, GitHub will automatically redact the secret from the GitHub Actions logs. However, the token may be truncated—causing part of the GITHUB_TOKEN to be displayed in plaintext in the GitHub Actions logs. Anyone with read access to the GitHub repository can view GitHub Actions logs. For public repositories, anyone can view the GitHub Actions logs. The opportunity to exploit this vulnerability is limited—the GITHUB_TOKEN is automatically revoked when the job completes. However, there is an opportunity for an attack in the time between the GITHUB_TOKEN being displayed in the logs and the completion of the job. Users using the github-token input are impacted. This vulnerability is fixed in 1.0.1.

📍 영향받는 시스템

canonical/get-workflow-version-action 1.0.0 이하 (github-token input 사용 시)

⚔️ 공격 벡터

step 실패를 유도하여 exception output 발생 → 불완전하게 redact된 GITHUB_TOKEN 평문 노출 → read access 사용자가 로그 조회

🛡️ 대응 방법

canonical/get-workflow-version-action을 1.0.1 이상으로 업그레이드

🔧 검증 코드

현재 workflow에서 사용 중인 get-workflow-version-action의 버전이 표시됨. 1.0.1 미만이면 취약함.

Shell / Script
grep -E 'uses:.*get-workflow-version-action@' .github/workflows/*.yml 2>/dev/null | grep -oE '@[0-9.]+' | sort -u

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:N/I:H/A:H

💻 영향받는 소프트웨어

Git