🔍 CVE-2026-87818

6.5
CVSS Score
MEDIUM
2026-09-09
2026-09-16 15:12
✅ 완료

🇰🇷 한글 설명

GitPython 3.1.59 버전의 high-level diff API에서 --no-index 옵션에 대한 제한이 없어 공격자가 임의의 파일 경로를 읽을 수 있습니다. 공격자는 --no-index와 --ignore-matching-lines 옵션을 조합하여 로컬 파일의 내용을 한 줄씩 알아낼 수 있는 불리언 오라클(Boolean oracle) 공격을 수행할 수 있습니다.

💡 쉬운 설명

GitPython 라이브러리의 허점을 이용해 컴퓨터에 저장된 비밀번호 같은 중요한 파일 내용을 몰래 읽어낼 수 있는 보안 취약점입니다. 공격자는 특정 조건이 맞는지 틀린지를 반복해서 확인하는 방식으로 파일 내용을 한 줄씩 알아낼 수 있습니다.

🇺🇸 원문 (English)

GitPython 3.1.59 fails to restrict the --no-index option in the high-level diff API, allowing attackers to read arbitrary filesystem paths as repository operands. Attackers can combine --no-index with -I/--ignore-matching-lines to create a content-dependent Boolean oracle, repeatedly querying local files to recover single-line secrets through distinguishable success or error responses.

📍 영향받는 시스템

GitPython 3.1.59 이하 버전

⚔️ 공격 벡터

diff API의 --no-index 옵션을 악용하여 로컬 파일 시스템의 임의 경로에 접근 및 데이터 유출

🛡️ 대응 방법

GitPython을 최신 보안 패치가 적용된 버전으로 업데이트하십시오.

🔧 검증 코드

출력된 버전이 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