次の方法で共有


AI/ML からセキュリティ開発ライフサイクルのバグ バーへのピボット

著者:Andrew Marshall、Jugal Parikh、Emre Kiciman、Ram Shankar Siva Kumar

2019年 11月

この記事は、Microsoft の AI ワーキング グループのための AETHER エンジニアリング プラクティス の成果物です。 この記事は、従来のセキュリティの脆弱性をトリアージするために使用される既存の SDL バグ バーを補間します。 これは、AI/ML 関連のセキュリティの問題をトリアージするための参照用として使用することを意図しています。 AI システムの脆弱性の重大度の分類 (Microsoft Security Response Center によって公開) は、AI を含むシステムの一般的な脆弱性の種類と重大度レベルを定義します。

このガイダンスは、「機械学習の障害モード」において、Ram Shankar Siva Kumar、David O'Brien、Kendra Albert、Salome Viljoen、および Jeffrey Snover が作成した「敵対的な機械学習の脅威の分類法」を中心に構成されています。 このコンテンツがベースとしている研究は、ML 障害モードにおける意図的であったり悪意のある行動と偶発的な行動の両方に対処する一方で、このバグ バーによる補間は、セキュリティ インシデントや修正プログラムの配置につながる意図的であったり悪意のある行動に完全にフォーカスしています。

脅威 説明/ビジネス リスク/サンプル
データ ポイズニング

トレーニング データの破損 - 攻撃者の目標は、トレーニング フェーズで生成されたマシン モデルを汚染することで、テスト フェーズにおいて新しいデータに対する予測を変更することです。

標的型ポイズニング攻撃では、攻撃者の目的は特定のサンプルの分類を誤らせ、特定のアクションを誘発したり、特定のアクションを怠らせたりします。

AV ソフトウェアをマルウェアとして送信して、誤分類を悪意のあるものとして強制し、クライアント システムで対象の AV ソフトウェアを使用できないようにします。

ある企業はモデルをトレーニングするために、信頼できる有名 Web サイトで先物データを収集しています。 そのデータ プロバイダーの Web サイトが、その後 SQL インジェクション攻撃によって侵害されます。 攻撃者はデータセットを自由に汚染することができ、トレーニングされるモデルにはデータが汚染されている兆候は見えません。

モデルの盗用

正当なクエリを実行することで、基になるモデルを再作成します。 新しいモデルの機能は、基になるモデルの機能と同じになります。 モデルを再作成すると、逆に特徴情報を復旧したり、トレーニング データに対して推論を行ったりすることができるようになります。

式を解く - API 出力を使用してクラスの確率を返すモデルの場合、攻撃者はモデル内の不明な変数を特定するクエリを作成できます。

パスを見つける - API の特殊性を悪用して、入力を分類する際にツリーによって取得された "決定" を抽出する攻撃。

転移可能性攻撃 - 敵対者は、標的のモデルに予測クエリを発行することで、ローカル モデルをトレーニングし、そのモデルを使用して標的のモデルに転送する敵対的サンプルを作成することができます。 モデルが抽出され、敵対的入力のタイプの攻撃に対して脆弱であることが判明した場合、モデルのコピーを抽出した攻撃者は、実稼働環境に配置されているモデルに対する新しい攻撃を完全にオフラインの状態で開発できます。

スパムの識別、マルウェアの分類、ネットワークの異常検出など、敵対的動作を検出するために ML モデルを役立たせる設定では、モデルの抽出によって回避攻撃が容易になります

モデル移転

機械学習モデルで使用される非公開の特徴を復元することができます。 これには、攻撃者がアクセスできないプライベートなトレーニング データの再構築が含まれます。 これは、返される信頼度レベルを最大化する入力を見つけることで達成されますが、ターゲットに一致する分類によって左右されます。

例: 推測または既知の名前からの顔認識データの再構築と、モデルをクエリするための API アクセス。

物理ドメイン内の敵対的サンプル これらの例は、物理ドメインで発生する可能性があります。たとえば、特定の色の信号灯 (敵対的入力) が一時停止の標識で点灯しており、画像認識システムが停止標識を停止標識として認識できなくなっているため、自動運転車が騙されて停止の標識を無視して走行する場合が考えられます。
ML サプライ チェーンに対する攻撃

アルゴリズムのトレーニングには大規模なリソース (データ + 計算) が必要となるため、現在の慣行では、大企業によってトレーニングされたモデルを再利用し、当面のタスクに合わせてわずかに変更します (例: ResNet は Microsoftの人気のある画像認識モデルです)。

これらのモデルは、Model Zoo によって厳選されたものです (Caffe は人気の画像認識モデルをホストしています)。

この攻撃では、敵対者は Caffe でホストされているモデルを攻撃することで、だれもが利用する "井戸"を毒しています。

悪意のある ML プロバイダーからのバックドアが仕込まれたアルゴリズム

基になるアルゴリズムを侵害する

悪意のあるサービスとしての ML プロバイダーがバックドア アルゴリズムを提供し、そこから非公開のトレーニング データが再生されます。 これにより、攻撃者はモデルだけあれば、顔やテキストなどの機密データを再構築することができます。

ニューラル ネットワークの再プログラミング

攻撃者によって特別に作成されたクエリを使用することで、ML システムを作成者の本来の意図から逸脱したタスクに再プログラミングできます

顔認識 APIのアクセス制御が脆弱な場合、サード パーティがユーザーに害を与えるように設計されたアプリ (ディープ フェイクジェネレーターなど) に組み込むことができます。

これは不正使用/アカウント削除のシナリオです

敵対的摂動

摂動スタイルの攻撃では、攻撃者は、クエリを密かに変更して、運用環境に配置されているモデルから目的の応答を引き出します。 これはモデルの入力の整合性を侵害するため、ファジー スタイルの攻撃につながります。最終的な結果は必ずしもアクセス違反または EOP というわけではありません。 代わりに、モデルの分類パフォーマンスが損なわれます。

これは、AI が禁止するような方法で特定のターゲットの単語を使用した荒し行為として現れることがあります。これにより、"禁止されている" 単語に一致する名前を持つ正当なユーザーが、事実上サービスから拒否されてしまいます。

害のないメールを強制的にスパムとして分類したり、敵対的なサンプルが検出されないようにしたりします。 これらは、モデル回避攻撃やモデル擬態攻撃とも呼ばれます。

特に重要度の高いシナリオで、攻撃者が入力を巧妙に操作して、適切な分類の信頼度レベルを下げます。 また、これは、正当なアラートと区別できない不正なアラートによって管理者や監視システムを圧倒することを意図した、膨大な数の偽陽性という形を取ることもあります。

メンバーシップ推論

モデルのトレーニングに使用されるグループ内の個々のメンバーシップを推論します

例:年齢/性別/病院に基づく外科手術内容の予測