AIの違いを知る:最適なAIセキュリティを選択するためのヒント

By Pierre Kuster

本ブログ記事は、2018年11月1日に米国で公開された抄訳版です。原文はこちらからご覧頂けます。

21世紀の今、一般消費者向けの人工知能(AI)と機械学習(ML)機能の普及が顕著に進んでいます。5年前にはAIを利用しているサイバーセキュリティベンダーは事実上存在しませんでしたが、最近では誰もがこれらの「魔法」の言葉を使用しているように思われます。

Gartner Researchは、2019年のセキュリティ市場の消費額は1,200億ドルを超えると予想しています。しかし、AIやMLに関する現在の誇大広告は、市場に一定の混乱を招きました。本稿では、筆者の見解と、サイバーセキュリティに採用するAIソリューションを検討する際に重要になると思われる点をご紹介します。

2種類のAI:

今日、有益な研究成果や技術的進歩のほとんどが、AIの分野の1つである機械学習から得られています。機械学習は、データにアルゴリズムを適用することで機械を学習させることに重点を置いています。多くの場合、AIとMLという2つの用語は置き換えて使うことができるため、市場で新たな混乱を招いています。

考慮すべき点と説明が必要な点

特徴量: 特徴量は、どの学習データがどのように抽出されるかを決定するので、MLモデルには非常に重要な意味を持ちます。どの情報を含めるかという重要な問題のほかに、情報をエンコードする方法も大事です。

データセット: 効果的な機械学習には、「トレーニング」に使用するための膨大なデータが必要になります。これは、21世紀のイノベーションによってすでに解消された障害の1つです。ビッグデータとモノのインターネット(IoT)によって、かつてない規模でデータが生成されるようになっています。MLモデルのトレーニングと評価に使用されるデータは、モデルの性能にきわめて大きな影響を及ぼします。モデルのトレーニングに使用されるデータが実世界を表現していなければ、モデルは環境でうまく動作しません。本稿では、データの健全性、アンバランスなデータ、ラベル、ラベルノイズなどについては自主的に省略しました。特徴とデータセットの重要性に関する詳細については、サイランスデータサイエンスチームが作成した基礎科学「セキュリティ技術者のための人工知能入門 」を参照してください。また、こちら からGitHub上の当社書籍のコード例をご覧いただけます。

計算能力:トレーニングはどこで行われているか

機械学習には処理対象となる大量のデータが必要であり、同様に大量のコンピューティング処理が必要になります。トレーニングがどこで行われているかを知ることは、ソリューションをテストせずにモデルの堅牢性とその適合度を事前に知る上で良い指標となる可能性があります。

どのような目的や用途で使用されているか

MLがより迅速にシグネチャを生成するなどの人間の作業を自動化するために使用されているのか、あるいはまったく新しいアプローチを開発するために使用されているのか。そのモデルのトレーニングはどのくらいの期間行われたか。既存のパラダイムに変化をもたらさないソリューションが、巧妙化する一方の敵対者からユーザーを守ることはおそらくないでしょう。

また、AIの流行に便乗しようとモデルをあわてて市場に投入しようとしても、異常なデータポイントが完全に除去されていないトレーニングデータを使ってしまい、実際の現場にソリューションを提供できない可能性があります。

トレーニングはどのように行われているか

私の経験から一例をご紹介しましょう。サイランスでは、MLを活用してユーザーのシステム上でのマルウェアの実行を防止するエンドポイントプロテクションプラットフォーム(EPP)ソリューションを開発しました。そのアルゴリズムによって、マルウェアに実行するチャンスを与える前にエンドポイントを保護できます。

最初のMLエンジンを作成する際に、多数のマルウェアのサンプル(当初はおよそ5億件)をエンジンに供給しました。それらのサンプルの半数は悪意のあるもので、半数は悪意のないものでした。悪意あるサンプルの実行を阻止するために生成された最初のアルゴリズムは、ある程度の成功を収めました。 その時点では、エンジンにより多くのトレーニング、さらに言えば、トレーニングに使うより大きなデータセットが必要でした。

そのため、MLエンジンにさらに多くのファイル(悪意があるものとないものの両方)が継続的に供給され、各ファイルの本質と「意図」をバイナリレベルで分析し、理解することによって、正常な(実行が許可される)ファイルと不正な(実行が阻止される)ファイルの違いを認識するよう、時間をかけてトレーニングが行われました。 何よりも、ファイルの実行が許可される 「前」 (攻撃実行前)に、エンジンが違いを判別できるようになる必要がありました。

時間が経つにつれ、MLエンジンの有効性は向上し続けました。そして、当社のエンジンは現在も学習と成長を続け、徐々に精度を高めています。

今日、何年もの集中的なトレーニングを経て、サイランスのエンジンが生成するアルゴリズムの有効性は99%前後を達成しています。それらのアルゴリズムを詳しく調べてみると、エンジンが600万件を大きく上回るバイナリの特徴を調べていたことがわかりました。平均的な人間のマルウェア解析エンジニアが調べる特徴が数百件であることを考えると、これは 精度と範囲を大きく改善するものになることが期待されます。

下図は、当社でのMLエンジンの開発の流れを示しています。

機械学習の進化と世代について

サイバーセキュリティのMLの世代は、5つの主な要素に従って互いに区別されます。これらは、データサイエンスとサイバーセキュリティの両プラットフォームの共通部分を反映しています。それぞれの世代は、前の世代を基礎としています。初期世代は 「基本的な」攻撃はブロックできますが、最先端の攻撃をブロックするのは困難であり、ブロックできない場合もあるでしょう。データセットのサイズと特徴の数は、世代ごとに大幅に増加します。

  • ランタイム: MLのトレーニングと予測はどこで行われるか(たとえば、クラウド内、またはローカルエンドポイント)。
  • 特徴: いくつの特徴が生成されているか。特徴の前処理と評価はどのように行われるか。
  • データセット: どれだけのデータがどのようなプロセスで選別処理されているか。ラベルはどのように生成、提供、検証されているか。
  • 人間との対話: 人間はモデルの意思決定をどのように理解し、フィードバックを提供するか。モデルの継続的なモニタリングはどのように行われるか。
  • 適合性: モデルはデータセットをどれだけよく反映しているか。どれほどの頻度で更新する必要があるか。

以下の表は、上記の各要素での達成度に応じた各世代別の特性を要約したものです。

第3世代の機械学習:深層学習

クラウドモデルはローカルモデルを補完、保護します。意思決定の説明が、意思決定プロセスを反映した方法でモデルによって行われます。モデルは評価され、攻撃に対抗して強化されるよう設計されています。コンセプトドリフトは優れた一般化によって軽減されます。 深層学習 によって、人間による作業で要した時間が短縮されます。

第4世代の機械学習:適応学習

このようなモデルはローカルデータから学習し、所見をアップロードする必要はありません。特徴は人間とモデルの間の戦略的な対話によって設計されます。新しい特徴とモデルは、継続的な実験によって常に評価されます。モデルの修正とガイドのために、人間からフィードバックを提供できます。ほとんどは、既知のML攻撃に対して堅固です。

第5世代の機械学習:

教師あり学習はオプションになります。モデルは分散した半教師あり学習環境で生成されます。モデルが提供する知見が、人間による分析のガイドになります。継続的なモニターと監査によってモデルの改ざんを見つけることができ、ML攻撃を検出するための偽装機能をサポートします。

MLの全世代の詳細については、MLの世代に関する当社のホワイトペーパー(こちら)をご覧ください。

実際にテストしてみる

できれば、本番環境でテストを行い、実際の現場でソリューションを確認してみてください。どのテストもできるだけ透明性をもって行われるべきであり、ベンダーから制約を受けずに、望ましい方法でソリューションをテストできるようにする必要があります。

ソリューションの制約を理解する

MLは完全に人間に置き換わるものではありません。人間を支援し、パラダイムに変化をもたらし、複数の処理を自動化することはできますが、最終的にユーザーを100%保護できるソリューションはありません。きわめて複雑なサイバーセキュリティの課題を解決するには、人間とマシンの混成チームが鍵となります。

Malicious AI Report 」には、AIの機能がより強力かつ広範囲に及ぶようになってきたことから、新たな脅威の発生が拡大することが予想されると書かれています。防御側が使用しているAIシステムの脆弱性を攻撃者が悪用し(敵対的ML)、自動化などによって既存の攻撃の効果を高めているためです。

さらに攻撃者が、現在の技術システムやIT担当者の対処準備が整っていないと思われる攻撃を生み出すために、経験から学ぶAIの能力を利用することも考えられます。このことから、従業員に対してサイバーセキュリティの重大な問題が発生するリスクを回避するための教育とトレーニングを行う必要性が、より一層強調されるようになっています。

重要ポイントのまとめ

結論として、AIがすべての問題を解決できる「魔法のツール」ではない点を理解することが重要です。MLソリューションは、現代のサイバーセキュリティ問題の一部に対処し、サイバー攻撃が発生した場合にユーザーが優位に立つためにのみ役立ちます。

すべてのMLソリューションが同等の機能を備えているわけでも、そのように開発されているわけでもないため、各ソリューションの長所と制約を知ることが最も重要になります。ソリューションによって対処できることとできないことを知れば、SOCを構築して管理し、リスクプロファイル全体を低減する作業をより効果的に行うことができます。

Tags: