AI Security Playbook

SECURITY UPDATE / AIモデルと実行権限

AIモデルの読み込みで、配布元のコードも動く?

PlutoはHugging Face上の悪性モデルを報告。trust_remote_codeの意味を知り、モデルの入手先・設定・実行環境を分けて確認します。

掲載・確認日

掲載:
情報確認:

この記事の目次

何が報告された?

確認する項目報告・仕様の内容確認対象
報告された事例Plutoは、モデルの読み込みに伴って不正なコードを動かし、GPUで暗号資産の採掘や不正な接続を行う配布物を調査しました。調査報告
コード実行の許可Transformersのtrust_remote_code=Trueは、モデルの配布元が用意した独自コードを使う設定です。モデルのデータだけを読む操作とは区別します。設定
別々の確認重みの形式と、配布元コードの信頼は別。ダウンロード数や、設定の一項目だけで個別環境の安全や被害を判定しません。形式

Plutoの分析とHugging Faceの公式仕様を照合。悪性モデルの取得・実行や個別端末の被害確認は行っていません。ダウンロード数は感染数ではないため、被害人数として紹介しません。 公式情報へ ↓

自分にも関係する?

Pythonやノートブック、自分で運用するAIサーバーなどでモデルを読み込む人向けです。外部サービスの画面から会話しているだけの場合、サーバーの設定は提供元の確認範囲になります。

  1. 1モデルを選ぶ
  2. 2読み込みの設定
  3. 3配布元コードの実行
  4. 4端末の権限が影響
コード実行を伴う読み込みの概念図です。すべてのモデル読み込みが、この設定を必要とするわけではありません。

その設定は、何を許可する?

trust_remote_code=Trueは、配布元の独自Pythonコードを利用する許可です。公式資料は、コード内容の確認と、利用する版をrevisionで指定することを勧めています。公式の説明

版を固定しても、そのコード自体が安全になるわけではありません。また、Falseという一つの値だけで、重みファイルの形式や利用ソフトの問題まで解決したことにはなりません。

モデル名と、動くコードは別に確認

許可する処理を先に確認。

① まず、実行せずに設定を見る

自分が管理するプロジェクトのエディターで、設定ファイル・Pythonコード・ノートブックを文字検索します。探す語はtrust_remote_code、revision、モデルの配布元IDです。セルやスクリプトは動かしません。

これは確認の入口です。設定が別ファイルやサービス側にある場合もあり、検索で見つからないだけでは無効と判断できません。

② 確認するのは、この三つ

  • 何を読むか:配布元とモデルID、選んだ版。
  • 何が動くか:独自コードが必要な理由と、実際に適用される設定。
  • どこで動くか:PC・ノートブック・サーバーと、その環境から使えるファイルや認証情報。

表示を見つけた後、どう判断する?

  • Trueを見つけた:コード実行を許可する理由と配布元を確認。悪性であるという判定ではありません。
  • False、または見つからない:読み込み処理全体を管理者と確認。これだけで安全確認済みとは数えません。
  • 外部サービスで動く:自分のPCの設定を変えず、提供元へ問い合わせます。

Hugging Face公式が勧めるsafetensorsは重みの形式に関する対策です。独自コードの許可を含む環境全体の保証とは分けて読みます。形式とコードの確認

まだ動かしていない? もう動かした?

  • 読んだだけ:取得や実行の許可を追加せず、説明と設定を確認。
  • 実行したか不明:不明のまま記録し、実行履歴を管理者へ確認。
  • 不審な処理を実行した:通常作業を止め、証拠を消す前に相談。

一人で管理している場合も同じです。必要なら別の信頼できる端末から提供元や専門家へ相談します。遠隔管理環境では、接続を切ると戻れなくなる場合もあるため、復旧経路を決めてから対応します。

相談するときは、この情報だけを整理

モデルを読み込む設定で、配布元のコードも実行されるか確認したいです。

  • 対象:配布元・確認した版
  • 実行場所:自分のPC、または管理する環境
  • 実行状況:分かる範囲
  • 質問:不明な点

相談用の例です。不明な欄は不明と書き、秘密や内部URL、ログ全文は公開欄へ貼りません。

確認の証拠を残す

  • 配布元と、確認した版・日時。
  • 実際の設定と、コードの確認結果。
  • 実行履歴と、環境に持ち込んだ権限。
  • 相談先と判断結果。未確認は完了と数えない。

AIが説明した内容と実際の権限は別です。配布物や設定を変えたときは、確認した版と判断も見直します。

外部READMEの手順も確認する →

対応は、この3つ。

  1. 利用者:モデルと担当を確認どのモデルをどの環境で動かすかを整理。外部サービスなら提供元へ、自分の環境なら設定を管理する人へ確認します。
  2. 開発者:独自コードを確認設定を有効にする必要性と、配布元のコード・確認した版を照合。秘密のない制限した環境を用意し、AIの自己判断だけで許可を広げません。
  3. 管理者:実行記録から判断不審な配布物を実行した疑いがあれば、稼働環境とログを保全して調査。プロセスの停止だけで復旧済みとせず、残る処理と認証情報も確認します。

AIに任せる操作と、確認する操作を分ける →

AIにデプロイを頼んだ。その認証情報は、どこまでできる? →

漏えい・異常・消失に気づいたとき、最初にすること →

出典と確認範囲

元資料の確認日:2026-11-02。更新作業の完了を保証するものではありません。

新着・更新へ戻る →