JSAI 萌芽研究会セッション「AI Safety & Security」

機械学習システムのセキュリティ・リスク

2021年11月26日
日本銀行 金融研究所 情報技術研究センター
菅 和聖※本発表の内容は、発表者個人の見解であり、日本銀行の公式見解を示すものではありません。

機械学習×セキュリティ• 機械学習システムには、通常の情報システムにはない特有のセキュリティ・リスクはあるのか？

機械学習セキュリティ

2（例）CERT/CCの脆弱性レポート
システム内部の脆弱性の所在がはっきりしない
例：CERT/CCの脆弱性レポート、20年3月、JVNVU#99619336 (1)概要
勾配降下法を用いて学習を行う機械学習モデルに対して、意図的に誤った識別をさせるような入力を作成することが可能です。
想定される影響本件はアルゴリズムの脆弱性であり、攻撃対象となるシステムにおいて機械学習の仕組みがどのように使われているかによって影響は異なります。
(1) https://jvn.jp/vu/JVNVU99619336/

3機械学習の脆弱性はどこにあるのか？
通常のシステム（演繹的）機械学習システム（帰納的）

入力
入力

出力

出力
モデル
システム

・ は仕様として与えられる脆弱性が 自体に内在。特定の部位に局在するとは限らない。

• 理想の は観測不能
から学習• 訓練データ ，• 近似的な関係 には不確実性
4

仕様が不明瞭で検証が難しい
強みは、訓練データを与えれば、システムへの要求が不明瞭な難しい問題でも一定の答えを出せる

システムへの入力の範囲が明瞭に定まらない難しい問
題を解かされがち表現力の高い（パラメータが膨大な）モデルを要し、訓練済みモデルの特性の理解が困難に（説明可能性、予測可能性、モデルの情報量）

弱みは、セキュリティ対策やソフトウェア品質の不確実性。
性能／脆弱性に関する検証が難しい5

セキュリティ対策の難しさ
機械学習システム

通常のシステム
機能 の実装（仕様に沿った開発）

セキュリティ対策（ は維持）

機能に影響

モデル の実装（データ作成＆モデルの訓練）

セキュリティ対策（モデル の再訓練）モデル開発とセキュリティを分離できない6

セキュリティ対策の難しさ
幅広いattack surfaceに関連するプライバシー、セキュリティ、トラストの問題を一体的に解決する必要がある

セキュリティ

プライバシートラスト
7

ユーザ権限のみでも攻撃が成立
攻撃者と正規のユーザの区別をつけることが難しい

特殊な模様の眼鏡をかけると人物を判定できない
確率1.00

確率0.01以下（出所）Sharif et al., “Adversarial generative nets: Neural network attacks on state- of the art facerecognition,” arXiv, 2017.
8機械学習のセキュリティ・リスクの特徴• 機械学習の脆弱性は、モデル 、または、学習アルゴリズムそのものに内在。帰納的な計算パラダイムに起因。
• 脆弱性のあるシステム内部の部位を特定できない• 要求仕様が不明瞭であるため、性能や脆弱性の検証が難しい• モデル開発とセキュリティ対策を分離できない。幅広いattack
surfaceに関連するセキュリティ、プライバシー、トラストの問題を一体的に解決する必要がある。
• ユーザ権限のみで攻撃が成立しうる。攻撃者と正規ユーザの区別がつきにくい。攻撃の検知も難しい。
9

機械学習のセキュリティ・リスクの把握と分類

10

Kumarら[2019](1)のアプローチ
機械学習システム

障害モード（failure modes）

発現する様々な障害攻撃

分類
脆弱性

攻撃者
脆弱性の所在（システムの特定の部 システム全体の機能の喪失（障位）を突き止めて、それぞれの部位 害）の分類を通じてセキュリ
ティ・リスクを包括的に捉えるで対処するのは難しい(1) Kumar et al., “Failure modes in machine learning,” arXiv, 2019.

11

障害モードを分類する（A）攻撃の有無
・攻撃による障害(intentional failure)
・攻撃によらない障害 (unintentional failure)（B）喪失する機能特性
・完全性・機密性・可用性（C）脆弱性の所在(1)・機械学習モデルに特有・一般的なソフトウェアにも共通(1) 菅和聖「機械学習システムの脆弱性とセキュリティ・リスク：「障害モード」による分類と今後へのインプリケーション」金融研究、2021年。

12

完全性への攻撃（入力データ変更）
ノイズ付加攻撃(1)(perturbation attack)物理ドメインでの敵対的サンプル(2)(adversarial example in physical domain

ノイズ＋(1) Paschaili et al., “Generalizability vs robustness: Adversarial examples for medical imaging,” arXiv, 2018.
(2) Sharif et al., “Adversarial generative nets: Neural network attacks on state- of the art face recognition,”
arXiv, 2017.
13

完全性への攻撃（モデルの変更）
データポイズニング(1)

バックドアの埋め込み(3)モデルの転用(2)sharkostrich＝四角形４個(1) Jagielski et al., “Manipulating machine learning: Poisoning attacks and countermeasures for regression
learning,” arXiv, 2018.
(2) Elsayad, Goodfellow, Sohl-Dickstein, “Adversarial reprogramming of nural networks,” arXiv, 2018.
(3) Gu et al., “BadNets: Identifying vulnerabilities in the machine learning model supply chain,” arXiv, 2019.
14

機密性への攻撃
モデル複製(1)（model stealing）

メンバーシップ推定(2)（membership inference)

訓練データの逆算(3)（model inversion）？

(1) Tramèr et al., “Stealing machine learning models via prediction APIs,”
Proc. of USENIX Security Symposium, 2016.
(2) Shokri et al., “Membership inference attacks against machine learning models,”
Proc. of IEEE Symposium on Security and Privacy, IEEE, 2017.
(3)Fredrikson et al., “Model inversion attacks that exploit confidence information and basic
countermeasures,” Proc. of ACM SIGSAC CCS, 2015.

15可用性への攻撃
バグの悪用(1)

高負荷のサンプルの生成(2)(1) Xiao et al. “Security risks in deep learning implementations,” IEEE Symposium on Security &Privacy Workshops, 2018.
(2) Shumailov et al., "Sponge examples: Energy-latency attacks on neural networks," IEEE European
Symposium on Security and Privacy, 2020.
16

攻撃によらない障害
1

利得の誤謬
Reward Hacking

開発者の意図に整合的な利得と実装された利得の乖離から意図せぬ挙動

2

副次的効果
Side Effect

開発者が設定した目的を達するためにシステムが環境を破壊

3

入力データの分布の変化Distributional Shift

入力データの分布の違いにシステムが適応できない4

敵対的サンプルの自動収集
Natural Adversarial Examples

システムが判別を誤る難しいサンプ
ルを生成することなく収集してくる

5

普遍的な変化Common Curruption

画像の明暗・ノイズ・回転・縮尺な
どのよくある変化に対応できない

6

本番環境での不十分なテスト
Imcomplete Testing

テスト環境では動作しても、本番環境ではうまく動作しない
17一般的なソフトウェアの脆弱性にも関連する攻撃
オープン・ソースのプログラム
様々なデータベース
コントリビュータ（F)ソフトウェア依存性 訓練済みモデルの提供者
訓練済み
プラット
プラットフォーム
（他社）
モデル
フォーム
提供者
（G)モデルの依存性（E)（転移学習など）
訓練データ
訓練データ
モデル
保持者
モデル
（A)
開発者
（B)
（D)
（C)
システム
ユーザ

入出力データ

訓練済みモデル運用者
18

セキュリティ対策へのインプリ（１）• 機械学習の脆弱性は、モデルまたは学習アルゴリズム自体に内在。
帰納的な計算パラダイムに起因。
• 脆弱性のあるシステム内部の部位を特定できない⇒ 部分分解的なアプローチはうまくいかない
障害モードに基づくリスクの把握と分類が有効ではないか• モデル開発とセキュリティ対策を分離できない。幅広いattack
surfaceに関連するセキュリティ、プライバシー、トラストの問題を一体的に解決する必要がある。
⇒ モデル開発とセキュリティ・倫理等の専門家の協働が必要
19

セキュリティ対策へのインプリ（２）• 要求仕様が不明瞭であるため、性能や脆弱性の検証が難しい• ユーザ権限のみで攻撃が成立しうる。攻撃者と正規ユーザの区別がつきにくい。攻撃の検知も難しい⇒ 学習アルゴリズムの改善。差分プライバシーの保証(2)、機械学習モデルの検証（proof of learning）(2)などを考慮アルゴリズムの開発。単一のアルゴリズムで複数のセキュリティ・倫理目標を同時に達成するのは困難か。
⇒ あるいは、モデルの不確実性を認めた上で、周辺装置で弱点をカバーするほうがよいか（フェールセーフなシステム）(1) Abadi et al.,Deep Learning with Differential Privacy, Proc. of ACM SIGSAC on CCS, 2016
(2) Jia et al., Proof-of-Learning: Definitions and Practice,”arXiv, 2021.

20