🇰🇷 한글 설명
Repomix 1.14.1 미만 버전에서 gitCommand.ts의 execGitShallowClone 함수가 --remote-branch 값을 검증 없이 전달하여 발생합니다. 공격자는 이를 통해 Git 옵션을 주입하여 validateGitUrl()의 보안 검사를 우회하고 로컬 또는 SSH 전송 방식을 통해 명령을 실행할 수 있습니다.
💡 쉬운 설명
Repomix라는 도구가 코드를 정리할 때 입력값을 제대로 확인하지 않아 발생하는 문제입니다. 나쁜 의도를 가진 사용자가 특수 명령어를 섞어 넣으면 컴퓨터가 해커의 명령을 대신 실행할 수 있습니다.
🇺🇸 원문 (English)
Repomix is a tool that packs repositories into AI-friendly files. Prior to 1.14.1, src/core/git/gitCommand.ts execGitShallowClone passes the --remote-branch value directly to git fetch and git checkout without validation or --end-of-options, allowing --upload-pack or other Git option injection that bypasses validateGitUrl() dangerous parameter checks and can execute commands through local or SSH-style transports. This issue is fixed in version 1.14.1.
📍 영향받는 시스템
Repomix 1.14.1 미만 모든 버전
⚔️ 공격 벡터
git fetch 또는 checkout 시 --remote-branch 매개변수에 Git 옵션(--upload-pack 등)을 주입하여 명령 실행
🛡️ 대응 방법
Repomix를 최신 버전인 1.14.1 이상으로 업데이트하십시오.
🔧 검증 코드
출력된 버전이 1.14.1 미만이면 취약한 상태이며, 1.14.1 이상이면 안전합니다.