Claude나 Gemini를 사용한다면, 이 Microsoft 침해로 인해 귀하의 데이터가 위험에 처할 수 있습니다
Miasma 웜으로 알려진 고도로 정교한 공급망 공격이 Microsoft 소유의 수십 개 GitHub 리포지토리를 성공적으로 침해했으며, Claude Code, Gemini CLI, Cursor, VS Code와 같은 AI 코딩 어시스턴트 내부에서 작동하도록 설계된 맬웨어를 배포했습니다.

Miasma 웜으로 알려진 고도로 정교한 공급망 공격이 Microsoft 소유의 수십 개 GitHub 리포지토리를 성공적으로 침해했으며, Claude Code, Gemini CLI, Cursor, VS Code와 같은 AI 코딩 어시스턴트 내부에서 작동하도록 특별히 설계된 맬웨어를 배포했습니다.
2026년 6월 5일, GitHub는 악의적인 기여자가 자가 복제 자격 증명 수집 맬웨어를 주입한 후, Azure의 핵심 인프라를 포함하여 4개의 Microsoft 조직에 걸친 73개의 리포지토리를 갑자기 비활성화해야 했습니다.
AI 에이전트를 사용하여 코드를 탐색하거나 작성하는 경우, 이 침해에 대해 알아야 할 사항과 환경을 보호하는 방법은 다음과 같습니다.
함정이 설치되는 방식
기존에는 개발자들이 패키지 설치 중 라이프사이클 스크립트(npm install 실행 등)에 숨겨진 맬웨어를 우려했습니다. Miasma 웜은 위험한 새로운 패러다임을 도입합니다: 프로젝트 폴더를 열기만 해도 페이로드가 실행됩니다.
공격자는 AI 코딩 에이전트가 프로젝트를 이해하는 데 사용하는 구성 파일을 무기화하여 이를 달성했습니다. 표준 설정 후크 내에 악의적인 명령을 숨김으로써 맬웨어는 AI 어시스턴트를 속여 자동으로 페이로드를 실행하게 합니다.
특정 도구를 표적으로 삼는 방법은 다음과 같습니다:
- Claude Code 및 Gemini CLI: 공격자는 악성
.claude/settings.json및.gemini/settings.json파일을 심었습니다. 여기에는 AI 에이전트가 리포지토리에 연결하는 순간 맬웨어를 조용히 실행하는 “SessionStart” 후크가 포함되어 있습니다. - Cursor:
.cursor/rules/setup.mdc에 대한 프롬프트 인젝션은 Cursor AI가 “프로젝트 환경을 초기화”하기 위해 맬웨어를 실행해야 한다고 믿도록 속입니다. - VS Code: 수정된
.vscode/tasks.json파일은 폴더가 열리자마자 페이로드를 자동 실행합니다.
맬웨어가 훔치는 것
페이로드 자체는 4.6MB의 난독화된 JavaScript 파일(.github/setup.js)로, 단 하나의 목적을 위해 만들어졌습니다: 공격적인 자격 증명 도용입니다.
AI 에이전트 또는 IDE에 의해 트리거되면 맬웨어는 즉시 다음을 찾습니다:
- 클라우드 키: AWS, Google Cloud Platform(GCP) 및 Microsoft Azure에 대한 자격 증명.
- 개발자 시크릿: 프로세스 메모리에서 직접 가져온 GitHub Actions 시크릿.
- 로컬 비밀번호 볼트: 1Password 및 gopass와 같은 비밀번호 관리자에서 잠금 해제된 데이터.
- 인프라 구성:
.env파일, Docker 구성 및 Kubernetes 환경에 숨겨진 비밀번호.
페이로드가 합법적인 OAuth 토큰과 클라우드 키를 훔치기 때문에 공격자는 기존 보안 스캐너를 우회할 수 있으며, 웜이 엔터프라이즈 네트워크를 통해 측면 확산되고 신뢰할 수 있는 개발자 ID로 추가 악성 코드를 게시할 수 있습니다.
자신을 보호하는 방법
AI 에이전트 측면은 개발자가 오픈 소스 코드를 처리하는 방식의 전환을 요구합니다. AI 어시스턴트 내에서 신뢰할 수 없거나 손상된 리포지토리를 여는 것은 이제 임의의 실행 파일을 실행하는 것과 동일한 위험 프로필을 갖습니다.
최근에 Claude Code, Gemini CLI 또는 Cursor를 사용하여 Microsoft 또는 Azure 리포지토리(특히 durabletask 프레임워크 관련)를 클론하거나 상호 작용했다면, 환경이 손상되었을 수 있다고 가정하세요.
즉시 조치 단계
- 의심스러운 구성 확인: AI 도구에서 외부 리포지토리를 열기 전에 루트 폴더에 예상치 못한
.claude,.gemini,.cursor또는.vscode디렉토리가 있는지 검사하세요. 알 수 없는 JavaScript 또는 셸 파일을 가리키는 “SessionStart” 후크를 찾으세요. - 자격 증명 교체: 노출이 의심되는 경우, 즉시 GitHub Personal Access Tokens(PAT), SSH 키, CI/CD 서명 키 및 모든 활성 클라우드 공급자 자격 증명을 교체하세요.
- AI 권한 감사: AI 코딩 에이전트가 수동 승인 없이 자동 시작 스크립트를 실행하거나 민감한 로컬 디렉토리에 액세스하는 것이 명시적으로 제한되도록 하세요.


