🇰🇷 한글 설명
GitPython 3.1.54 미만 버전의 Diffable.diff 메서드에서 git 옵션에 대한 검증이 누락되어 임의 파일 덮어쓰기 취약점이 존재합니다. 공격자는 --output 인자를 악용하여 프로세스 권한으로 공격자가 지정한 경로에 패치 내용을 기록할 수 있습니다.
💡 쉬운 설명
GitPython 라이브러리를 사용할 때 공격자가 명령어를 조작하여 컴퓨터 내의 중요한 파일을 마음대로 바꿀 수 있는 보안 약점입니다. 이를 통해 시스템 설정 파일을 변조하거나 악성 코드를 심을 위험이 있습니다.
🇺🇸 원문 (English)
GitPython versions before 3.1.54 contain an arbitrary file overwrite vulnerability in the Diffable.diff method that fails to validate git options passed through kwargs. Attackers can supply the --output argument via the other parameter or output kwarg to write patch content to attacker-chosen file paths at process privilege level.
📍 영향받는 시스템
GitPython versions before 3.1.54
⚔️ 공격 벡터
Diffable.diff 메서드 호출 시 kwargs를 통해 --output 인자를 전달하여 임의 파일 경로 지정
🛡️ 대응 방법
GitPython을 3.1.54 이상의 최신 버전으로 업데이트하십시오.
🔧 검증 코드
출력된 Version 값이 3.1.54 미만이면 취약한 상태입니다.
pip show gitpython | grep Version