AIのデータポイズニングとは何ですか

AIデータポイズニングとは、AIモデルのトレーニングデータに意図的にバイアスを持たせて、その出力に影響を与えようとするものです。

学習目的

この記事を読み終えると、以下のことができるようになります。

  • AIのデータポイズニング攻撃の仕組みに関する説明
  • AIおよびLLMデータポイズニング攻撃の種類の説明
  • データポイズニング防止方法のリスト

関連コンテンツ


さらに詳しく知りたいとお考えですか?

是非、Cloudflareが毎月お届けする「theNET」を購読して、インターネットで最も人気のある洞察をまとめた情報を入手してください!

当社がお客様の個人データをどのように収集し処理するかについては、Cloudflareのプライバシーポリシーをご確認ください。

記事のリンクをコピーする

AIのデータポイズニングとは何ですか

人工知能(AI)データポイズニングとは、攻撃者がAIまたは機械学習モデルの出力を操作するためにトレーニングデータを変更することです。AIデータのポイズニング攻撃における攻撃者の目的は、推論の際に歪曲された結果や危険な結果をモデルに生成させることです。

AIと機械学習*モデルには、トレーニングデータとアルゴリズムという2つの主な要素があります。アルゴリズムは車のエンジンのようなものであり、トレーニングデータはエンジンに何かを点火させるガソリンであると考えてください。データがAIモデルを前進させます。データポイズニング攻撃とは、燃料に余分な物質が追加されていて、車の走りを悪くするようなものです。

より多くの企業や人々が日常業務においてAIに依存し始めるにつれ、AIによるデータポイズニングの潜在的な影響はより深刻になっています。AIデータのポイズニング攻撃が成功すると、攻撃者の背後にある人物に有利な方法でモデルの出力を永続的に変更する可能性があります。

AIによるデータポイズニングは、大規模言語モデル(LLM)で特に懸念されます。データポイズニングは、OWASPのLLMトップ10にリストされており、近年の研究者たちは医療コード生成、およびテキスト生成モデルに影響を及ぼすデータポイズニングの脆弱性について警告しています。

*「機械学習」と「人工知能」は、同じ意味で使用されることがありますが、これら2つの用語は、若干異なるコンピューティング能力を指します。機械学習はAIの一形態です。

データポイズニング攻撃の仕組みとは?

AI開発者は、膨大な量のデータを使用してモデルのトレーニングを行います。基本的に、トレーニングデータセットがモデルに例を提供し、モデルはそれらの例から一般化することを学習します。データセット内の例が多ければ多いほど、データが正確でそれほどバイアスされていない限り、モデルはより洗練され、正確になります。

データポイズニングは、トレーニングデータセットに意図的にバイアスを加え、モデルのアルゴリズムの出発点を変え、開発者が意図したものとは異なる結果になるようにします。

教師が黒板に算数の問題を書いて、生徒に解決してもらうことを想像してください。たとえば、「47×(18+5) = ?」です。答えは1,081です。しかし、ある生徒が教師の後ろでこっそり「47」を「46」に変えたら、答えはもはや1,081ではなく、1,058になります。データポイズニング攻撃は、こっそり行動する生徒のようです。最初のデータが少し変わると、答えも変わってしまいます。

AIのデータポイズニング攻撃はどのように発生しますか

トレーニングデータの不正な変更は、多くのソースから発生する可能性があります。

内部関係者攻撃:トレーニングデータへの正当なアクセス権を持つ人物が、バイアス、偽データ、その他の変更を加えることで、出力を歪める可能性があります。これらの攻撃は、データへのアクセスが許可されていない第三者による攻撃よりも、検出して阻止することが困難です。

サプライチェーン攻撃:AIや機械学習モデルのほとんどは、モデルのトレーニングにおいて、さまざまなソースからのデータセットに依存しています。これらのソースの1つ以上に、「ポイズニングされた」データが含まれていて、トレーニングや微調整にそうしたデータを使うモデルに影響を与える可能性があります。

不正アクセス:攻撃者がトレーニングデータセットにアクセスする手段は、以前の侵害を利用したラテラルムーブメントフィッシングを使った開発者の資格情報の取得、その他の複数の攻撃の可能性など、さまざまなものがあります。

データポイズニング攻撃の二つの主要なカテゴリーとは?

  • 直接(または標的を絞った)攻撃:これらの攻撃は、特定のクエリやアクションにのみ応答してモデルの出力を歪めたり変更したりすることを目的としています。このような攻撃が発生してもモデルは変更されず、ほとんどすべてのクエリに対して期待される応答が得られることになります。例えば、攻撃者は、AIベースのメールセキュリティフィルターを騙して、特定の悪意のあるURLの通過を許可し、その他は期待通りに機能させたいと考えるかもしれません。
  • 間接的(または標的を特定しない)攻撃:これらの攻撃は、一般的にモデルのパフォーマンスに影響を与えることを目的としています。間接攻撃は、単にモデル全体の性能を低下させることや、特定の種類の答えを歪めることを目的とする場合があります。例えば、外国の敵対者は、プロパガンダの目的で、特定の国内で誤った情報を与えるよう一般利用向けのLLMにバイアスを与えようとするかもしれません。

AIのデータポイズニング攻撃にはどのような種類がありますか

攻撃者が自己の目的でAIモデルのデータをポイズニングする方法は、いくつかあります。知っておくべき重要な技法には次のようなものがあります。

  • バックドアポイズニング:この攻撃はモデルに隠れた脆弱性を導入し、攻撃者が把握している特定のトリガーに応答して、安全でない方法で動作します。バックドアが隠されていても、AIモデルは通常通りに動作するため、バックドアポイズニングは特に危険です。
  • 誤ラベル付け:モデルが学習後に項目を誤って認識するように、攻撃者がモデルのトレーニングデータセット内でデータのラベル付け方法を変更する可能性があります。
  • データインジェクションと操作:このような攻撃は、データセットを変更、追加、または削除します。これらの攻撃の目的は、AIモデルを特定の方向に偏らせることです。
  • 可用性攻撃:この攻撃は、全体的なパフォーマンスを低下させるデータを注入することで、モデルの速度を落とす、またはクラッシュさせることを目的としています。

データポイズニングを防止するには?

データ検証:トレーニングの前に、データセットを分析して、悪意のあるデータ、疑わしいデータ、異常値のデータを特定する必要があります。

最小特権の原則:言い換えると、トレーニングデータへのアクセスを絶対に必要とする人員およびシステムのみにアクセス権を持たせるべきです。最小特権の原則は、セキュリティに対するゼロトラストアプローチの中核となる考え方であり、ラテラルムーブメントや資格情報侵害の防止に役立ちます。

多様なデータソース:より広範囲のデータソースからデータを抽出することで、特定のデータセットにおけるバイアスの影響を軽減することができます。

監視と監査:誰がトレーニングデータを変更したか、何を変更したか、いつ変更したかを追跡し、記録することで、開発者は疑わしいパターンを特定したり、データセットがポイズニングされた後の攻撃者のアクティビティを追跡することができます。

敵対トレーニング:AIモデルをトレーニングして、意図的に誤解を招くような入力を認識させます。

ファイアウォールなどの他のアプリケーション防御対策も、AIモデルに適用できます。データポイズニングやその他の攻撃を防止するために、Cloudflareは、LLMの前に配置することができ、不正使用がLLMに到達する前に特定してブロックすることができるFirewall for AIを提供しています。Firewall for AIについての詳細はこちらをご覧ください。