侵害された3つのライブラリから学ぶ、サプライチェーン攻撃の「経路」
GMO Flatt Security様 主催の勉強会「OSS開発者は今何をするべきか? ソフトウェアサプライチェーン侵害対策を考える」(2026年6月23日)に参加しました。とても濃い会かつ、皆さんの熱気を感じてとても楽しい時間でした。
これから全部で3つの記事を出したいと思います。
1本目の記事は、Hono の開発者である 和田祐介(yusukebe)さんの
- 「Honoでのサプライチェーン侵害対策 〜 3つのライブラリに学ぶ」(https://speakerdeck.com/yusukebe/honodenosapuraitienqin-hai-dui-ce-3tunoraiburarinixue-bu)
2本目の記事は、pdfme の開発者である福田京平(@labelmake)さんの
- 「PRを取り込むのが怖くなった理由と今後」(https://docs.google.com/presentation/d/1EMiRnX8vaoUwNm_wtnqDL5gQfcUWRFPL/edit?slide=id.p1#slide=id.p1)
3本目の記事は、textlint / secretlint などの開発者である azu(@azu_re)さんの
-
「Hardening npm Publishing(サプライチェーン侵害から公開フローを守る)(https://azu.github.io/slide/2026/hardening-npm-publishing/slide.html)
=> 1番濃くて深かった、、、
の登壇資料から当日にお伺いした話と、自分なりにまとめたいと思います。
Honoでのサプライチェーン侵害対策〜3つのライブラリに学ぶ
目次
- 最近OSS界隈の治安が悪い
- Hono がどれだけ使われているか
- 攻撃を受けた3つのライブラリ
- 3つの経路
- Honoの対策
1. 最近OSS界隈の治安が悪い
[最近OSS界隈の治安が悪い]
↑
このキーワードから始まった講談
掴み最高!!!
本題としては、
- AIスロップ問題
- サプライチェーン攻撃
が大きな物としてあげられる
このような問題に対処する必要がある
- OSSの開発者(ライブラリサイド)
- OSSを使う開発者
の2面性が存在する
今回は、OSSの開発者にフォーカスして学んでいこうという事
テーマ:いかにHono(ライブラリ側)がサプライチェーン攻撃を行わないようにするか?
2. Hono がどれだけ使われているか
Honoの現状に関しても話してくださいました。(P9~10)
- スター数
- npmダウンロード数
特に印象的だったのは、依存関係について、、、
週間でのダウンロード数や、スター数などは特に多くてそれだけですごいのだが、依存されている先が特に印象的でした。
MastraなどのAI関連の開発、それだけではなく、近年注目されているようなライブラリなど(MCP SDK)
↑
これらのに依存されている
Honoを叩けば、依存されている先からごっそりと資源が抜かれる可能性
Honoを踏み台に利用者に対する攻撃が行われてしまう。
責任が重大である
3. 攻撃を受けた3つのライブラリ
- axios
- Tanstack
- Mastra
上記だけではなく他にも様々なライブラリがある
上記の3つのライブラリ事例から3つの経路が存在する事が見えてきた
4. 3つの経路
-
ソーシャルエンジニアリング
- 北朝鮮系のアクターからか、axiosのメンテナーへソーシャルエンジニアリングが大規模にしっかりとされた
- ミーティング中にメンテナの端末へマルウェアをインストールさせる事を成功
- 各種必要なクレデンシャル情報を取得
- ミーティング中にメンテナの端末へマルウェアをインストールさせる事を成功
- 北朝鮮系のアクターからか、axiosのメンテナーへソーシャルエンジニアリングが大規模にしっかりとされた
-
その後、axiosに直接マルウェアを埋め込むのではなく、axiosをnpm installした時にlife sicle scriptとして実行される依存関係をPRとして追加
- 追加されらscriptを実行する事でマルウェアを配った
覚えておくべき事
↓
この例は、システム側がやられていないが、攻撃が成立してしまった。
- pull_request_target(Pwn Request)
- TanStackの侵害事例
- pull_request_targetを使ったキャッシュポイズニング
- 衝撃的な事はPRのマージすらしていないのにも関わらず攻撃が成立していまったという点
- pull_request_targetを使ったキャッシュポイズニング
- 詳細
- GitHub actionsにはワークフローを実行するためのトリガーが設定出来る
- 例:リポジトリにPushした時に実行する
- トリガー => Push
- 例:リポジトリにPushした時に実行する
- その中に今回のトリガーを存在していた(この)
- pull_request
- fork先のレポジトリの設定で動く
- pull_request_target
- fork元の設定で動く
- より強い権限で実行される
- fork元の設定で動く
- pull_request
- axiosにはpull_request_targetが存在していた
- npm pubish時
- どうやら、一度、テストで引っかかり失敗しているっぽい??
- CLI経由でOICD Tokenを抜き取ってnpm publishしている
- プロべナンスの出所も保証される
- CLI経由でOICD Tokenを抜き取ってnpm publishしている
- どうやら、一度、テストで引っかかり失敗しているっぽい??
- GitHub actionsにはワークフローを実行するためのトリガーが設定出来る
- 公式レファレンス
- Pwn Requestは使わない方が良いと一応、公式レファレンスには載っている
- 避けようとしたら避けれたかも、、、
- Pwn Requestは使わない方が良いと一応、公式レファレンスには載っている
- TanStackの侵害事例
注目点
- アカウントの乗っ取りがない事
- OIDCトークンを使ってnpm publishしている事でプロべナンスの出所も保証されるという事
- アカウント乗っ取り
- 以前、Mastraのメンテナであったnpmアカウントを乗っ取り管理者権限を奪取する事でマルウェア埋め込み
- また、メールアドレスも変更する事で該当のnpmアカウントを取り返せないようにしている
- 埋め込んだマルウェアはeasy-day-js
- 最初にクリーンな1.11.21をリリース
- しかし、その後、1.11.21^を実行 => キャレット指定なので、1.11.21ではない、、、 => 毒入りのバージョンを実行してしまう事になる
- 最初にクリーンな1.11.21をリリース
- 埋め込んだマルウェアはeasy-day-js
- また、メールアドレスも変更する事で該当のnpmアカウントを取り返せないようにしている
- 以前、Mastraのメンテナであったnpmアカウントを乗っ取り管理者権限を奪取する事でマルウェア埋め込み
注目点
- 権限管理の整備不備による攻撃
5. Honoの対策
実際の対策
-
axios
- npm publishingの部分に対策
-
TanStack
- GitHub actionsの悪用、キャッシュの汚染
-
Mastra
- メンテナ権限の利用、依存関係汚染
-
npm publishの方法
- Before
- ローカルマシンから直に実行
- npパッケージ
- タグ打ちなども含めて
- npパッケージ
- changesetを使っていない
- バージョン管理を細かに管理する
- ローカルマシンから直に実行
- After
- OIDC trusted publishingに移行
- リリースはGitHub actionsから
- タグを打つ事でGitHub actionsからリリースされる
- リリースはGitHub actionsから
- OIDC trusted publishingに移行
- Before
-
GitHub actionsについて
- pull_request_targetは使わない
- 範囲の限定
- 最終的なPRの実行を全自動ではなく、最終的な許可をメンテナがする必要がある構成へ
- アクションにpinを打つ
- 環境を固定する
- pull_request_targetは使わない
-
メンテナ権限の管理
- Honoに関しては、メンテナは和田さんのみ
- だから、和田さんこそ大丈夫であれば大丈夫
- 逆に和田さんが倒れてしまうと一発でアウト、、、
- Honoに関しては、メンテナは和田さんのみ
-
Honoの依存関係
- Honoは外部ライブラリへの依存(dependencies)がゼロになっている
-
プロジェクトレベルで実行する事が出来る事を減らす
- Dev Containers
- Gitpod
- これらの設定を消す
-
PRの取り扱いについて
- 悪意のあるPR
- 貢献したいだけのPR
- バウンティを取りたいPR
- これらの共通点はAIでもコードを書く事が出来るという事
-
面白かったのはモノレポであるHonoを適切に切り分ける可能性
- アダプター機能をコアから外す,,,
まとめ
[最近OSS界隈の治安が悪い]
↑
この言葉と下記のXのポストから実際に今回のセミナーは開催された
ここ最近の風潮や、実際に起きた侵害事象を検証すると攻撃者の攻撃対象は現在、開発者に向いている可能性が高い、特にOSSなどの開発者は当たった時の攻撃者のメリットがは大きいという事がわかる。
今後もどんどん今回の一連の攻撃より、大きい攻撃が成功してしまう可能性を秘めている
だから、必要な事にて学ぶ姿勢が重要になる
[最近OSS界隈の治安が悪い]

