# ML03:2023 モデル反転攻撃 (Model Inversion Attack)

### 説明

モデル反転攻撃は攻撃者がモデルをリバースエンジニアリングして情報を抽出することで発生します。

### 防止方法

**アクセス制御:** モデルやその予測へのアクセスを制限することで、攻撃者がモデルを反転するために必要な情報を獲得することを防止できます。 これはモデルやその予測にアクセスする際に、認証、暗号化、またはその他の形式のセキュリティを要求することで実行できます。

**入力バリデーション:** モデルへの入力を確認することで、攻撃者がモデルを反転するために使用できる悪意のあるデータを供給するのを防止できます。 これはモデルを処理する前に、入力の形式、範囲、一貫性をチェックすることで実行できます。

**モデルの透過性:** モデルとその予測を透過的にすると、モデル反転攻撃の検知と防止に役立ちます。 これは入力と出力をすべてログ記録し、モデルの予測に対する解釈を提供するか、ユーザーがモデルの内部表現を検査できるようにすることで実行できます。

**定期的な監視:** モデルの予測に異常がないか監視すると、モデル反転攻撃の検知と防止に役立ちます。 これは入力と出力の分布を追跡するか、モデルの予測を正解データと比較するか、モデルのパフォーマンスを経時的に監視することで実行できます。

**モデルの再トレーニング:** モデルを定期的に再トレーニングすると、モデル反転攻撃によって漏洩した情報が古くなるのを防止できます。 これは新しいデータを取り入れ、モデルの予測の不正確さを修正することで実行できます。

### リスク要因

|                                   脅威エージェント/攻撃手法                                   |             セキュリティ上の弱点            |              影響              |
| :-------------------------------------------------------------------------------: | :-------------------------------: | :--------------------------: |
| <p>悪用難易度: 4 (普通)<br><br><em>ML アプリケーション依存: 5</em><br><em>ML オペレーション依存: 3</em></p> |           検出難易度: 2 (困難)           |         技術的影響: 4 (普通)        |
|   <p>脅威エージェント: モデルと入力データにアクセスできる攻撃者。<br><br>攻撃手法: モデルに画像を送り、モデルのレスポンスを解析します。</p>  | モデルの出力を使用して、入力データに関する機密情報を推論できます。 | 入力データに関する機密情報が危殆化する可能性があります。 |

本チャートは [下記のシナリオ](#scenario1) に基づくサンプルに過ぎないことに注意することが重要です。 実際のリスク評価は各機械学習システムの具体的な状況によって異なります。

### 攻撃シナリオの例

#### シナリオ #1: 顔認識モデルから個人情報を摂取する <a href="#scenario1" id="scenario1"></a>

攻撃者は顔認識を行うためのディープラーニングモデルを訓練します。 次に、このモデルを使用して、会社や組織で使用されている別の顔認識モデルに対してモデル反転攻撃を行います。 攻撃者は個人の画像をモデルに入力して、モデルの予測から名前、住所、社会保障番号などの各人の個人情報を復元します。

攻撃者はモデルを訓練して顔認識を実行し、それからこのモデルを使用して別の顔認識モデルの予測を反転させて、この攻撃を実行しました。 これはモデルの実装の脆弱性を悪用するか、API を介してモデルにアクセスすることで実行できます。 攻撃者はモデルの予測から各人の個人情報を復元できるようになります。

#### シナリオ #2: オンライン広告でボット検知モデルをバイパスする

広告主は広告をクリックしてウェブサイトに訪れるようなアクションを実行するボットを使用して、広告キャンペーンを自動化したいと考えています。 しかし、オンライン広告プラットフォームではボット検知モデルを使用して、ボットがこのようなアクションを実行するのを防ぎます。 これらのモデルをバイパスするするために、広告主はボット検知のディープラーニングモデルを訓練し、それを使用してオンライン広告プラットフォームで使用されるボット検知モデルの予測を反転させます。 広告主はボットをモデルに入力し、ボットを人間のユーザーのように見せることができたため、ボット検知をバイパスして自動化された広告キャンペーンをうまく実行できます。

広告主は独自のボット検知モデルを訓練し、それを使用してオンライン広告プラットフォームで使用されるボット検知モデルの予測をリバースしてこの攻撃を実行しました。 実装の脆弱性や API を使用してこの他のモデルにアクセスできました。 攻撃の最終結果として、広告主はボットを人間のユーザーのように見せることで、広告キャンペーンの自動化に成功しました。

### 参考資料


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://coky-t.gitbook.io/owasp-machine-learning-security-top-10-ja/owasp-sekyuriti-top-10/ml03_2023-model_inversion_attack.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
