🇰🇷 한글 설명
GitPython 3.2.0 미만 버전에서 정보 노출 취약점이 발견되었습니다. 악의적인 저장소가 별도의 Git 디렉토리를 사용하는 과정에서 환경 변수를 확장하도록 유도하여, .git/modules 디렉토리 이름이나 디버그 로그를 통해 민감한 정보를 노출시킬 수 있습니다.
💡 쉬운 설명
해커가 만든 특수한 저장소를 내려받을 때, 컴퓨터 내부의 비밀 정보가 파일 이름이나 기록에 드러날 수 있는 문제입니다. 이를 통해 시스템의 중요한 설정값이나 비밀번호가 유출될 위험이 있습니다.
🇺🇸 원문 (English)
GitPython before 3.2.0 contains an information disclosure vulnerability that allows malicious repositories to expand environment variables via separate_git_dir in Repo._clone(), which omits expand_vars=False when calling Git.polish_url(). Attackers can craft a .gitmodules submodule name containing variable syntax so that clone plus submodule_update exposes secrets in .git/modules directory names and DEBUG logs.
📍 영향받는 시스템
GitPython versions prior to 3.2.0
⚔️ 공격 벡터
변수 구문이 포함된 .gitmodules 서브모듈 이름을 가진 악성 저장소를 클론하여 환경 변수 확장 유도
🛡️ 대응 방법
GitPython을 3.2.0 이상의 최신 버전으로 업데이트하십시오.
🔧 검증 코드
출력된 버전이 3.2.0 미만이면 취약한 상태입니다.
pip show gitpython | grep Version