公開日:2020/03/25 最終更新日:2020/03/25

JVNVU#99619336
勾配降下法を使用する機械学習モデルに、誤った識別をさせるような入力を作成することが可能な問題

概要

勾配降下法を用いて学習を行う機械学習モデルに対して、意図的に誤った識別をさせるような入力を作成することが可能です。

影響を受けるシステム

本記事はアルゴリズムに存在する問題に関するものであり、特定の製品について言及するものではありません。

詳細情報

勾配降下法を用いて学習させたモデルを用いた分類を行う場合に、任意の分類結果が得られるような入力を意図的に作成することが可能です。これは、Kumar et al. による攻撃分類では、perturbation attacks や adversarial examples in the physical domain に該当します。

攻撃対象のシステムに対して、攻撃者がデータの入力や出力の確認などを行うことができる余地が大きいほど、攻撃が成功する可能性は大きくなります。
また、学習プロセスに関する情報(教師データ、学習結果、学習モデル、テストデータなど)があれば、攻撃はより容易に行えるようになります。

現状では、数秒で攻撃できるものから何週間も必要になるものまで様々な事例が知られています。

想定される影響

本件はアルゴリズムの脆弱性であり、攻撃対象となるシステムにおいて機械学習の仕組みがどのように使われているかによって影響は異なります。
以下に、現在知られている中から典型的な事例を3つ挙げます。

対策方法

以下の2項目を実施することを推奨します。

1. 攻撃に使われる入力に対し適切な結果を返すように学習させる
攻撃として想定される入力をあらかじめ学習させておくことで、攻撃に対する耐性をある程度高めることができます。
この目的に使用できるライブラリとしては例えば、CleverhansFoolboxART:Adversarial Robustness Toolkit があります。

2. 多層防御を実践する
機械学習ツールを使ったコンポーネントが外部からの攻撃の影響を受けにくくなるよう、システム構成を工夫してください。機械学習ツールをセキュリティ目的で使用する場合には外部からの攻撃を受ける可能性が高くなるので、この考え方は特に重要です。
機械学習の機能を持ったセキュリテイ関連ツールを評価する際に着目すべき観点についてまとめた CMU/SEI-2019-TR-005 も参考にしてください。

また、機械学習への攻撃に対して、入力データを前処理する方法や損失関数に関する情報を隠蔽する方法など、複数の対策手法が提案されていますが、それら個々の対策手法に対し、対策を回避する形の攻撃が可能であるとする研究結果が公開されています。

ベンダ情報

参考情報

  1. arXiv.org
    Towards the Science of Security and Privacy in Machine Learning
  2. arXiv.org
    Wild Patterns: Ten Years After the Rise of Adversarial Machine Learning

JPCERT/CCからの補足情報

JPCERT/CCによる脆弱性分析結果

謝辞

-

関連文書

JPCERT 緊急報告
JPCERT REPORT
CERT Advisory Vulnerability Note VU#425163
Machine learning classifiers trained via gradient descent are vulnerable to arbitrary misclassification attack
CPNI Advisory
TRnotes
CVE
JVN iPedia