노출된 .git 리포지토리를 감사하고 복구하기 위한 3단계 도구 키트
세 단계 감사 실행: Finder는 노출된 .git 폴더를 찾고, Dumper는 원격 git 객체를 가져오며, Extractor는 저장소 트리를 재구성합니다. yyqh01이 만든 GitTools는 Python, Git Bash 또는 WSL을 통해 Windows에서 명령줄 유틸리티 모음으로 실행됩니다. 이는 잘못 구성된 .git 디렉토리를 감지하고, 디렉토리 목록이 비활성화된 경우에도 저장소 데이터를 가져오며, 포렌식 분석을 위해 프로젝트 기록을 재구성해야 하는 보안 연구원, 침투 테스트 전문가 및 시스템 관리자를 대상으로 합니다.
도구가 노출된 리포지토리를 찾고 획득하는 방법
Finder는 제공된 URL 또는 IP 범위를 스캔하여 접근 가능한 .git 폴더를 감지한 다음, 대상을 Dumper에 전달합니다. Dumper는 알려진 경로와 무차별 대입 열거를 사용하여 객체를 가져오며, 이를 통해 디렉토리 목록이 차단된 경우에도 파일을 검색할 수 있습니다. 이 세 단계의 인계는 단일 단일 루틴에 의존하기보다는 발견, 획득 및 하류 재구성의 포렌식 작업 흐름에 직접적으로 매핑됩니다.
작동 중 호스트 시스템에 미치는 영향
GitTools는 최소한의 종속성을 가진 경량 스크립트로 실행되므로 무거운 설치 프로그램 없이 데스크탑 환경에 배포됩니다. 이 도구는 표준 HTTP(S) 및 기타 지원되는 프로토콜을 통해 원격 웹 서버와 상호 작용하며, 대상에서 .git 데이터의 읽기 전용 검색을 수행합니다. 스크립트 기반이기 때문에 터미널 세션에서 스캔 및 덤프를 실행하고 비혼잡 시간에 기존 자동화에 따라 예약할 수 있습니다.
안전성, 범위 및 누가 운영할 수 있는지
이 도구는 연구자와 관리자에 의해 감사 및 복구 용도로 사용하기 위해 설계되었습니다: 명령줄에서 작동하며 그래픽 응용 프로그램이 아닙니다. 추출기는 다운로드된 git 객체에서 커밋 및 브랜치를 재구성하여 소스 코드와 메타데이터를 복원하는 데 도움을 줍니다. 작업이 노출된 서버 데이터에 접근하기 때문에 사용자는 대상을 감사할 권한이 있어야 합니다; 개발자는 보안 테스트 및 CTF 연습을 위한 사용을 문서화합니다.
보안 감사 및 복구에 신뢰할 수 있지만 명령줄 중심
GitTools는 잘못 구성된 .git 디렉토리에서 데이터를 찾고 복구할 수 있는 휴대 가능하고 스크립트 기반의 방법이 필요한 기술 사용자에게 적합합니다. 경량 설계로 인해 Windows 터미널 환경에서 배포가 간단합니다. 주요 단점은 그래픽 인터페이스가 없다는 것으로, 이는 포인트 앤 클릭 워크플로를 선호하는 관리자가 터미널 워크플로가 필요함을 의미합니다. 노출된 리포지토리에 대한 포렌식 검사를 위해 이 도구는 적절한 권한과 함께 사용될 때 신뢰할 수 있는 작업을 수행합니다.