北朝鮮ハッカーがPolinRiderキャンペーンで108の悪意あるパッケージを公開
北朝鮮の脅威アクターが、PolinRiderキャンペーンの一環として、npm、Packagist、Go、Google Chromeにわたる108のユニークなパッケージとウェブブラウザ拡張機能を公開しました。このキャンペーンは、ソフトウェア開発者や暗号通貨セクターの個人をターゲットにした攻撃であり、悪意のあるコードを実行させるために巧妙な手法を用いています。攻撃者は、LinkedInやGitHubなどのプラットフォームでリクルーターを装い、信頼を築いた上でマルウェアを配布しています。
メトリクス
このニュースのスケール度合い
インパクト
予想外またはユニーク度
脅威に備える準備が必要な期間が時間的にどれだけ近いか
このニュースで行動が起きる/起こすべき度合い
主なポイント
- ✓ 北朝鮮の脅威アクターが、108の悪意あるパッケージを公開し、ソフトウェア開発者を狙った攻撃を行っています。
- ✓ 攻撃者は、GitHubのリポジトリを利用して、悪意のあるJavaScriptコードを埋め込む手法を用いています。
社会的影響
- ! この攻撃は、ソフトウェア開発者や暗号通貨関連の企業に対する信頼を損なう可能性があります。
- ! 悪意のあるパッケージの存在は、オープンソースコミュニティ全体に対する脅威を増大させています。
編集長の意見
解説
北朝鮮系とされる「PolinRider」:npm/Packagist/Go/Chrome拡張に108件を投入し、開発者から暗号資産・CI/CDへ侵入拡大するサプライチェーン汚染です
今日の深掘りポイント
- 攻撃対象は「開発者そのもの」。npm、Packagist、Goモジュール、Chrome拡張という“開発と日常の接点”に横並びで悪性投入し、どこか一箇所を踏み台に全体へ広げる設計です。
- ソーシャル(LinkedIn等での“リクルーターを装う”)とテクニカル(悪性パッケージ/拡張、GitHub改ざん)を組み合わせ、インストール時実行や履歴改ざんで検知をすり抜ける構えです。
- 公開情報では108の悪性パッケージ/拡張、1,951の公開GitHubリポジトリが侵害、1,047のユニークオーナーに影響というスケールが示され、開発環境からCI/CD・暗号資産まで連なる“連鎖リスク”が焦点です。
- 現場は依存の固定と署名/プロベナンス検証、拡張機能の許可制、CIのSBOMとゲート可視化、開発端末でのインストールスクリプト監視という“4点セット”を急ぎ標準化すべき局面です。
- 新規性は“技法の刷新”ではなく“同一設計の多生態系同時展開”にあり、防御側はサプライチェーンを“個別に守る発想”から“連鎖断ち切りの設計”へ発想転換が要ります。
はじめに
北朝鮮関与とされる「PolinRider」キャンペーンは、開発者向けエコシステム(npm、Packagist、Go)とGoogle Chrome向け拡張という、日常の開発・検証・情報収集の動線に沿って悪性コンテンツを敷設しています。表では“パッケージの話”に見えますが、狙いは開発者の資格情報や環境変数、リポジトリアクセス、さらには暗号資産までを含む収益化ルートの獲得です。緊急度と発生確率は高く、技術と人をまたいだ攻撃面の広さがポイントです。組織は“今の手順を厳格化する”だけでは足りず、“どこで連鎖が始まるか”を前提に、インストール/実行/通信/改ざんの各段でブレークポイントを設計することが肝要です。
深掘り詳細
事実(公開情報の整理)
- 108のユニークな悪性パッケージ/Chrome拡張が公開されたと報じられています。対象はnpm、Packagist(PHP)、Go、Google Chrome拡張にまたがります。攻撃はソフトウェア開発者および暗号通貨セクターの個人を主に狙います。
- 攻撃者はLinkedInやGitHubでリクルーターを装い信頼を形成し、課題提出や依存追加、拡張導入など“仕事上もっともらしい”導線で実行させます。
- GitHubの公開リポジトリを悪用して悪性JavaScriptを埋め込む、あるいは履歴を改ざんして痕跡を隠す手口が示されています。
- 影響規模として、1,951の公開GitHubリポジトリが侵害、1,047のユニークオーナーが影響を受けたとする報告が付随しています。
参考情報: The Hacker Newsの報道
インサイト(編集部の観点)
- エコシステム横断は“拡張性”の表現です
ひとつの悪性ロジックを、言語・パッケージ管理・ブラウザ拡張へ使い回しできる形で量産していると読むのが自然です。検知されても他生態系で生き残る“冗長構成”が、運用上の厄介さを増します。 - 「人×依存×履歴改ざん」による検知遅延
リクルーター装いは導入障壁を下げ、依存のインストールスクリプトが手触りの少ない実行点を提供し、履歴改ざんがレビュー/監査の盲点を作ります。技術的に奇抜ではなくとも、検知を遅らせる“組み合わせ最適化”が巧妙です。 - 開発環境は“資産”であり“踏み台”でもある
ローカルの環境変数、クラウド/レジストリ/CIのトークン、ブラウザのセッション、そして暗号資産ウォレット。この“混在”が、攻撃者にとって回収ROIの高い一点突破口になります。開発端末は最前線の境界です。 - スコア観(総合所感)
緊急対応優先度と発生確率が高い一方、技術要素は既知手法のスケール適用に近い印象です。だからこそ運用対策の効果が出やすい領域でもあり、組織として“標準化と自動化”で踏みとどまれる余地が大きい局面です。
脅威シナリオと影響
以下は報道・公開記述に基づく仮説シナリオで、MITRE ATT&CKのテクニックIDは想定ベースです。実際の個別事案では差異があり得ます。
-
シナリオA:悪性パッケージ経由で開発端末→CI/CDへ
- 入口
- 依存の追加/更新時に悪性パッケージを取得(typosquattingや名前類似)
- ATT&CK: T1195.001(Supply Chain Compromise: Software Dependencies)
- LinkedIn/開発者SNS経由で“課題の実行”として誘導
- ATT&CK: T1566.003(Spearphishing via Service)
- 依存の追加/更新時に悪性パッケージを取得(typosquattingや名前類似)
- 実行・持続
- npm/Composer/Goのインストールスクリプトを悪用(preinstall/install/postinstall等でスクリプト実行)
- ATT&CK: T1059.007(Command and Scripting Interpreter: JavaScript)
- 攻撃者C2への初期ビーコン
- ATT&CK: T1071.001(Application Layer: Web Protocols)
- npm/Composer/Goのインストールスクリプトを悪用(preinstall/install/postinstall等でスクリプト実行)
- 窃取・横展開
- 環境変数、クラウド/レジストリ/PATトークン、SSH鍵等の窃取
- ATT&CK: T1552(Unsecured Credentials), T1555(Credentials from Password Stores)
- GitHubやCI/CDの権限で横展開、秘密情報・コードの取得
- ATT&CK: T1021(Remote Services), T1550(Use of Web Tokens)
- 環境変数、クラウド/レジストリ/PATトークン、SSH鍵等の窃取
- 影響
- リポジトリ改変や秘密情報流出、さらに暗号資産・署名鍵の喪失リスク
- ATT&CK: T1036(Masquerading), T1041(Exfiltration Over C2 Channel)
- リポジトリ改変や秘密情報流出、さらに暗号資産・署名鍵の喪失リスク
- 入口
-
シナリオB:Chrome拡張経由でセッション乗っ取り→資産・コード流出
- 入口
- 「レビュー用」「採用課題の支援ツール」等の名目で拡張導入
- ATT&CK: T1176(Browser Extensions)
- 「レビュー用」「採用課題の支援ツール」等の名目で拡張導入
- 実行・窃取
- クッキー/セッション/DOMからのトークン抽出、クリップボード監視(仮説)
- ATT&CK: T1056(Input Capture), T1557(Adversary-in-the-Middle)一部該当状況想定
- クッキー/セッション/DOMからのトークン抽出、クリップボード監視(仮説)
- 影響
- SSOや開発SaaSのセッション悪用、機密リポジトリやウォレットの資産流出
- 入口
-
シナリオC:GitHubリポジトリの履歴改ざん・悪性コード混入
- 入口・準備
- 公開リポジトリへ悪性JSの混入、履歴の改ざんで痕跡を希薄化
- ATT&CK: T1195.001(Dependencies/Tools),T1036(Masquerading)
- 公開リポジトリへ悪性JSの混入、履歴の改ざんで痕跡を希薄化
- 実行・展開
- 下流の開発者/CIがpullやビルド時に悪性スクリプトを実行
- ATT&CK: T1059.007
- 下流の開発者/CIがpullやビルド時に悪性スクリプトを実行
- 影響
- サプライチェーンを通じた組織横断の汚染と検知遅延(1,951リポジトリ、1,047オーナー規模の影響報告に合致)
- 入口・準備
組織的影響としては、開発者個人の端末侵害が“最短ルートの組織侵入”となり、知財・顧客データ・署名鍵・CIシークレット・暗号資産にまで面が広がる点が本質です。ブランドと供給信頼の毀損コストも無視できません。
セキュリティ担当者のアクション
“いま止血すること”と“連鎖を設計で断ち切ること”を両輪で進めます。
-
今日からできる即応(72時間以内)
- 依存固定と再現性の徹底
- すべての言語でロックファイルをコミットし、CIはロック準拠コマンド(例:npm ci)を強制します。未知の新規外部依存をCIゲートでブロックします。
- 署名・プロベナンス検証の導入
- パッケージ/アーティファクトの署名・発信元証跡を検証するワークフローをCIに組み込みます。未知の発行者や未署名は失敗扱いにします。
- ブラウザ拡張の“許可制”への転換
- 企業管理下のChromeで拡張は許可リスト方式に切り替え、セルフインストールを禁止します。既存拡張の棚卸しと強制アンインストールを実行します。
- ネットワーク最小化
- ビルド環境/ランナーからの外向き通信を、社内アーティファクト・ミラーと既知レジストリのみに制限します。raw.githubusercontent.com等への直アクセスは審査制へ。
- 監視の即時強化
- 開発端末とCIでの“インストールスクリプトによる外部通信/子プロセス生成”を高優先で検知。npmのpre/install/postinstall、Composerのscripts、Goのpost-buildフック相当を重点監視します。
- 依存固定と再現性の徹底
-
1~2週間で固める継続対策
- アーティファクト・レジストリの社内ミラー化
- npm/Packagist/Goなど、外部の直接取得を停止し、社内ミラーで検疫・署名検証・脅威スキャン後に配布します。
- SBOMの標準化と差分ゲート
- 各ビルドでSBOMを必須化し、PR/リリースで“新規外部コンポーネントの追加”に審査ゲートを挿入。SBOM差分がゼロでない限り自動リリース不可とします。
- GitHub/リポジトリ保護の強化
- 強制SSO、ブランチ保護、署名コミット必須化、保護タグ、PRのみマージ(直push禁止)、インタラクティブRebase/履歴書き換えの権限を限定します。PATは細粒度・短寿命化。
- シークレットの“使い捨て化”
- CIシークレットは短寿命トークン発行を標準とし、長期固定トークンは廃止。スコープはジョブ単位の最小化。検出時は回転自動化。
- 開発端末のハードニング
- 開発者ローカルの“高感度フォルダ/ブラウザプロファイル/SSH鍵”へのアクセスモニタリング、EDRの動的学習閾値を上げ、未知プロセスのネットワーク外出に明示許可を求めます。
- アーティファクト・レジストリの社内ミラー化
-
ハンティングと検知の観点(クラスIoCでの狙い撃ち)
- 開発端末/CIからraw.githubusercontent.com、paste系、gist、匿名ファイル共有への新出通信ドメインの検出(期間指定の増分)。
- npm/Composer/Goのインストールフェーズ直後に生成されるchild_process(curl/wget/node/subprocess等)のスパイク検知。
- “普段使わない時間帯のGit操作(force-push/履歴改変)”と“権限外ブランチへのpush試行”の相関検知。
- Chrome拡張ディレクトリ配下の新規ファイル出現・権限の高い拡張の追加イベント監視。
-
インシデント対応の要点(疑いが生じたら)
- 影響端末のネットワーク隔離、ブラウザプロファイルの再作成、未知拡張の削除。
- すべてのトークン・鍵の回転(VCS/CI/CD/クラウド/レジストリ/パッケージ公開鍵)。
- リポジトリの完全クローンとコミットツリー整合性監査(タグとリリース資産のハッシュ再検証)。
- 依存グラフに対し“当該期日帯の新規追加/更新”で集計し、影響範囲ごとにロールバック計画を実行。
-
ガバナンスの仕上げ(構造的な連鎖断ち切り)
- “導入(install)時に実行できるスクリプト”は原則禁止、必要時は安全なサンドボックスを経る設計に刷新します。
- 開発用ブラウザは業務分離(開発SaaS専用プロファイル)を徹底し、一般閲覧と分離します。
- サプライヤ/OSSメンテナとの責任分界を明文化し、第三者依存の追加は事前リスク評価表(発行者、署名有無、人気度、メンテ頻度、過去の脆弱性履歴)を必須化します。
最後に強調したいのは、今回の特徴は“奇抜さ”ではなく“同時多発の生態系横断”にあります。だからこそ、対応の鍵は「標準化」と「禁止と許可の境界の再設計」です。すべてのチームが同じパイプライン品質を使えるように共通基盤を整え、例外は最小にし、痕跡は自動で残し、連鎖は設計で止める——それがこの種のキャンペーンに対する最短で実効性のある答えです。
参考情報
- The Hacker News: North Korean Hackers Publish 108 Malicious Packages in PolinRider Campaign(2026-07-04) https://thehackernews.com/2026/07/north-korean-hackers-publish-108.html
背景情報
- i PolinRiderキャンペーンは、北朝鮮の脅威アクターによるもので、2023年から活動が確認されています。攻撃者は、リクルーターを装い、ソフトウェア開発者をターゲットにしており、悪意のあるコードを実行させるための巧妙な手法を駆使しています。
- i 攻撃者は、GitHubのリポジトリに悪意のあるJavaScriptコードを埋め込むことで、開発者の環境を侵害しています。これにより、リポジトリの履歴を改ざんし、攻撃を隠蔽する手法が用いられています。