🇰🇷 한글 설명
GitPython 3.1.59 미만 버전에서 멀티라인 git-config 값을 안전하게 재직렬화하지 못해 발생하는 취약점입니다. 공격자가 삽입한 개행 문자가 git-config 쓰기 작업 시 core.hooksPath와 같은 실행 가능한 지시문으로 변질되어 임의 코드 실행을 허용할 수 있습니다.
💡 쉬운 설명
설정 파일에 몰래 숨겨진 줄바꿈 문자가 프로그램이 파일을 저장할 때 명령어로 변해버리는 문제입니다. 이를 통해 해커가 사용자의 컴퓨터에서 악성 프로그램을 몰래 실행할 수 있습니다.
🇺🇸 원문 (English)
GitPython before 3.1.59 fails to safely re-serialize multi-line git-config values during write operations, corrupting dormant quoted values into injected directives like core.hooksPath. Attackers can craft config files with embedded newlines that become live git directives after any unrelated GitPython config write, enabling arbitrary code execution via hook invocation.
📍 영향받는 시스템
GitPython 3.1.59 미만 모든 버전
⚔️ 공격 벡터
조작된 개행 문자가 포함된 git-config 파일을 통해 GitPython의 설정 쓰기 기능을 유도하여 공격
🛡️ 대응 방법
GitPython을 3.1.59 이상 버전으로 즉시 업데이트
🔧 검증 코드
출력된 버전 번호가 3.1.59보다 낮으면 취약한 상태입니다.
pip show gitpython | grep Version