エニグママイクロソフトが昨年、機械学習 (ML) のセキュリティをどう捉えているかについて 28 の組織を対象に調査したところ、その問題を深く考えた企業は少数であることが研究者によって判明しました。
「その結果、私たちの集団的なセキュリティ態勢はほぼゼロです」と、マイクロソフトのAzure信頼できる機械学習グループの主任アーキテクト、ハイラム・アンダーソン氏は、USENIXのEnigma 2021仮想会議でのプレゼンテーションで述べた。
アンダーソン氏は、マイクロソフトの調査 [PDF] を指摘し、組織の約 90% (28 社中 25 社) が ML システムのセキュリティを確保する方法を知らなかったと述べた。
こうした企業の多くにとっての問題は、ML システムに対する一般的な攻撃 (ML 画像認識モデルにトラ猫をワカモレとして分類させる敵対的攻撃など) が、フィッシングやランサムウェアなど、頻繁に対処する必要がある進行中の攻撃を考慮すると、あまりにも投機的で未来的であると見なされていることです。
しかしアンダーソン氏は、機械学習システムを単独で考えるべきではないと主張している。むしろ、機械学習システムは、妨害される可能性のある、より大きなシステムの歯車として捉えるべきであり、そのシナリオは特定の機械学習モデルの完全性を超えた影響を及ぼす可能性がある。
「例えば、もし敵対者が経費詐欺を企てたとしたら、トラ猫とワカモレの例のように、実際の領収書をデジタル的に改ざんして自動システムを欺くことができるだろう」と彼は述べた。「しかし、もっと簡単な方法は、正当な経費ではない有効な領収書を自動システムに提出することだ。」
言い換えれば、ML モデルのセキュリティ保護は、より一般的なリスクから防御するために必要なステップです。
マイクロソフトのTwitterチャットボットTayの運命は、機械学習セキュリティを学術的な演習ではなく実践的な問題として捉えるべき理由を如実に示しています。2016年にインタラクティブなエンターテイメントとしてリリースされたTayは、ユーザー入力から言語を学習するようにプログラムされていました。しかし、24時間以内にTayはオンライン荒らしによる有害な入力を真似するようになり、その後無効化されました。
部隊を呼ぶ
マイクロソフトは、MLセキュリティを真剣に受け止めるようになった現在、自社のMLモデルに対してレッドチーム演習を実施しています。レッドチーム演習とは、社内チームが攻撃者の役割を演じ、対象組織の防御力をテストすることを指します。
アンダーソン氏は、機械学習を使用して Microsoft の従業員に仮想マシンを配布する社内 Azure リソース プロビジョニング サービスに対して実施されたレッド チーム調査の 1 つについて語りました。
マイクロソフトは、仮想化されたコンピューティングリソース用の物理サーバースペースの割り当てにウェブポータルを利用しています。16万人以上の従業員を抱える企業にとって、この方法を採用することで得られるコスト削減は相当なものになるとアンダーソン氏は述べています。
AIエンジンがあなたの写真をスクレイピングして顔認識するのにうんざりしていませんか?これをやっつける方法があります
続きを読む
「レッドチームの演習では、いわゆるノイジーネイバー攻撃を通じて無差別なサービス拒否攻撃を仕掛けようとする攻撃者の役割を担いました。システムを騙して、高可用性サービスコンテナを含む物理ハードウェアに大量のリソースを投入させることで攻撃を仕掛けました」と彼は説明した。「この演習の要となるのは、機械学習モデルを回避することです。」
この演習の目的は、レッドチームが機械学習の整合性違反を通じてシステム可用性違反を引き起こすことができるかどうかを判断することでした。また、この演習は、コンピューティングリソースの割り当てに使用されている機械学習モデルに直接アクセスすることなく実施されました。
演習の偵察フェーズで、レッドチームは自身の認証情報によって2つの重要な情報にアクセスできることを発見したとアンダーソン氏は説明した。1つ目は、チームがモデルのトレーニングデータに読み取り専用でアクセスできること、2つ目は、モデルがデータの特徴付け(データを数値ベクトルに変換すること)をどのように処理しているかに関する詳細情報を発見したことだ。
それだけで、レッドチームが独自の ML モデルを構築し、オフラインで攻撃をテストするのに十分だったと彼は説明した。
レッドチームは、構築できたレプリカMLモデルを用いて、複数の「回避バリアント」を特定することに成功しました。これらは、MLモデルへの入力であり、モデルがリソース要求が過剰であると予測するタイミングを保証するものです。アンダーソン氏によると、チームは、MLモデルがリソース不足の正常なコンテナを過剰にサブスクリプションされているコンテナと認識させるように要求できる様々なリソース構成を特定しました。
「オーバーサブスクリプション状態を保証するリソース要求があれば、たとえば、大量のリソース ペイロード、高い CPU 使用率、メモリ使用量を持つ仮想マシンをインストルメント化することができ、その結果、過剰にプロビジョニングされ、同じ物理ホスト上の他のコンテナへのサービス拒否が発生する可能性があります」と、同氏は説明した。
アンダーソン氏は、この例から学ぶべき点がいくつかあると述べた。まず、内部MLモデルはデフォルトでは安全ではない、と彼は述べた。
「モデルが外部世界から直接アクセスできないとしても、攻撃者がそれを悪用してシステム全体に連鎖的な下流影響を引き起こす経路が存在する」と同氏は述べた。
第二に、データやコードへの寛容なアクセスはモデルの盗難につながる可能性があると彼は述べた。
「これは本当に単純なことのように思えますが、データサイエンス チームにデータとコードに関する権限をどのように設定しているか聞いてみてください」と彼は言いました。
3つ目は、規範的なアクションを実行する前にモデルの出力をチェックすることです。言い換えれば、システムに健全性チェックを組み込むということです。これは、1000回の出力ごとに1回を監査したり、定期的に人間を介入させたり、あるいは、モデルの予測結果に関わらず24コアのVMをオーバーサブスクリプションしないといったガードレールを実装したりすることを意味します。
そして4つ目は、トレーニングと展開中のモデルの動作と開発を必ず記録することです。「たとえアクティブなプログラムや、ログをリアルタイムで監視する担当者がいないとしても、常に侵害を想定する意識を持つべきです」とアンダーソン氏は述べています。®