北朝鮮系の脅威キャンペーン「Contagious Interview」が新たな配布手法とともに再燃していることが分かりました。武器化されたSVG画像ファイルを悪用してOTTERCOOKIEマルウェアを展開する手口で、Rubyエコシステムを狙った別のサプライチェーン侵入事件とも時期が重なっています。
DPRK(北朝鮮)関連の活動を追跡しているセキュリティ研究者によると、このキャンペーンは引き続き採用担当者や面接業務を装い、開発者に一見無害に見えるファイルを実行させる手口を用いています。
Cloudsecurity services
今回の最新版では、従来の文書ベースの誘導手口に代わり、難読化されたJavaScriptを埋め込んだSVG画像が使われるようになりました。これにより、ブラウザや開発者ツールでレンダリングされた際にステルス実行が可能になっています。
SVGは一般的に実行可能なコンテンツではなく安全なグラフィック資産として扱われるため、この手法によって検知率が大幅に低下します。
SVGペイロードが起動されると、段階的な感染チェーンが開始され、最終的に北朝鮮関連の侵入セットに関連付けられているモジュール型バックドア「OTTERCOOKIE」が展開されます。
このマルウェアはコマンド実行、認証情報の窃取、永続化機能を備えており、多くの場合、開発環境や暗号資産関連の資産を標的にしています。
アナリストは、OTTERCOOKIEがソフトウェアエンジニアを狙ったソーシャルエンジニアリングキャンペーンでますます使われるようになっていると指摘しており、これはソフトウェアサプライチェーンへの侵入を目指す北朝鮮のより広範な目標と一致しています。
侵害されたパッケージgit_credential_manager、Dendreo、fastlane-plugin-run_tests_firebase_testlabは、攻撃者が管理するForgejoインスタンスから第2段階のペイロードを展開するためのローダーとして機能していました。
特に注目すべきは、git_credential_managerパッケージがMicrosoftの正規のGit Credential Managerになりすましていた点で、悪意あるバージョンは2.8.0から2.8.3にわたっていました。
この攻撃は、GitHub上に対応するタグを付けずにRubyGemsへ直接パッケージを公開するという、エコシステムの信頼を悪用する手口を取っており、これが侵害を露呈させる重要な異常点となりました。
StepSecurityがGBhackersと共有したレポートで述べたところによると、この活動は「SleeperGem」と名付けられた新たに公開されたサプライチェーン攻撃と重なっており、2026年7月18日から7月19日にかけて、3つの悪意あるRubyGemsパッケージがRubyGems.orgにアップロードされたことが確認されています。

同様に、Dendreoは約6年間活動がなかった後にバージョン1.1.3と1.1.4をリリースしており、fastlaneプラグインも上流の参照元がないままバージョン0.3.2を公開していました。
SVG画像に隠されたOTTERCOOKIEマルウェア
StepSecurityのHarden-Runnerを使用して行われたランタイム解析により、綿密に設計された実行チェーンの存在が明らかになりました。
この悪意あるgemは、自動化パイプラインでの検知を回避するために、GITHUB_ACTIONSやGITLAB_CIを含む約30個のCI関連環境変数に対してチェックを行っていました。
開発者のマシン上で実行されると、ローダーはシェルスクリプト(deploy.sh)と、正規のツールを装ったネイティブバイナリを取得していました。

このペイロードは~/.local/share/gcm/にデーモンをインストールすることで永続化を確立し、さらにsystemdユーザーサービスやgit-credential-managerという名前のcronジョブを介した冗長な仕組みも併用していました。
さらなる権限昇格ロジックはsudo権限の有無を調べており、条件が整えば/usr/local/sbin/ping6にsetuid rootシェルを設置する機能も備えていました。
ネットワークテレメトリでは、Forgejoでホストされているコマンド&コントロールサーバー(git.disroot.org)との通信が確認されており、簡素化されたUser-Agent文字列を用いて正規のGitトラフィックを模倣したHTTPリクエストが送信されていました。
重要な点として、悪意あるgemのバージョン2.8.2はペイロードを実行せずに設置するだけでしたが、バージョン2.8.3では完全な感染チェーンが起動されており、攻撃者による段階的なテストが行われていたことがうかがえます。
研究者らは、実際の認証情報窃取機能はgem自体ではなく、展開されたネイティブデーモン内に存在すると強調しており、これが静的検知を困難にしていると指摘しています。
3つのパッケージすべてで同一のインフラが再利用されていたことから、これが単発の事件ではなく協調されたキャンペーンであることが裏付けられます。
SVGを用いたソーシャルエンジニアリングとサプライチェーン侵害が組み合わさった点は、北朝鮮の作戦におけるより広範な傾向を浮き彫りにしています。それは、企業やブロックチェーンのエコシステムへの侵入の足がかりとして、開発者を高い価値を持つ標的として狙うというものです。
求人ポータルとパッケージレジストリという信頼されたプラットフォームを二重に利用している点は、開発者のワークフローと信頼境界に対する高度な理解を示しています。
各組織には、影響を受けたRubyGemsパッケージをインストールしたシステムはすべて侵害されたものとして扱い、永続化のための痕跡を除去し、すべての認証情報をローテーションすることが推奨されています。
今回の事件は、ランタイム監視や出所検証、パッケージ公開・依存関係管理をめぐるより厳格な統制の必要性が高まっていることを改めて示しています。
侵害指標(IOC)
| Gem名 | 悪意あるバージョン | コマンド&コントロールホスト/備考 |
|---|---|---|
| git_credential_manager | 2.8.0, 2.8.1, 2.8.2, 2.8.3 | git.disroot.org(公式Gitエコシステムアカウントになりすましたパス) |
| Dendreo | 1.1.3, 1.1.4 | git.disroot.org(公式Gitエコシステムアカウントになりすましたパス) |
| fastlane-plugin-run_tests_firebase_testlab | 0.3.2 | git.disroot.org(公式Gitエコシステムアカウントになりすましたパス) |
注: IPアドレスおよびドメインは、誤った名前解決やハイパーリンク化を防ぐため、意図的に無害化表記(例: [.])にしてあります。再度有効な表記に戻す作業は、MISP、VirusTotal、SIEMなど管理された脅威インテリジェンスプラットフォーム内でのみ行ってください。
𝗔𝗜 𝗦𝗢𝗖 𝘃𝘀 𝗠𝗗𝗥 𝘃𝘀 𝗠𝗦𝗦𝗣 2026年、どちらが最適か? コスト、自動化、対応力を比較: 無料ガイドをダウンロード
翻訳元: https://gbhackers.com/ottercookie-malware-in-svg-images/