Glassworm 악성코드: GitHub 151개 저장소 감염, 유니코드 공격 대응법
GitHub 저장소 151개, npm 패키지, VS Code 확장까지 감염시킨 Glassworm 유니코드 악성코드 공격의 원리와 대응법을 정리했습니다. 바이브코딩·AI 코딩 사용자 필독.
Glassworm 유니코드 악성코드 — GitHub 151개 프로젝트 감염 경보
눈에 보이지 않는 유니코드 특수 문자를 코드에 몰래 심어 비밀번호와 개인정보를 빼가는 Glassworm 악성코드 공격이 GitHub 저장소 151개 이상을 감염시켰습니다. AI 코딩을 하든, 직접 코드를 짜든 — 외부 패키지를 설치하는 모든 분이 알아야 할 보안 소식입니다.
Glassworm 유니코드 악성코드란 — 보이지 않는 코드가 숨어드는 원리
'Glassworm'이라 불리는 이 공격은 유니코드(컴퓨터가 전 세계 문자를 표현하는 국제 규격)의 특수한 영역을 악용합니다. 쉽게 말하면 이런 겁니다.
여러분이 코드 편집기를 열면 아무것도 안 보이는 빈 줄이 있습니다. 그런데 그 '빈 줄' 안에 사람 눈에는 보이지 않지만 컴퓨터는 읽을 수 있는 유니코드 특수 문자가 잔뜩 들어 있습니다. 컴퓨터가 이 투명한 문자를 해독하면 — "사용자의 비밀번호를 외부 서버로 보내라"는 명령이 실행됩니다.
VS Code, GitHub 웹 에디터, 터미널 — 어떤 편집기로 열어봐도 보이지 않습니다. 코드 리뷰를 아무리 꼼꼼히 해도 사람 눈으로는 발견할 수 없다는 게 이 공격의 핵심입니다.
▲ GitHub에서 Glassworm 악성 유니코드 패턴을 검색하면 102개 이상의 감염 파일이 나옵니다 (출처: Aikido Security)
AI가 만드는 가짜 코드 업데이트 — 소셜 엔지니어링의 진화
더 무서운 점은 공격자가 AI를 이용해 '진짜 같은' 가짜 코드 업데이트를 만든다는 것입니다. 단순히 악성 코드를 덧붙이는 게 아니라, 해당 프로젝트의 코딩 스타일을 AI가 분석한 뒤 "문서 오타 수정", "버전 업데이트" 같은 자연스러운 변경 내용과 함께 악성 코드를 슬쩍 끼워 넣습니다.
프로젝트 관리자가 봐도 "아, 누군가 문서를 고쳐줬구나" 하고 넘어갈 수 있을 만큼 정교합니다.
GitHub·npm·VS Code 감염 피해 규모
151+
감염된 GitHub 저장소
2개
감염된 npm 패키지
1개
감염된 VS Code 확장
감염된 주요 프로젝트 중에는 GitHub 스타 1,460개를 받은 인기 프로젝트(pedronauck/reworm)도 포함되어 있습니다. 감염된 npm 패키지에는 MCP(AI 도구 연결 규격) 관련 패키지(@iflow-mcp/watercrawl-watercrawl-mcp)도 있어, AI 코딩 도구를 사용하는 분들도 주의가 필요합니다.
▲ Aikido 보안 도구가 Glassworm에 감염된 패키지를 위험도 100/100으로 탐지한 화면 (출처: Aikido Security)
Glassworm 공격 타임라인 — 1년 넘게 진화한 캠페인
Glassworm은 하루아침에 생긴 게 아닙니다. 보안 업체 Aikido Security가 추적한 타임라인을 보면:
2025년 3월 — 처음으로 투명 유니코드를 쓴 악성 npm 패키지 발견
2025년 5월 — 보안 커뮤니티에서 위험성 경고
2025년 10월 — VS Code 확장 프로그램까지 감염 확인
2026년 3월 3~9일 — 대규모 공세, 일주일 만에 151개 이상 GitHub 저장소 감염
점점 규모가 커지고 수법이 정교해지는 추세입니다. AI를 활용한 자동화 덕분에 공격 속도가 빨라진 것으로 분석됩니다.
바이브코딩·AI 코딩 사용자를 위한 보안 대응법
AI에게 "이 패키지 설치해줘"라고 시키면, AI는 패키지 안에 투명 악성 코드가 있는지 확인하지 못합니다. 사람 눈에 안 보이는 건 AI 눈에도 안 보입니다. 바이브코딩을 시작하려는 분들이라면 보안 습관을 함께 익혀두는 것이 중요합니다.
자신을 보호하려면:
지금 당장 할 수 있는 것 — Safe Chain 설치
Aikido가 무료로 공개한 Safe Chain이라는 도구를 설치하면, npm이나 yarn으로 패키지를 설치할 때 자동으로 위험한 패키지를 걸러줍니다.
npm install -g @aikidosec/safe-chain
설치 후에는 평소처럼 npm install을 쓰면 됩니다. Safe Chain이 백그라운드에서 자동으로 검사합니다.
npm 패키지 보안 점검 체크리스트
• 잘 모르는 패키지는 설치 전 npm 다운로드 수와 최근 업데이트 날짜를 확인하십시오
• GitHub에서 Pull Request(코드 변경 요청)를 받았을 때, 변경된 파일이 package.json이나 postinstall 스크립트를 건드렸다면 각별히 주의하십시오
• 이미 설치한 패키지 중 @aifabrix/miso-client v4.7.2 또는 @iflow-mcp/watercrawl-watercrawl-mcp v1.3.0~1.3.4가 있다면 즉시 삭제하십시오
오픈소스 보안, 보이지 않는 위협에 대비하는 법
오픈소스 생태계는 서로의 코드를 믿고 쓰는 신뢰 위에 돌아갑니다. Glassworm 같은 공격은 그 신뢰를 무너뜨립니다. 바이브코딩이 대세가 되면서 "AI가 알아서 패키지를 깔아주니까 괜찮겠지"라고 생각하기 쉽지만, 설치하는 패키지가 안전한지 확인하는 건 여전히 사람의 몫입니다.
AI 코딩과 바이브코딩을 안전하게 시작하고 싶다면 무료 학습 가이드를 확인해보십시오.