注目

脅威動向 / THREATS / NATION-STATE

北朝鮮系「Contagious Interview」がmacOS偽インストーラー14件でOtterCookieを配信 — Jamfが新たな手口を報告

Jamf Threat Labsは、北朝鮮に帰属するとされるContagious Interviewキャンペーンが、正規アプリを装ったmacOSの偽インストーラー14件を使ってバックドアOtterCookieを配信していたと報告した。VirusTotalでの発見を起点に、DMGとPKGの2経路で隠しバイナリから外部サーバーへ連鎖し、最終的にSocket.IO型RATや認証情報窃取などの機能を持つOtterCookieへ至る。配信元は162.0.239.85、運用C2は147.124.202.205だ。

攻撃手法
ソフトウェア

要点

  • 誰が何を報告したか: Jamf Threat Labsが、北朝鮮に帰属するとされる長期キャンペーン「Contagious Interview」によるmacOS向けの新たな配信クラスターを報告した。VirusTotal上の調査から出発している。
  • 何が見つかったか: 正規のmacOSアプリを装ったトロイの木馬化されたディスクイメージ(DMG)とパッケージ(PKG)が計14件見つかった。すべての検体が同一のステージング基盤へ通信する。
  • 最終的な被害は何か: 連鎖の先でバックドア「OtterCookie」が配信される。Jamfによると、遠隔操作や認証情報窃取などの機能を備える。

経緯と背景

Contagious Interviewは、偽の求人面接を口実に被害者へ悪性コードを実行させる手口で知られる。Jamfによると、攻撃者はこれまでもコーディング課題やリポジトリ、Visual Studio Codeのtasks.json、Gitフック(.githooks/pre-commit)などにローダーを埋め込んできた。2026年1月にはVS Codeプロジェクトを開く動作でNode.jsへJavaScriptペイロードを流し込む手法、5月にはpre-commitpost-checkoutで発火する手法が確認されている。CITIZENDOTは2026年7月、PDFの課題文とZIP同梱の.git/hooks/pre-commitを使った事例を報告した。

Jamf Threat Labsは、今回のクラスターをVirusTotal上でMagic Disk Cleaner.app/Contents/MacOS/.macosを起点に発見した。ここから2つのシェルスクリプト/task/mac/task/tokenlinuxへ連鎖し、最終的にOtterCookieへ至る。Jamfは14件のトロイの木馬化サンプルを確認した。

偽装されたアプリは次の14種だ。

  • The Unarchiver / Presentify / PDFify / Magic Disk Cleaner / Sketch2026.2 / SiteSucker Pro / RAR Extractor Max / Mp3tag / Mole / HextEdit / Folder Preview Pro / Disk Doctor Pro / ServerCat / Bartender

2つの配信バリアント

DMG(トロイの木馬化されたアプリ)

Jamfによると、各アプリは未署名のまま改変されている。codesign -dvvvで確認すると「code object is not signed at all」と表示される。アプリバンドル内のInfo.plistで実行対象(CFBundleExecutable)が隠しバイナリ.macosへ書き換えられている。ユーザーがアプリをダブルクリックすると.macosが実行される仕組みだ。

.macosfileコマンドで「Mach-O 64-bit executable x86_64」と判定されるIntel専用バイナリで、Rosetta 2がなければ起動しない。文字列にgithub.com/yassinebenaid/bunsterが含まれ、JamfはオープンソースのBunsterでシェルスクリプトをGoコードへ変換してコンパイルされた実行ファイルと分析している。

実行時の動きは次のとおりだ。

  1. 正規バイナリ(例: Mole)からcom.apple.quarantine(隔離属性)を除去する
  2. 正規アプリをopen -aで見せかけとして起動する
  3. 裏側で162.0.239[.]85:3000/task/mac?token=...へcurlでアクセスし、次段階を取得する

未署名かつ公証がないため、Gatekeeperは既定で実行をブロックする。被害者は隔離属性を手動で除去しなければ起動できない。Jamfはこの点を根拠に、攻撃者が広域配布ではなく配信手法を試験していた可能性が高いと評価している。

PKG(パッケージインストーラー)

PKG版でも各パッケージは未署名だ。Jamfによると、インストール時にApplication Support配下へ悪性スクリプトを配置し、postinstallで管理者権限で実行する。以降はDMG版と同様に外部サーバーから二次スクリプトを取得する連鎖へ入る。

通信先とOtterCookieの機能

Jamfによると、ステージング基盤は162.0.239[.]85(ポート3000)だ。VirusTotalの関連情報では同IPにw3pi[.]socialminiapp.w3pi[.]social(TLS証明書のCN)、softcus[.]netpobelstudio[.]comなどが紐づく。w3pi[.]social自体は通常のWeb3サイトとしてHTTPSで稼働しており、ペイロード配信は同一ホストのHTTP 3000番で動作している。GitHubのW3PI-Protocol/w3pi-contractsは2026年6月に3日間で集中的にコミットされ、以降更新がない。

OtterCookieの運用サーバーは147.124.202[.]205で、ポート7671/7676/7679に分散している。

最終ペイロードparser.jsはOtterCookieだ。JamfはElastic Security Labsの報告を引用し、難読化を解くと次の4つのコンポーネントが確認できると説明している。

  • Socket.IOベースのRAT(scdata): 遠隔操作
  • ブラウザ/暗号資産ウォレット窃取(ldata): 認証情報の窃取
  • メモリ常駐のファイル探索: 拡張子や機微ファイルの探索
  • クリップボード監視: pbpasteを定期実行して窃取

Jamfは「成功した侵入では暗号資産や独自コードの窃取が可能になる」と指摘している。

影響と対策

Jamf Threat Labsは、このクラスターが「検証段階または初期開発段階」にある可能性を指摘している。サンプルが既定で実行されないこと、未署名であることが根拠だ。ただし、Contagious Interviewは継続的に配信手法を進化させており、Jamfは今後も亜種や関連基盤を追跡するとしている。

Jamfは、同社製品の利用者向けに、脅威防止や高度な脅威制御、Web保護を「Block」かつ「Report」で構成することを推奨していると説明している。一般のmacOS利用者については、一次情報が対策として次の点を挙げているわけではないが、Jamfの分析から次の事実が確認できる。

  • 未署名アプリはGatekeeperが既定でブロックする
  • 正規アプリに見えてもVirusTotal上の検体は内部で実行対象が差し替えられている

出典

Jamf Threat Labsが報告したContagious Interviewのトロイの木馬化されたmacOSインストーラーの概念図
Jamf Threat Labsが公開したContagious Interviewのトロイの木馬化インストーラーに関する報告のヘッダー画像。出典: Jamf Threat Labs

この記事は、公開情報と編集部の調査・知見をもとに構成しています。内容は公開時点の情報に基づく解説であり、個別の環境への診断・対応を保証するものではありません。重要な判断では、記事内の出典や各提供元の最新情報もご確認ください。