TL;DR

  • 프로젝트 문의로 위장한 공격자가 Dropbox에 공유한 Git 저장소의 post-checkout 훅을 이용해 노트북에서 임의 코드를 실행하려 했으며, GitHub 계정과 REVSYS 고객 관련 접근 권한이 표적일 가능성이 있음.
  • 공격자는 교육 기술(Ed Tech) 분야 웹 앱 프로젝트 문의와 미팅 전 프로젝트 개요 검토 및 비밀유지계약서(NDA) 서명을 제안함.
  • Dropbox 폴더에는 Markdown 파일과 .git 디렉터리가 있었으며, NDA는 이메일이 아니라 저장소의 NDA 브랜치에서 작성하라고 안내함.
  • .git/hooks에서 예제 훅 여러 개와 실제 post-checkout 훅 하나가 발견됐으며, 훅은 Vercel 앱을 명령·제어(C2)에 이용함.
  • 해당 훅은 운영체제별 바이너리를 내려받아 실행한 뒤 삭제했으며, Dropbox와 Vercel 보안팀에 신고하고 자격 증명을 각별히 보호하라고 당부함.

프로젝트 문의와 NDA 요청

  • 교육 기술 분야 웹 앱 프로젝트를 의뢰하려는 듯한 통상적인 문의를 받음. 해당 분야 업무를 상당량 수행하고 있으며 일정이 빡빡한 편이지만, 프로젝트 시작을 늦출 수 있는 고객이라면 보통 후속 연락을 진행함.
  • 상대에게 통화 일정을 잡자고 제안하고 Calendly 링크를 전달함. 상대는 미팅 전에 프로젝트 개요와 세부 사항을 검토하고 NDA에 서명해 달라고 요청함.
  • Dropbox 폴더에는 Markdown 파일이 담긴 여러 하위 폴더가 있었음. 프로젝트 명세는 세부 정보가 부족하고 모호했지만, 상대가 원한다고 주장한 최소 기능 제품(MVP)을 설명할 만큼은 작성돼 있었음.
  • 처음에는 Dropbox 링크 안에 있는 .git 폴더를 알아차리지 못함. 폴더에서 NDA나 NDA 양식을 찾지 못해 이메일로 보내 달라고 요청함.

NDA는 NDA 브랜치에 있으니 해당 브랜치로 전환해 작성한 뒤 미팅 전에 돌려달라는 안내를 받음.

악성 Git 훅 발견

  • 이 안내를 계기로 실제 프로젝트가 아니라는 점과 무슨 일이 벌어지고 있는지 파악함. .git/hooks 폴더를 확인한 결과, *.example 훅 여러 개와 실제 post-checkout 훅 하나가 들어 있었음.
  • Git post-checkout 훅은 실제 사용 사례가 드문 편이라 조심스럽게 내용을 열어 확인함.
  • 훅은 Vercel 앱을 명령·제어(C2) 수단으로 사용해 운영체제별 바이너리를 내려받고, 실행 가능하도록 설정한 뒤 실행하고, 마지막에 바이너리를 삭제하는 동작을 수행함.

보안팀 신고와 주의 당부

  • 누군가 피해를 보기 전에 해당 계정들을 차단할 수 있도록 Dropbox와 Vercel 보안팀에 즉시 알림.
  • 공격자는 속임수의 일부로 의심하지 않는 개발 업체 대표를 사칭하기도 함.
  • 이번에는 공격에 당하지 않았지만, Git이 흔히 쓰이는 작업 흐름인 만큼 누군가 이 수법에 속을 가능성이 있다고 경고함.
  • 전반적으로 경계를 늦추지 말고 자격 증명을 철저히 보호하라고 당부함.

게시 정보

  • 게시일: 2026년 10월 2일.
  • 게시자: Frank Wiles. REVSYS 창립자이며 Django 운영위원회 위원, PSF 펠로우, 전 Django 소프트웨어 재단 회장임.
  • 복잡한 웹 애플리케이션 구축·확장·유지보수 전문가임.