グラスワームが帰ってきた:見えないUnicode攻撃の新たな波がリポジトリを襲う
概要
- Glassworm による不可視Unicode攻撃が再び活発化
- GitHub、npm、VS Codeなど複数エコシステムに被害拡大
- 攻撃は不可視Unicode文字を使いマルウェアを隠蔽
- 有名リポジトリも複数被害、AIを用いたカモフラージュも観測
- Aikidoなどの専用検出ツールによる防御が重要
Glassworm攻撃の再来と拡大
- 2025年から追跡しているGlasswormによる不可視Unicode攻撃の再発
- 2026年3月にGitHub、npm、VS Code Marketplaceで大規模な攻撃キャンペーンを確認
- PolinRiderキャンペーンとは別に、Glasswormが独自に活動再燃
- 影響範囲は数百のGitHubリポジトリ、npmパッケージ、VS Code拡張機能に及ぶ
攻撃手法の概要
- 攻撃者は不可視Unicode文字(PUAなど)を空文字列内に埋め込み、マルウェアペイロードを隠蔽
- 例:
const s = v => [...v].map(w => ...); eval(Buffer.from(s(``)).toString('utf-8'));- 一見空のバッククォート内に不可視文字を挿入
- デコーダ関数で復元し、
eval()で実行
- 復元後のペイロードはSolana経由で第二段階スクリプトを取得し、トークンや認証情報を窃取
2026年3月の被害規模
- GitHub上で少なくとも151件のリポジトリに同一パターンのデコーダを確認
- 実際の被害数は削除済みリポジトリも含めさらに多い可能性
- 攻撃期間は2026年3月3日~9日
- npmやVS Code Marketplaceにも同様の手法で感染拡大
- 例:@aifabrix/miso-client (npm), quartz.quartz-markdown-editor (VS Code)
- 有名プロジェクトへの被害
- pedronauck/reworm(1,460スター)
- anomalyco/opencode-bench、doczjs/docz-plugin-css など
AIによるカモフラージュ
- 攻撃コミットはドキュメント修正やバージョンアップ、リファクタなど自然な内容で偽装
- 151件以上のリポジトリに対し個別最適化された変更が行われているため、大規模言語モデル(LLM)による自動生成の可能性が高い
- 手動でこれほど多くの自然なコミットを用意するのは現実的ではない
検出と防御策
- 肉眼や一般的なLintツールでは不可視Unicodeは検出困難
- Aikidoなどのセキュリティツールは不可視Unicode混入を自動検出可能
- Aikido利用者には100/100のクリティカル警告として通知
- Aikido Safe Chainはnpm、yarn、pnpmなど主要パッケージ管理ツールに対応したリアルタイムマルウェア防御ツール
- AIと人間の研究者による最新サプライチェーン攻撃の即時検出・遮断
- 無料プランでもマルウェア検出機能を利用可能
まとめ
- Glasswormの不可視Unicode攻撃は多エコシステム・AI活用・大規模化が特徴
- 見えない脅威には専用検出ツールの導入が不可欠
- オープンソース利用者はAikidoなどの対策ツールで早期検知・感染防止が重要