
Glassworm은 단순한 악성코드 유포 사건이 아닙니다. 개발자 도구와 계정을 발판으로 삼아 오픈소스 생태계 전반으로 접근을 넓히려 한 공급망 공격입니다.
CrowdStrike는 Google, Shadowserver Foundation과 함께 Glassworm의 명령·제어(C2) 채널 4개를 차단했다고 밝혔습니다.1 이 사건의 핵심은 봇넷 하나가 중단됐다는 사실을 넘어섭니다. 공격자가 개발자가 매일 사용하는 확장 프로그램, 패키지, 저장소 접근 권한을 공격 인프라로 활용했다는 점이 중요합니다.
Glassworm이 노린 것은 개발자의 권한
Glassworm 캠페인은 2025년 초부터 소프트웨어 개발자를 체계적으로 표적으로 삼았습니다.2 이유는 분명합니다. 개발자는 소스코드 저장소, 클라우드 플랫폼, CI/CD 파이프라인, 패키지 레지스트리에 접근할 수 있습니다.2 공격자 입장에서는 개발자 한 명의 계정이 여러 조직과 프로젝트로 이어지는 통로가 됩니다.
Glassworm은 이 지점을 파고들었습니다. Microsoft VS Code Marketplace와 Open VSX에 트로이목마화된 VS Code 확장을 게시했고, Cursor, Positron, Windsurf, VSCodium 같은 VS Code 계열 도구 사용자도 표적으로 삼을 수 있었습니다.2
확장 프로그램만 이용한 것도 아닙니다. npm 및 Python 패키지를 손상시켜 악성 코드를 유입했고,3 post-install hook과 setup script를 통해 설치 과정에서 코드가 실행되도록 만들었습니다.3 개발자가 평소처럼 확장 프로그램을 설치하거나 패키지를 내려받는 행위가 감염 경로가 된 것입니다.
감염의 목적은 지속적인 접근과 정보 탈취
Glassworm의 목적은 단순히 악성코드를 한 번 실행하는 데 있지 않았습니다. 자격 증명 수집, 암호화폐 지갑 탈취, 시스템 프로파일링이 주요 목표였습니다.2
핵심 도구로 언급된 GlasswormRAT는 WebSocket 기반 JavaScript 원격접근 트로이목마로 설명됩니다.2 감염된 시스템에서 브라우저 데이터를 훔치고 임의 코드를 실행할 수 있었습니다.2 또한 Chrome 확장을 설치해 스크린샷, 키 입력, 클립보드 내용까지 수집할 수 있었습니다.2
이런 정보 탈취는 다시 공급망 공격으로 이어질 수 있습니다. CrowdStrike에 따르면 Glassworm 해커들은 300개 이상의 GitHub 코드 저장소에 악성코드를 심었습니다.2 개발자의 계정과 토큰이 탈취되면, 공격자는 개인 PC를 넘어 저장소와 배포 경로까지 오염시킬 수 있습니다.
왜 차단이 어려웠나
Glassworm은 C2 인프라를 여러 경로로 분산했습니다. CrowdStrike에 따르면 공격자는 Solana 블록체인, BitTorrent, Google Calendar, 가상 사설 서버(VPS)를 명령·제어 채널로 사용했습니다.1
이 구조에서는 특정 서버 하나를 차단하는 방식만으로는 충분하지 않습니다. 한 경로가 막혀도 다른 채널을 통해 감염 시스템에 다시 명령을 내릴 수 있기 때문입니다. 이번 대응이 네 개의 C2 채널을 동시에 끊는 방식으로 진행된 이유도 여기에 있습니다.1
이는 공급망 공격 대응의 중요한 기준을 보여줍니다. 악성 확장이나 패키지를 삭제하는 것만으로는 부족합니다. 공격자가 탈취한 자격 증명, 오염된 저장소, 재연결 가능한 C2 인프라까지 함께 차단해야 합니다.
조직이 바로 점검해야 할 것
Glassworm 사례가 주는 실무적 교훈은 명확합니다. 개발 환경은 더 이상 내부 생산성 도구에 그치지 않습니다. 공격자가 노리는 핵심 공격 표면입니다.
우선 다음 항목을 점검해야 합니다.
개발자가 설치한 VS Code 확장 및 VS Code 계열 도구 확장 목록
npm, Python 패키지의 post-install hook 및 setup script 실행 여부
GitHub 등 코드 저장소 접근 토큰의 권한 범위
CI/CD 파이프라인에 저장된 비밀값과 접근 제어
저장소 내 비정상 커밋, 강제 푸시, 의심스러운 패키지 변경
브라우저 확장 및 클립보드·키 입력 수집 가능성
특히 개발자 토큰은 최소 권한 원칙을 적용해야 합니다. 패키지 설치 스크립트 실행도 무조건 신뢰해서는 안 됩니다. 확장 프로그램과 오픈소스 패키지는 편리하지만, 그만큼 공격자가 자연스럽게 숨어들 수 있는 경로이기도 합니다.
Glassworm은 오픈소스를 사용하는 조직이 단지 외부 코드를 가져다 쓰는 것이 아니라, 개발자 생태계의 보안 상태까지 함께 떠안고 있음을 보여줍니다. 공급망 보안은 배포 이후의 문제가 아니라, 개발자가 도구를 설치하고 패키지를 내려받는 순간부터 시작됩니다.
1Glassworm botnet disrupted after resilient C2 infrastructure takedown
2GlassWorm Malware Takedown Disrupts Developer Supply Chain Attack Infrastructure
이 노트는 보도·비평·교육·연구 목적으로 작성되었습니다. 저작권 문의가 있으시면 에서 알려주세요.
