最終更新日:
※この記事は、株式会社ChillStackと三井物産セキュアディレクション株式会社の共同研究組織・AIディフェンス研究所による寄稿です。
本連載は「AI*1セキュリティ超入門」と題し、AIセキュリティに関する話題を幅広く・分かり易く取り上げていきます。本連載を読むことで、AIセキュリティの全体像が俯瞰できるようになるでしょう。
本コラムでは、画像分類や音声認識など、通常は人間の知能を必要とする作業を行うことができるコンピュータシステム、とりわけ機械学習を使用して作成されるシステム全般を「AI」と呼称することにします。
目次
連載一覧
「AIセキュリティ超入門」は全8回のコラムで構成されています。
- 第1回:イントロダクション – AIをとりまく環境とセキュリティ –
- 第2回:AIを騙す攻撃 – 敵対的サンプル –
- 第3回:AIを乗っ取る攻撃 – 学習データ汚染 –
- 第4回:AIのプライバシー侵害 – メンバーシップ推論 –
- 第5回:AIの推論ロジックを改ざんする攻撃 – ノード注入 –
- 第6回:AIシステムへの侵入 – 機械学習フレームワークの悪用 –
- 第7回:AIの身辺調査 – AIに対するOSINT –
- 第8回:セキュアなAIを開発するには? – 国内外のガイドライン –
第1回〜第6回は公開済みです。ご興味がございましたら読んでいただけると幸いです。
本コラムの概要
本コラムは第7回「AIの身辺調査 – AIに対するOSINT –」です。
本コラムでは、攻撃者が攻撃対象のAI(以下、標的AI)を効率的に攻撃するために、合法的に入手可能な情報を基に、標的AIに関する内部情報(データセットやアーキテクチャなど)を調査する手法を取り上げます。
なお、合法的に入手可能な情報を基に対象を調べ上げる手法は一般的にOSINTと呼ばれ、他国の諜報活動や犯罪捜査(サイバー犯罪含む)などでも広く用いられています。本コラムではOSINTの対象をAIに絞り、これを「AIに対するOSINT」と定義し、主に攻撃者の視点で標的AIの内部情報を調査することに主眼を置くことにします。
なぜOSINTが必要なのか?
ところで、なぜ攻撃者は標的AIをOSINTする必要があるのでしょうか?
そのモチベーションは、標的AIを効率的に攻撃することにあります。
本コラムの第2回「AIを騙す攻撃 – 敵対的サンプル –」で取り上げた、AIへの入力データを細工してAIの判断を誤らせる手法を例に取り、攻撃者が、オンライン公開されている画像認識APIを”騙す”シナリオを考えてみましょう。
このシナリオでは、攻撃者は標的AIへの入力データと、応答される分類結果しか知ることができません。つまり、攻撃者にとって標的AIはブラックボックス化しており、攻撃のハードルは高くなります。しかし、「第2回:AIを騙す攻撃 – 敵対的サンプル –」の「より現実的な攻撃シナリオ -Black Box Attacks-」で解説したとおり、ブラックボックスの状態でも攻撃を行うことは可能です。
この図は、ブラックボックス設定で標的AIを騙すイメージを表しています。
先ず、攻撃者は標的AIを模倣した代替AIを手元に作成します。そして、代替AIを騙すことができる敵対的サンプルを作成します(手元にある代替AIを利用して敵対的サンプルを作成します)。最後に、この敵対的サンプルを標的AIに入力し、標的AIに誤分類を引き起こさせます。
標的AIと代替AIは、学習したデータセットやアーキテクチャなどが異なっていますが、敵対的サンプルには転移性があるため、代替AIに効果的な敵対的サンプルは、標的AIにも効果がある場合があります。
当然ながら、代替AIと標的AIのデータセットやアーキテクチャなどが近似すればするほど、二つのAIが持つ決定境界も近似します。この場合、代替AIを騙すことができる敵対的サンプルは、高確率で標的AIをも騙すことができます。
このように、標的AIの内部情報(データセットやアーキテクチャなど)を知ることは、攻撃の成功率を高めることに繋がるため、攻撃者は標的AIをOSINTするのです。
AIに対するOSINT
ここからは、AIに対するOSINTの具体的な手法を見ていきます。
筆者の知る限り、AIに対するOSINTについて最もよく纏められているのが、Adversarial ML Threat Matrixと呼ばれるプロジェクトです。このプロジェクトは、機械学習を用いたシステムへの攻撃をATT&CK*1フレームワークに配置することで、セキュリティ専門家が機械学習のセキュリティ(AIセキュリティ)に向き合うことを目的としています。
以降、Adversarial ML Threat Matrixに沿ってAIに対するOSINTを紹介していきます。
*1 ATT&CKフレームワーク
ATT&CKはAdversarial Tactics, Techniques, and Common Knowledgeの略称で、実際のサイバー攻撃の観測に基づいた、攻撃者の戦術や技術を体系化したナレッジです。
下図は、Adversarial ML Threat Matrixのフレームワークです。
このフレームワークは、AIに対する脅威をReconnaissance(偵察)、Initial Access(初期アクセス)、Execution(攻撃の実行)、Exfiltration(データの持ち出し)、Impact(攻撃の影響)などにカテゴライズしており、カテゴリ毎に具体的な手法/技術を網羅しています。
このカテゴリの中で、AIに対するOSINTに相当するのが「Reconnaissance」です。ここでは、「Reconnaissance」の中から「Acquire OSINT information」と「Gathering datasets」に焦点を当てて解説していきます。
Acquire OSINT information
この手法は、公開されている情報を合法的に収集することで、標的AIの内部情報を特定することを試みます。Adversarial ML Threat Matrixでは、一例として以下のソースから情報を収集するとしています。
- arXiv
- Public blogs
- Press Releases
- Conference
- GitHub Repository
- Tweets
arXivのような論文アーカイブには、AIのアーキテクチャなどに関する情報が大量に収められています。また、AI製品の開発者や営業担当者などが、製品に関する情報を技術ブログやプレスリリース、カンファレンス発表などで公開しているケースもあります。
また、オープンソースの顔認証エンジンや物体検知エンジンがGitHub Repository上で公開されているケースもあり、この場合はソースコードレベルでAIの内部情報を把握することができます。
攻撃者は、このような情報元を調査することで、合法的に標的AIの内部情報を得ることができます。
ここで、Adversarial Threat Matrixには記載されていませんが、特許情報からAIの内部情報をある程度知ることもできます。例えば、Google社の特許文献検索サービスである「Google Patnts」を使用することで、AI製品に関する情報を得ることができます。試しに、「“AI製品の名前” architecture」などと検索してみてください。おそらく、AI製品の詳細な内部情報が見つかるはずです。
Gathering datasets
この手法は、標的AIの学習データを特定、または、推定することを目的とします。
標的AIのデータセットに直接アクセスできない場合は、ブラックボックスな状態で標的AIの学習データを推定する必要があります。この場合は、「第4回:AIのプライバシー侵害 – メンバーシップ推論 –」でも取り上げたメンバーシップ推論が有効です。
標的AIに対してメンバーシップ推論を行うことで、攻撃者はブラックボックスな状態で標的AIの学習データを推定することができます。
メンバーシップ推論の詳細を知りたい方は、「第4回:AIのプライバシー侵害 – メンバーシップ推論 –」をご参照ください。
AI製品に対するOSINT例
ここまで読んできて、「AIに対するOSINTは机上の空論であり、現実的に行うことはできないのでは?」と思われた読者の方は多いかもしれません。
しかし、AIに対するOSINTを活用し、実際のAI製品に対して攻撃を行った例は存在します。ここからは、AI製品に対するOSINTの実例を2つ見ていきます。
- マルウェア検知の回避
- スパムメールフィルタの回避
マルウェア検知の回避
SkyLight社の研究者らは、AIベースのマルウェア検知ソフトウェア「Cylance」のマルウェア検知を回避する検証を行っています。
この検証では、Cylanceのマルウェア検知の閾値を特定し、これを下回るような「特殊な文字列」をマルウェアに追加することで、マルウェア検知の回避に成功しています。
この図は、Cylanceに対するOSINTの例を表しています。
研究者らは、特許情報・ホワイトペーパー・カンファレンスの発表内容などを基にCylanceの内部情報を調査し、マルウェア検知モデルをリバースエンジニアリングしました。そして、マルウェア検知の閾値を下回るような特殊な文字列を特定し、これを(本来検知すべき)マルウェアに追加することで、マルウェア検知を回避しています。
なお、この問題は既に修正されているとのことです。
スパムメールフィルタの回避
Silent Break Security社の研究者らは、AIベースのスパムメールフィルタ「Proofpoint Email Protection」のスパム検知を回避する検証を行っています。
この検証では、Proofpointのスパムメール検知の閾値を推定し、閾値を下回るスパムメール文章の生成に成功しています。
この図は、Proofpointに対するOSINTの例を表しています。
研究者らは、Emailヘッダに含まれているProofpointが出力した信頼スコア(メールがスパムである確度情報)を収集し、Proofpointを模倣した代替モデルを作成しました。そして、代替モデルを基にスパムメール検知の閾値を調査し、閾値を下回るスパムメール文章を生成することで、Proofpointのスパムメール検知を回避しています。
なお、この問題は脆弱性「CVE-2019-20634」として報告されており、詳細はNVDで見ることができます。
このように、AIに対するOSINTは現実的な脅威であり、対策を施さない場合、攻撃に繋げられてしまうことになります。
まとめ
本コラムでは、AIを効果的に攻撃するための「身辺調査」として、AIに対するOSINTを紹介しました。
特許情報や技術ブログ、AIが出力する信頼スコアなどを収集・分析することで、十分にAIの内部情報を知ることができ、攻撃に繋げられることが分かりました。
AIに対するOSINTを防ぐためには、AIに関する情報を外部に出さないことが最も効果的ですが、特許情報や営業資料、(宣伝目的の)カンファレンス登壇、ホワイトペーパーの発行など、外部に出さざるを得ない場合もあります。
よって、AIに対するOSINTの脅威を正確に認識し、外部に公開する情報は必要最低限にするなど、情報公開の戦略を練ることが重要であると言えます。
以上で、第7回「AIの身辺調査 – AIに対するOSINT –」は終了です。
次回は、第8回「セキュアなAIを開発するには? – 国内外のガイドライン -」について投稿いたします。
最後に、株式会社ChillStackと三井物産セキュアディレクション株式会社は、AIの開発・提供・利用を安全に行うためのトレーニングを提供しています。
本トレーニングでは、本コラムで解説した攻撃手法の他、AIに対する様々な攻撃手法と対策を、座学とハンズオンを通じて理解することができます。
本トレーニングの詳細やお問い合わせにつきましては、AIディフェンス研究所をご覧ください。
※本コラムの執筆者は以下の通りです。
高江洲 勲(三井物産セキュアディレクション株式会社) 情報処理安全確保支援士。CISSP。Webシステムに対する脆弱性診断に10年以上従事。また、AIセキュリティに着目し、機械学習アルゴリズムの脆弱性に関する研究や、機械学習を用いたセキュリティタスク自動化の研究を行っている。研究成果は、世界的に著名なハッカーカンファレンスであるBlack Hat ArsenalやDEFCON、CODE BLUE等で発表している。近年はセキュリティ・キャンプやSECCONワークショップの講師、国際的なハッカーカンファレンスであるHack In The BoxのAIセキュリティ・コンペティションで審査員を務める等、教育事業にも貢献している。 |
駒澤大学仏教学部に所属。YouTubeとK-POPにハマっています。
AIがこれから宗教とどのように関わり、仏教徒の生活に影響するのかについて興味があります。