🔍 CVE-2026-78678

6.5
CVSS Score
MEDIUM
2026-08-25
2026-10-12 15:10
✅ 완료

🇰🇷 한글 설명

GitPython 3.1.59 미만 버전의 unsafe_git_revision_options 가드에 --contents 및 -S 옵션이 누락되어 보안 취약점이 존재합니다. 공격자는 Repo.blame() 함수에 이러한 옵션을 전달하여 /etc/passwd와 같은 임의의 파일을 읽을 수 있습니다.

💡 쉬운 설명

GitPython 라이브러리를 사용할 때 특정 명령어를 통해 컴퓨터 내부의 중요한 파일을 몰래 훔쳐볼 수 있는 결함이 발견되었습니다. 공격자가 특수하게 조작된 값을 입력하면 시스템의 비밀번호 파일 등을 읽어낼 수 있습니다.

🇺🇸 원문 (English)

GitPython versions before 3.1.59 contain an incomplete denylist in the unsafe_git_revision_options guard that omits --contents and -S options, allowing attackers to read arbitrary files by passing these options to Repo.blame(). Attackers can supply revision values like --contents=/etc/passwd to leak file contents through the blame result returned to the caller.

📍 영향받는 시스템

GitPython versions before 3.1.59

⚔️ 공격 벡터

Repo.blame() 함수에 --contents 또는 -S 옵션을 포함한 악의적인 리비전 값을 전달하여 파일 내용 유출

🛡️ 대응 방법

GitPython 라이브러리를 3.1.59 버전 이상으로 업데이트

🔧 검증 코드

출력된 Version이 3.1.59 미만이면 취약한 버전이 설치된 상태입니다.

Shell / Script
pip show gitpython | grep Version

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Git