Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
cve-2024-52005-poc — CVE-2024-52005에 대한 개념 증명: Git의 ANSI 이스케이프 시퀀스 주입. 강화된 컨테이너 이미지에서 잘못된 'not_affected' VEX 주장을 시연합니다. | Kitploit
도구/GitHubGitHub/andrewd-cg/cve-2024-52005-poc
Container SecurityVulnerability AnalysisExploitationPenetration TestingSocial EngineeringSupply Chain SecurityLearning & Education
GitHubandrewd-cg/cve-2024-52005-poc

cve-2024-52005-poc

CVE-2024-52005에 대한 개념 증명: Git의 ANSI 이스케이프 시퀀스 주입. 강화된 컨테이너 이미지에서 잘못된 'not_affected' VEX 주장을 시연합니다.

저장소 보기
7개월 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2024-52005: Git의 ANSI 이스케이프 시퀀스 삽입

개요

이 저장소는 Git 작업 중 사이드밴드 채널을 통한 ANSI 이스케이프 시퀀스 삽입 취약점인 CVE-2024-52005에 대한 개념 증명(PoC)을 포함합니다.

CVE-2024-52005는 높은 심각도(CVSS 7.5)의 취약점으로, Git 2.48.1, 2.47.3, 2.46.5, 2.45.4, 2.44.3 이전 버전에 영향을 미칩니다.

문제점

이 PoC는 일부 강화된 컨테이너 이미지가 VEX(취약점 악용 가능성 교환) 문서에서 "영향 없음(not_affected)" 상태를 잘못 주장하면서도 취약한 Git 버전을 배송하고 있음을 증명하기 위해 만들어졌습니다.

실제 영향

이 취약점을 통해 공격자는 다음을 수행할 수 있습니다:

  • 보이지 않는 ANSI 코드를 사용하여 Git 출력에 악성 명령 숨기기
  • CI/CD 파이프라인에서 보안 검사 결과 위조
  • 가짜 오류 메시지 및 보안 경고로 사용자 사회 공학
  • 빌드 로그를 오염시켜 악성 코드를 통과 빌드로 위장
  • 중요 작업 중 터미널 디스플레이 조작

빠른 시작

옵션 1: Docker로 테스트 (로컬 클론 불필요)

이 GitHub 저장소를 사용하여 DHI ArgoCD 컨테이너에 대해 직접 테스트:

root@kitploit:~
docker run --rm -it dhi.io/argocd:3 sh -c '
  git clone https://github.com/andrewd-cg/cve-2024-52005-poc.git /tmp/poc &&
  cd /tmp/poc &&
  sh docker-test.sh
'

이 명령:

  1. GitHub에서 PoC를 컨테이너로 클론
  2. 컨테이너 내부에서 테스트 스크립트 실행
  3. ANSI 이스케이프 시퀀스가 통과하는지 표시

출력에서 ^[[31m 또는 ^[[32m이 보이면 취약점이 확인된 것입니다.

옵션 2: 로컬 테스트 (한 번의 명령)

저장소를 클론하고 로컬에서 테스트 실행:

root@kitploit:~
git clone https://github.com/andrewd-cg/cve-2024-52005-poc.git
cd cve-2024-52005-poc
./test_ansi_injection.sh

이 스크립트:

  1. ANSI 코드가 포함된 악성 훅이 있는 Git 저장소 생성
  2. 취약한 Git 버전을 사용하여 클론
  3. ANSI 이스케이프 시퀀스가 통과하는지 표시

전체 악용 프레임워크 사용

root@kitploit:~
# 사회 공학 페이로드로 악성 저장소 생성
./exploit_cve_2024_52005.py create social_engineering

# 취약한 컨테이너에 대해 테스트
./exploit_cve_2024_52005.py test

# 결과 확인
cat -v /tmp/cve-2024-52005-output.log

저장소 내용

  • test_ansi_injection.sh - 간단한 독립 테스트 스크립트
  • exploit_cve_2024_52005.py - 8개의 공격 페이로드를 포함한 완전한 악용 프레임워크
  • QUICKSTART.md - 예제가 포함된 빠른 시작 가이드
  • TECHNICAL_DETAILS.md - 완전한 기술 분석 및 악용 가이드

공격 시나리오

1. ArgoCD를 통한 공급망 공격

root@kitploit:~
공격자가 공개 GitHub 저장소 생성 → ArgoCD가 자동으로 클론 →
Git 훅이 ANSI 코드 주입 → 배포 로그에 백도어 숨김

2. CI/CD 파이프라인 오염

root@kitploit:~
개발자가 저장소 클론 → 악성 훅 실행 → 가짜 "Build PASSED" 주입 →
실제 실패 숨겨짐 → 취약한 코드가 프로덕션에 배포

3. 보안 도구 우회

root@kitploit:~
보안 스캐너가 저장소 클론 → 훅이 ANSI 코드 주입 →
"0 취약점" 표시 → 실제 취약점 숨겨짐 →
악성 코드가 검토 통과

악용 기법

프레임워크에는 8개의 사전 구축된 공격 페이로드가 포함되어 있습니다:

  1. fake_success - 가짜 성공 메시지 표시
  2. hide_command - 출력에서 악성 명령 숨기기
  3. cursor_manipulation - 경고를 가짜 성공으로 덮어쓰기
  4. social_engineering - 사용자가 공격자의 스크립트를 실행하도록 유도
  5. fake_vulnerability_scan - 실제 취약점 숨기기
  6. progress_bar - 가짜 진행 표시기 생성
  7. urgent_warning - 잘못된 긴급성 생성
  8. log_poisoning - CI/CD 로그에 가짜 성공 주입

이것이 중요한 이유

많은 컨테이너 이미지가 CVE-2024-52005에 대해 "영향 없음"을 주장하며 다음과 같은 근거를 제시합니다:

root@kitploit:~
{
  "justification": "vulnerable_code_cannot_be_controlled_by_adversary"
}

신뢰할 수 없는 저장소를 클론하도록 설계된 컨테이너의 경우 이는 올바르지 않습니다:

  • ArgoCD는 타사 Git 저장소를 클론합니다
  • CI/CD 도구는 외부 저장소를 처리합니다
  • 보안 스캐너는 신뢰할 수 없는 코드를 분석합니다

공격자는 Git 훅과 사이드밴드 메시지를 통해 취약한 코드 경로를 제어할 수 있습니다.

영향을 받는 버전

CVE-2024-52005의 영향을 받는 Git 버전:

  • 2.48.1 미만의 모든 버전
  • 2.47.3 미만의 모든 버전
  • 2.46.5 미만의 모든 버전
  • 2.45.4 미만의 모든 버전
  • 2.44.3 미만의 모든 버전

완화 조치

Git 사용자

패치된 버전으로 업데이트:

root@kitploit:~
# 버전 확인
git --version

# 패키지 관리자를 통해 업데이트
apt update && apt upgrade git  # Debian/Ubuntu
brew upgrade git                # macOS

컨테이너 이미지 관리자

  1. 이미지의 Git을 패치된 버전으로 업데이트
  2. VEX 문서를 올바르게 취약점 상태를 반영하도록 업데이트
  3. 이 PoC를 사용하여 이미지 테스트

임시 해결 방법

즉시 업데이트할 수 없는 경우:

  1. 신뢰할 수 있는 소스의 저장소만 클론
  2. 정리된 로깅을 통해 Git 출력 검토
  3. 샌드박스 환경에서 Git 작업 실행

환경 테스트

root@kitploit:~
# 모든 컨테이너 이미지 테스트
docker run --rm -v $(pwd)/ansi-test-repo:/repo:ro YOUR_IMAGE:TAG \
  sh -c 'git clone /repo /tmp/test 2>&1' | cat -v

# 출력에서 ^[[31m과 같은 ANSI 코드 확인

참고 자료

  • NVD의 CVE-2024-52005
  • Git 보안 권고
  • OpenVEX 사양

책임 있는 공개

이 PoC는 다음을 위해 만들어졌습니다:

  • 보안 연구 및 교육
  • 잘못된 취약점 평가 입증
  • 조직이 위험을 적절히 평가하도록 지원
  • 정확한 VEX 문서화 장려

승인된 보안 테스트 전용입니다. 소유하거나 테스트 권한이 없는 시스템에는 사용하지 마십시오.

라이선스

MIT 라이선스 - 자세한 내용은 LICENSE 파일 참조

작성자

컨테이너 이미지 보안 연구의 일환으로 작성되었으며, 정확한 취약점 공개 및 평가의 중요성을 보여줍니다.

기여

문제를 발견하거나 개선 사항이 있으신가요? 풀 리퀘스트를 환영합니다!

  • 발견한 잘못된 VEX 평가 보고
  • 새로운 악용 기법 추가
  • 탐지 방법 개선
  • 문서 개선
도구 다운로드