🇰🇷 한글 설명
Gitea에서 워크플로우의 정적 strategy.matrix를 확장할 때 크기 제한 없이 전체 카테시안 곱을 생성하는 취약점이 발견되었습니다. 포크된 저장소에서 풀 리퀘스트를 보낼 수 있는 사용자가 매우 큰 수의 작업을 생성하도록 설정하면 서버 메모리를 과다 점유하여 프로세스가 종료될 수 있습니다.
💡 쉬운 설명
공격자가 아주 작은 설정 파일로 수만 개의 작업을 한꺼번에 만들도록 유도하여 서버를 마비시킬 수 있는 문제입니다. 서버가 감당할 수 없는 양의 계산을 시키는 일종의 자원 고갈 공격입니다.
🇺🇸 원문 (English)
Gitea expanded a workflow's static `strategy.matrix` into its full Cartesian product without a size limit when creating a run, before the fork pull request approval gate applied. A user who can open a pull request from a fork could submit a small workflow file whose matrix expands to a very large number of jobs, consuming server memory and potentially terminating the Gitea process. No runner is required. Static matrices above 256 combinations are now rejected before expansion.
📍 영향받는 시스템
Gitea (matrix 조합 수가 256개를 초과하는 설정을 허용하는 이전 버전)
⚔️ 공격 벡터
포크된 저장소에서 대규모 matrix 조합을 포함한 워크플로우 파일을 제출하여 풀 리퀘스트 생성
🛡️ 대응 방법
Gitea를 최신 버전으로 업데이트하여 matrix 조합이 256개를 초과할 경우 확장 전 거부되도록 조치
🔧 검증 코드
출력된 버전이 matrix 크기 제한(256개) 패치가 적용된 최신 보안 업데이트 버전인지 확인