🇰🇷 한글 설명
libgit2의 Git Smart Protocol 처리 중 git_pkt_parse_line 함수에서 발생하는 버퍼 오버플로우 취약점입니다. 원격 공격자가 조작된 non-flush 패킷을 전송하여 메모리 손상 및 임의 코드 실행을 유발할 수 있습니다.
💡 쉬운 설명
Git 저장소와 통신할 때 서버의 응답 데이터 크기를 제대로 확인하지 않아 메모리 침범이 발생합니다. 공격자가 특수하게 만든 응답을 보내면 컴퓨터를 장악할 수 있습니다.
🇺🇸 원문 (English)
Buffer overflow in the git_pkt_parse_line function in transports/smart_pkt.c in the Git Smart Protocol support in libgit2 before 0.24.6 and 0.25.x before 0.25.1 allows remote attackers to have unspecified impact via a crafted non-flush packet.
📍 영향받는 시스템
libgit2 < 0.24.6, 0.25.0 ~ 0.25.0
⚔️ 공격 벡터
원격 Git 서버로 가장하여 조작된 non-flush 패킷(크기 정보 오류)을 클라이언트에게 전송
🛡️ 대응 방법
libgit2를 0.24.6 이상 또는 0.25.1 이상으로 업그레이드
🔧 검증 코드
설치된 libgit2 버전을 확인하여 0.24.6 미만 또는 0.25.0 버전이면 취약함 (git 명령어가 libgit2를 사용하지 않을 수 있으므로 패키지 매니저 확인이 필수)
dpkg -l | grep libgit2 || rpm -qa | grep libgit2 || git --version && git -C /tmp config --local test.value 2>&1 | head -1