Glassworm의 귀환: 코드 저장소를 위협하는 새로운 유니코드 투명 문자 공격

위협 행위자 'Glassworm'이 유니코드 투명 문자를 활용하여 GitHub, npm, VS Code 등 수백 개의 저장소를 공격하는 대규모 캠페인을 재개했습니다. 2026년 3월 발견된 이 공격은 눈에 보이지 않는 페이로드를 실행해 자격 증명을 탈취하며, 현재 GitHub에서만 최소 151개의 감염된 저장소가 확인되었습니다.

AI 요약

보안 기업 Aikido는 2025년부터 추적해온 위협 행위자 'Glassworm'이 유니코드 투명 문자를 이용한 새로운 대규모 공격을 감행하고 있다고 경고했습니다. 이 공격은 2025년 3월 npm 패키지에서 처음 발견된 이후, 같은 해 10월 Open VSX와 GitHub로 확산되었으며 2026년 3월 현재 다시 수백 개의 저장소를 위협하는 수준으로 성장했습니다. 공격자는 일반적인 코드 에디터나 터미널에서 보이지 않는 유니코드 문자를 백틱(``) 내부에 숨겨두고, 소형 디코더 함수를 통해 이를 복호화한 뒤 eval()로 실행하는 방식을 취합니다. 이번 공격으로 Wasmer, Reworm, 그리고 anomalyco의 opencode-bench 등 유명 오픈소스 프로젝트들이 피해를 입은 것으로 나타났습니다. 최종적으로 실행되는 페이로드는 Solana 네트워크를 전달 채널로 사용하여 사용자의 토큰, 자격 증명, 비밀 정보를 탈취하도록 설계되었습니다.

핵심 인사이트

  • 대규모 피해 발생: 2026년 3월 기준, GitHub 코드 검색을 통해 Glassworm의 디코더 패턴을 포함한 저장소가 최소 151개 발견되었으며 실제 피해 규모는 이를 상회함.
  • 타겟 프로젝트: Wasmer, Reworm, 그리고 OpenCode 및 SST를 운영하는 anomalyco의 'opencode-bench'와 같은 주요 저장소가 공격에 노출됨.
  • 공격 타임라인: 2025년 3월 npm에서 최초 발견, 2025년 10월 17일 Open VSX 확장 프로그램 공격, 10월 31일 GitHub 전환을 거쳐 현재의 대규모 웨이브에 이름.

주요 디테일

  • 기술적 수법: 0xFE00~0xFE0F0xE0100~0xE01EF 범위의 유니코드 문자를 사용하여 페이로드를 인코딩하며, 이는 대부분의 UI에서 빈 공간으로 표시됨.
  • 실행 메커니즘: 비가시적 문자가 포함된 문자열을 codePointAt(0) 메서드를 사용하는 특정 디코더 함수로 처리한 후 eval(Buffer.from(...).toString('utf-8'))을 통해 악성 코드를 실행함.
  • 데이터 탈취 경로: 2단계 스크립트는 Solana 네트워크를 데이터 전달 채널로 활용하며, 개발자의 환경에서 기밀 정보(Secrets)와 토큰을 수집함.
  • 탐지 난이도: 코드 리뷰 인터페이스나 터미널에서도 투명하게 렌더링되므로, 전용 보안 툴 없이는 개발자가 육안으로 공격 코드를 식별하기 매우 어려움.

향후 전망

  • 보안 도구 진화 필요: 유니코드 투명 문자를 이용한 공급망 공격이 지속됨에 따라, 정적 분석 도구(SAST) 및 IDE 내 비가시 문자 경고 기능이 필수적으로 요구됨.
  • 플랫폼 대응 강화: GitHub와 npm 등 오픈소스 플랫폼이 이러한 유니코드 인젝션 패턴을 사전에 차단하기 위한 필터링 시스템을 강화할 것으로 예상됨.
Share

댓글

이 소식에 대한 의견을 자유롭게 남겨주세요.

댓글 (0)

불러오는 중...

Glassworm의 귀환: 코드 저장소를 위협하는 새로운 유니코드 투명 문자 공격 | paper!