ハッカーはパニックに陥っています!サイバーセキュリティにおける機械学習の包括的な説明

ハッカーはパニックに陥っています!サイバーセキュリティにおける機械学習の包括的な説明

[51CTO.com からのオリジナル記事] 現在、インターネット上には機械学習 (ML)、人工知能 (AI)、ディープラーニング (DL)、ネットワークセキュリティ保護に関する記事がたくさんあります。

[[249532]]

誇大宣伝を排除し、機械学習をサイバーセキュリティに実際に適用する方法に焦点を当てるにはどうすればよいでしょうか?

まず、悪いニュースがあります。画像認識や自然言語処理などのアプリケーションと比較すると、ネットワーク セキュリティ分野における機械学習の応用は、「特効薬」のレベルにはほど遠いということです。

ハッカーは、既存のセキュリティメカニズムを回避するために、ターゲットシステムの機械学習アルゴリズムの弱点を見つけるために懸命に取り組んでいます。さらに悪いことに、ハッカーは機械学習テクノロジーの助けを借りて、攻撃レベルと効率を絶えず向上させています。

2 つ目の朗報は、機械学習が回帰、予測、分類などの一般的なタスクを支援できることです。これは間違いなく、今日のデータ爆発とサイバーセキュリティ人材不足の時代に対する良い解決策です。

この記事は、ネットワーク セキュリティ分野における機械学習アプリケーションの現状と将来の開発方向を技術実務者に紹介することを目的としています。

機械学習の用語

「AI」という用語と混同しないように、それに関連する用語を見てみましょう。

[[249533]]

AI(人工知能):幅広い概念です。機械を賢くする、つまり、視覚認識や自然言語処理などのさまざまなタスクを人間に代わって機械が処理できるようにする科学です。

AI は完全に機械学習や総合的な知能ではないことに注意してください。それは、コーナーまでの距離を測定するために掃除ロボットにインストールされた基本的なプログラムにすぎないかもしれません。

ML (機械学習): システムに AI を適用して経験から学習する方法 (または方法のセット)。

目標は、人間の行動を再現するだけでなく、株価の予測など複雑で多様なタスクに費やされる時間と労力を削減することです。

言い換えれば、機械学習はプログラミングやアルゴリズムに頼るのではなく、サンプルを使用してデータに基づいてパターンを識別し、決定を下します。

DL (ディープラーニング): 機械学習を使用してサンプルを識別する一連のテクノロジです (画像認識など)。システムは主に、オブジェクトのエッジ、構造、タイプ、およびオブジェクト自体を認識します。

ディープラーニングは、Deep Q-Learning (DQN) などの深層強化ニューラル ネットワークと完全に同一視することはできません。

上記の定義によれば、サイバーセキュリティにおける自動化された作業のほとんどは人間の労働を必要としないため、この分野では人工知能ではなく機械学習が主な応用となるでしょう。つまり、取得したデータに基づいて、いくつかの方法を使用して特定のタスクを処理します。

機械学習手法とサイバーセキュリティ

さまざまな機械学習の方法、アプリケーションの例、そしてそれらが解決できるサイバーセキュリティの問題について議論しましょう。

戻る

回帰(または予測)とは、既存のデータに関する関連知識を通じて新しいデータを予測することです。たとえば、住宅価格の動向を予測するために使用できます。

サイバーセキュリティでは、これにより、疑わしい取引の数や場所などの特性の確率に基づいて、さまざまな不正行為を検出することができます。

回帰技術に関しては、機械学習とディープラーニングの 2 つのカテゴリに分けることができます。もちろん、この区分は、以下で説明する他の方法にも適用されます。

機械学習の復活

機械学習の回帰手法は、大まかに次のカテゴリに分類でき、それぞれに長所と短所があります。

  • 線形回帰
  • 多項式回帰
  • リッジ回帰
  • 決定木
  • サポートベクター回帰 (SVR)
  • ランダムフォレスト

各方法の詳細については、以下のリンクをご覧ください。

  1. https://www.superdatascience.com/wp-content/uploads/2017/02/Regression-Pros-Cons.pdf

ディープラーニングの復活

ディープラーニング モデルで使用されるさまざまな回帰手法は次のとおりです。

  • 人工ニューラルネットワーク (ANN)
  • リカレントニューラルネットワーク (RNN)
  • ニューラルチューリングマシン (NTM)
  • マイクロニューラルコンピュータ (DNC)

分類

分類とは、2 セットの写真を犬と猫という 2 つのカテゴリに分類するなど、画像を区別するプロセスです。ネットワーク セキュリティの観点から、これを使用して、スパム フィルターを通じてさまざまな電子メールから実際のスパムを識別できます。

すべての分類定義を事前に準備し、既知のサンプルをグループ化した後、分類に教師あり学習法を使用できます。

機械学習の分類:

  • ロジスティック回帰 (LR)
  • k近傍法(K-NN)
  • サポートベクターマシン (SVM)
  • カーネル サポート ベクター マシン (KernelSVM)
  • ナイーブベイズ
  • 決定木分類
  • ランダムフォレスト分類

業界では一般的に、サポート ベクター マシンとランダム フォレストが最良の方法であると考えています。覚えておいてください、すべての人に当てはまるアプローチは存在せず、「ある人にとっての毒は、別の人にとっては蜂蜜かもしれない」のです。

ディープラーニングの分類:

  • 人工ニューラルネットワーク
  • 畳み込みニューラルネットワーク

より多くのデータを入力するほど、ディープラーニング手法はより効果的に機能しますが、生産時やシステムの定期的な再トレーニングで消費されるリソースも増加します。

クラスタリング

クラスタリングと分類の唯一の違いは、前者が直面するクラス情報が未知であること、つまり、データが分類可能かどうかがわからないため、教師なし学習に属することです。

セキュリティインシデントの原因、プロセス、結果には不確実性が多く、手がかりを見つけるにはすべての動作を分類する必要があるため、業界では一般的にクラスタリングがフォレンジック分析に最も適していると考えています。

たとえば、さまざまなマルウェア対策や電子メール セキュリティ ゲートウェイなどのソリューションでは、さまざまな異常な情報を分析して、法医学的証拠に関連するファイルを見つけることができます。さらに、クラスタリングは、ユーザーの行動を分析し、ユーザーをさまざまなグループに分割するためにも使用できます。

通常、クラスタリングはネットワーク セキュリティの問題を単独で解決するために使用されるのではなく、処理タスクのパイプラインに配置されます。たとえば、ユーザーを異なるグループに分割してリスク値を調整します。

機械学習のためのクラスタリング:

  • k近傍法(K-NN)
  • K平均法アルゴリズム
  • 混合モデル (LDA)
  • DBSCAN (ノイズを含むアプリケーションの密度ベースの空間クラスタリング)
  • ベイジアン
  • ガウス混合モデル
  • 凝集型階層的クラスタリング
  • 平均シフト

ディープラーニングのためのクラスタリング:

  • 自己組織化マップ(SOM)またはコホーネンニューラルネットワーク

連想ルール学習(推薦システム)

Netflix や SoundCloud がユーザーの映画や音楽の好みに基づいておすすめを表示するのと同じように、この原則をサイバーセキュリティにおけるインシデント対応に適用できます。

企業は多数のセキュリティ インシデントに対処するためにさまざまな種類の対応戦略を採用しているため、システムを使用して特定のインシデント対応タイプを学習し、誤検知にフラグを立て、対応するリスク値を変更して調査を容易にすることができます。

さらに、リスク管理ソリューションは、事前に定義された特性に基づいて、新しい脆弱性や誤った構成にリスク値を自動的に割り当てることができます。

機械学習の関連ルール:

  • 先験的に
  • ユークラトアルゴリズム
  • 頻繁パターン成長(FP-Growth)アルゴリズム

ディープラーニングの相関ルール:

  • 深層制限ボルツマンマシン (RBM)
  • ディープビリーフネットワーク(DBN)
  • スタックオートエンコーダ

次元削減

次元削減 (または一般化) は分類ほど一般的には使用されませんが、ラベルのないデータや多くの潜在的な機能を扱う複雑なシステムには不可欠です。

次元削減は、不要な特徴を除外するために役立ちます。しかし、クラスタリングと同様に、これは通常、より複雑なモデルの単なるサブタスクです。ネットワーク セキュリティの観点から、次元削減は、顔認識の全体的なソリューションにおいて iPhone などのデバイスでよく使用されます。

機械学習のための次元削減:

  • 主成分分析(PCA)
  • 特異値分解 (SVD)
  • T 分散近傍埋め込み (T-SNE)
  • 線形判別分析 (LDA)
  • 潜在意味解析 (LSA)
  • 因子分析(FA)
  • 独立成分分析 (ICA)
  • 非負行列分解 (NMF)

次元削減の詳細については、以下のリンクを参照してください。

  1. 出典: http://arxiv.org/pdf/1403.2877.pdf

生成モデル

上記の方法は既存の情報に基づいて決定を下しますが、生成モデルは過去の決定に基づいて実際のデータをシミュレートします。

ネットワーク セキュリティの観点では、入力パラメータを含むリストを生成することで、特定のアプリケーションに対してさまざまなインジェクション型の脆弱性をテストします。

さらに、Web アプリケーションの脆弱性スキャン ツールを使用して不正アクセスをテストすることもできます。原則として、ファイル名を変更することで新しいファイルを識別します。

たとえば、生成されたモデル内の「クローラー」は login.php という名前のファイルを検出し、login_1.php、login_backup.php、login.php.2017 など、可能性のあるバックアップやコピー内で類似のファイル名を検索します。

機械学習のための生成モデル:

  • マルコフ連鎖
  • さまざまな遺伝的アルゴリズム

ディープラーニングのための生成モデル:

  • 変分オートエンコーディング
  • 生成的敵対ネットワーク (GAN)
  • ボルツマンマシン

サイバーセキュリティと機械学習の必要性

上記では、機械学習手法の観点からネットワーク セキュリティに適用できるさまざまなシナリオについて説明しました。

それでは、一般的なサイバーセキュリティのニーズから始めて、なぜ、何を、どのようにという 3 つのレベルから機械学習を使用する機会を探ってみましょう。

最初のレベル: Why、つまり目標または要求 (脅威の検出や攻撃の予測など) に対応します。

Gartner の PPDR (ポリシー保護検出応答) モデルによると、すべてのセキュリティ要件は次の 5 つのカテゴリに分類できます。

  • 予測する
  • 防衛
  • 検出
  • 応答
  • モニター

第 2 レベル: テクノロジーを使用して「何を」という質問に答えます (例: どの側面で問題を監視するか)。

一般的には、次の側面が含まれます。

  • ネットワーク(ネットワークトラフィック分析と侵入検知)
  • エンドポイント(マルウェア対策)
  • アプリケーション (Web アプリケーション ファイアウォールまたはデータベース ファイアウォール)
  • ユーザー(ユーザー行動分析)
  • プロセス(不正防止)

上記の各レベルには異なるサブカテゴリがあります。たとえば、ネットワーク セキュリティには、有線、無線、クラウド環境が含まれます。注: データの依存関係が異なるため、レイヤー間で同じアルゴリズムを使用しないことをお勧めします。

3 番目のレベルは、「方法」の問題 (たとえば、特定のエリアのセキュリティを確認する方法) を扱います。

一般的には、次の側面が含まれます。

  • リアルタイム交通情報
  • 静的データ
  • 歴史

端末保護に関しては、侵入検知の考え方に従い、実行可能ファイルのさまざまなプロセスを監視し、静的バイナリ分析を使用して、対象端末の履歴動作の詳細な分析を行うことができます。

もちろん、ここですべてを網羅することはできませんので、技術的な観点からネットワーク セキュリティのさまざまなソリューションを検討してみましょう。

サイバー防衛における機械学習

ネットワーク防御には、イーサネット、ワイヤレス、SCADA (監視制御およびデータ収集)、仮想ネットワークなどのソリューションが含まれます。

[[249534]]

ネットワーク防御において最も有名なのは侵入検知システム (IDS) です。それらのほとんどはシグネチャ方式に基づいていますが、近年、検出精度を向上させるために機械学習を採用する試みが行われています。

ネットワーク セキュリティにおける機械学習の応用例の 1 つが、ネットワーク トラフィック分析 (NTA) です。あらゆるレベルでネットワーク トラフィックを詳細に分析し、さまざまな攻撃や異常を検出します。

具体的な応用例は以下の通りです。

  • 回帰アルゴリズムを通じて、ネットワーク パケットのさまざまなパラメータが予測され、通常のトラフィックと比較されます。
  • 分類アルゴリズムを通じて、スキャンや欺瞞などのさまざまな種類のネットワーク攻撃が識別されます。
  • フォレンジック分析はクラスタリング アルゴリズムを通じて実行されます。

これについては、次の 10 件の学術論文でさらに詳しく知ることができます。

  • 侵入検知における機械学習技術
  1. https://arxiv.org/abs/1312.2177v2
  • 長期短期記憶ネットワークを用いた時系列の異常検出
  1. https://www.elen.ucl.ac.be/Proceedings/esann/esannpdf/es2015-56.pdf
  • ルールベースの異常検出フレームワークによる効率的な侵入検出
  1. https://arxiv.org/abs/1410.7709v1
  • ネットワーク異常検出技術のレビュー
  1. https://www.gta.ufrj.br/~alvarenga/files/CPE826/Ahmed2016-Survey.pdf
  • ネットワーク侵入検知システムを分かりやすく分類し調査する
  1. https://arxiv.org/abs/1701.02145v1
  • ディープ パケット: ディープラーニングを使用して暗号化されたトラフィックを分類する新しいアプローチ
  1. https://arxiv.org/abs/1709.02656v3
  • 侵入検知システムとSnortシステムのアプリケーションにおける機械学習のパフォーマンスの比較
  1. 出典: http://arxiv.org/pdf/1710.04843v2.pdf
  • 侵入検知システムにおける機械学習アルゴリズムの評価
  1. 出典: arxiv.org
  • LSTMに基づくクラスクラスタリング異常検出
  1. 出典:http://arxiv.org/pdf/1802.00324.pdf
  • リカレントニューラルネットワークを使用した交通異常検出
  1. https://arxiv.org/abs/1803.10769v1
  • コンピュータネットワークトラフィックにおけるシーケンス集約ルールを使用した異常検出
  1. 出典: http://arxiv.org/pdf/1805.03735v2.pdf
  • IDSメソッドの大規模なコレクション
  1. 出典: http://arxiv.org/pdf/1806.03517v1.pdf

エンドポイント保護における機械学習

新世代のウイルス対策ソフトウェアは Endpoint Detection And Response であり、さまざまな実行可能ファイルとその内部プロセスの動作特性を学習するのに適しています。

[[249535]]

機械学習を使用してエンドポイント レベルのセキュリティ問題に対処する場合、エンドポイントの違いに応じて具体的なアプローチを変える必要があります。

一般的に、ワークステーション、サーバー、コンテナ、クラウドインスタンス、モバイル端末、PLC(プログラマブルロジックコントローラー)、IoTデバイスについては、具体的な状況は異なりますが、方法論的には次のような共通点が挙げられます。

  • 回帰アルゴリズムを使用して、実行可能プログラムの次のシステムコールを予測し、その機能を実際のプロセスの機能と比較します。
  • 分類アルゴリズムは、ソフトウェア アプリケーションをマルウェア、スパイウェア、ランサムウェアなどの種類に分類するために使用されます。
  • クラスタリング アルゴリズムにより、電子メール ゲートウェイは、違法な添付ファイルのフィルタリングなど、マルウェア攻撃から保護されます。

エンドポイント保護とマルウェアの詳細については、次の 3 つの学術記事を参照してください。

  • マルウェア検出: 実行可能ファイルの理解
  1. 出典: http://arxiv.org/pdf/1710.09435v1.pdf
  • ディープラーニングを使用したマルウェア分類に関する簡単な講演
  1. https://arxiv.org/abs/1807.08265v1
  • 時間と空間をまたいだマルウェア分類における実験的バイアスを排除
  1. https://arxiv.org/abs/1807.07838v1

アプリケーションセキュリティにおける機械学習

アプリケーション セキュリティは、Web アプリケーション ファイアウォールやコード分析だけではなく、データベース、ERP システム、SaaS アプリケーション、マイクロサービスなどの静的および動的な側面も含まれます。

したがって、一般的な機械学習モデルを構築しても、すべての脅威に効果的に対処することはできません。

[[249536]]

いくつかの典型的なシナリオを通じて、機械学習をアプリケーション セキュリティに適用する方法について説明してみましょう。

  • 回帰アルゴリズムにより、XML 外部エンティティ (XXE) 攻撃、サーバー側リクエスト偽造 (SSRF) 攻撃、認証バイパスなど、さまざまな異常な HTTP リクエストが検出されます。
  • 分類アルゴリズムを通じて、SQLi、クロスサイト スクリプティング (XSS)、リモート コマンド実行 (RCE) などの既知のタイプのインジェクション攻撃を検出します。
  • クラスタリング アルゴリズムを通じてユーザー アクティビティが検出され、DDoS 攻撃や大規模な脆弱性の悪用が発見されます。

これについては、次の 3 つの学術論文でさらに詳しく知ることができます。

  • Web攻撃における悪意のあるクエリの適応検出
  1. 出典: http://arxiv.org/pdf/1701.07774.pdf
  • JavaScript と VBScript を使用した悪意のあるスクリプトのニューラル分類の研究
  1. https://arxiv.org/abs/1805.05603v1
  • URLNet: 悪意のある URL を検出するためのディープラーニング URL 変形パターン
  1. https://arxiv.org/abs/1802.03162v2

ユーザー行動における機械学習

この分野での最も初期の応用例は、セキュリティ情報およびイベント管理 (SIEM) です。適切に構成すると、SIEM はユーザーの行動の検索と機械学習を通じてログを相関させて分析できます。

しかし、ユーザーおよびエンティティの行動分析 (UEBA) の理論では、SIEM は、より新しく高度な攻撃タイプやユーザー行動の継続的な変化に実際には対応できないとされています。

[[249537]]

UEBA ツールが監視する必要があるユーザーの種類には、ドメイン ユーザー、アプリケーション ユーザー、SaaS ユーザー、ソーシャル ネットワーク ユーザー、インスタント メッセージング ユーザーなどがあります。

一般的な攻撃に基づいて分類子をトレーニングするだけのマルウェア検出とは異なり、ユーザーの行動はより複雑なレイヤーであり、教師なし学習を伴います。

このようなデータセットにはラベルが付けられておらず、明確な検索方向もないため、すべてのユーザー行動に対応する統一されたアルゴリズムを作成することもできません。

企業でよく使用される機械学習の手法には次のようなものがあります。

  • 回帰アルゴリズムにより、通常とは異なる時間にシステムにログインするなどの異常なユーザー動作が検出されます。
  • 分類アルゴリズムを通じて、さまざまなタイプのユーザーに対してグループ内機能分析が実行されます。
  • 違反ユーザーはクラスタリング アルゴリズムによって検出され、グループから分離されます。

これについては、次の 2 つの学術論文でさらに詳しく知ることができます。

  • 企業の事例を通じて、拡張分離フォレストアルゴリズムを使用して異常なユーザー行動を検出する方法を探ります。
  1. https://arxiv.org/abs/1609.06676
  • 構造化されたサイバーセキュリティデータストリームにおけるディープラーニングによる監視なしの内部脅威検出
  1. https://arxiv.org/abs/1710.00811

プロセス動作における機械学習

企業によって業務プロセスは大きく異なる場合があり、銀行、小売システム、製造業におけるさまざまな不正行為の検査も異なります。

したがって、ある程度の業界の背景知識があればこそ、機能モデリングにおけるプロセスの動作や機械学習のアルゴリズム選択をより的確に行うことができます。

[[249538]]

以下は、産業用制御システム (ICS) および監視制御およびデータ収集 (SCADA) の分野で使用される一般的なアプローチです。

  • 回帰アルゴリズムを通じて、ユーザーの将来の行動を予測し、クレジットカード詐欺などの異常なアクティビティを検出します。
  • 分類アルゴリズムを通じて既知の種類の詐欺を検出します。
  • クラスタリング アルゴリズムにより、異常なプロセスが正常なビジネス プロセスから分類されます。

これについては、次の 3 つの学術論文でさらに詳しく知ることができます。

  • オートエンコーダ詐欺
  1. https://shiring.github.io/machine_learning/2017/05/01/fraud
  • クレジットカード不正検出技術の概要: データと技術
  1. https://arxiv.org/abs/1611.06439v1
  • 異常検出、産業用制御システム、畳み込みニューラルネットワーク
  1. https://arxiv.org/abs/1806.08110v1

機械学習に関するサイバーセキュリティ書籍

もちろん、サイバーセキュリティにおける機械学習についてさらに詳しく知りたい場合は、次の書籍も参照してください。

①「サイバーセキュリティにおけるAI」(2017年)--サイランスパブリッシング

はじめに: この本は厚くはありませんが、ネットワーク セキュリティにおける機械学習の基礎知識をうまく紹介しており、さまざまな実用的な例も備えています。

リンク:

  1. https://pages.cylance.com/en-us-introduction-to-ai-book.html?_ga=2.89683291.1595385041.1538052662-139740503.1538052662

②「機械学習とセキュリティ」(2018/01)-- O'Reilly出版

概要: 機械学習の例が多く、深層学習の例が少ない、この分野では今のところ最高の本です。

リンク:

  1. http://shop.oreilly.com/product/0636920065555.do

③「侵入テストにおける機械学習」(2018/07)-- Packt Publishing

はじめに:前 2 冊よりも知識の難易度が高く、より詳細な学習方法が提供されています。

リンク:

  1. https://www.packtpub.com/networking-and-servers/mastering-machine-learning-penetration-testing

④「マルウェアのデータサイエンス:攻撃検知と属性」(2018/09)

はじめに: この本はマルウェアに焦点を当てています。ごく最近出版されたため、まだレビューはありませんが、エンドポイント保護チームにとって必携の書籍となることは間違いありません。

リンク:

  1. https://nostarch.com/malwaredatascience

結論は

上で説明したのは、サイバーセキュリティにおける機械学習の応用の氷山の一角にすぎません。企業データの量が増加し、システムが複雑になり、ディープラーニングアプリケーションが進化し続けるにつれて、実践を通じてセキュリティ防御をよりインテリジェントにし続ける必要があります。

もちろん、悪魔は常に善よりも強いです。ハッカーもあらゆるところで機械学習を通じて攻撃能力を向上させるために努力しています。

[51CTO オリジナル記事、パートナーサイトに転載する場合は、元の著者とソースを 51CTO.com として明記してください]

<<:  マイクロソフトとフェイスブックが共同で人工知能ソフトウェアを開発し、グーグルの主導的地位に挑戦

>>:  人工知能認識により、物流会社はダブルイレブンの注文に簡単に対応できます。

ブログ    
ブログ    
ブログ    

推薦する

生涯にわたる機械学習: 持続可能な学習のパラダイム

[[207884]]序文:最近、アンサンブル学習における持続可能性に関する研究に関する非常に興味深い...

モデルを最適化する方法だけを心配する必要はありません。これは機械学習のすべてではありません。

[[263282]]機械学習分野の学生、研究者、企業の開発者は、より高い精度/AUC/mAP など...

...

...

AIは人間ではないため、米国特許庁はAIの発明の全てを認めない

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...

機械学習とは何ですか?機械はどんどん賢くなっていて、もはやSFの世界ではない

[[351468]]機械学習 (ML) は、一連のデータに基づいて予測を行うようにコンピューター シ...

韓国中央銀行が警告:AIが国内で400万の雇用を奪う可能性

IT Homeは11月16日、韓国銀行が最近、人工知能(AI)が労働市場に与える影響に関する調査報告...

Keras の重み制約を使用してディープ ニューラル ネットワークの過剰適合を減らす

[[333587]]重み制約は、ディープラーニング ニューラル ネットワーク モデルのトレーニング ...

データセキュリティ認識システムにおける機械学習の応用

私たちは情報過多の世界に住んでおり、情報を追跡したり、他の人のために手動でキュレートしたりすることが...

2021年には、人工知能が私たちの生活にさらに統合されるでしょう。これは何を意味するのでしょうか?

[[375039]]人工知能の歴史は、アラン・チューリングがチューリングテストを発明した 1950...

...

AIチップのスタートアップ企業が実装の道を探り、開発が成熟

ここ数年、AIチップの新興企業が雨後の筍のように出現した。現在、初期の参加者グループは、優れたチップ...

...

7つの主要カテゴリ、40を超える主要概念、機械学習を始める際に習得する必要があるすべての概念がここにあります

勉強すると、学んだことを忘れてしまい、忘れた後にまた学ぶという悪循環に陥ってしまう、そんな気持ちにな...