「 Openness Initiative」に沿って、私たちは透明性に引き続き取り組んでおり、社内のAI R&Dの取り組みが脅威検出チームの生産性をどのように向上させたかを共有したいと考えています。 Elastic Security Labsは過去数カ月間、よりジェネレーティブなAI機能を活用して、検知エンジニアリングワークフローの加速に注力してきました。
ONWeek探検オデッセイ
Elasticでは、長年にわたる 「Space, Time」 の伝統とは別に、 6 か月ごとに1週間を、単独で、またはチームでONWeekと呼ばれる活動に取り組んでいます。 今週は、私たち全員が機能作業、技術的負債、およびその他の同様のタスクから離れる週です。また、この週は、革新的なアイデア、アクティブラーニングの機会、応用研究、概念実証作業に焦点を当てます。 前回のONWeekでは、Elasticの既存の機能で大規模言語モデル(LLM)を活用し、セキュリティアラートのトリアージとティア 1 アナリストの生産性を向上させるアイデア、および社内の生産性ワークフロー、および実験とチューニングの基本的なビルディングブロックを理解するアイデアを検討しました。 図 1 は、イベントの取り込み、カスタマイズされたプロンプトによるデータの受け渡し、さまざまなElasticワークフロー用に設計されたさまざまなクラスのコンテンツの生成など、私たちが持っている研究のさまざまな機会を示しています。
図1:GenAIセキュリティのユースケース
基本的には、従来の ML アプローチをいくつか検討しましたが、最終的には、これらのツールと概念を念頭に置きながら、シンプルから始めて徐々に複雑さを増すことに焦点を当てました。
- シンプルに始める - 私たちのアプローチを導いたマントラ。
- Azure OpenAI - GPT-4 LLM へのアクセス
- プロンプトエンジニアリング - LLMに合わせた指示を作成します。
- LangChain - LLMアプリケーションの作成を支援するPythonライブラリ。
私たちの目標の1つは、Elasticの検知エンジニアのワークフローを合理化し、クエリ言語の奥深さとニュアンスを示しながら、より優れた検知にさらに注力できるようにすることです。 そこに向かう途中で、プロンプトを検証し、運用用に準備するための実験に時間を費やしています。 プロンプトを反復処理するときに、誤って回帰が発生しないようにしたいと考えています。 AIの進歩が出現するにつれて、私たちはT&Eが微調整、モデルの交換、または迅速な変更など、あらゆる調整が意図的なものであることを確認するつもりです。 最終的には、アナリストが最新のAIML機能をシームレスに活用し、最適なプロンプトやML手法を適切なコンテキストで適用できることを目指しています。
これらの目標を念頭に置いて、5 月の最初の調査ユースケースでは、クエリ生成に焦点を当てました。 私たちはすぐに、最小限のデータとプロンプトエンジニアリングで、一連のプロンプトを連鎖させて生のElasticイベントをEQLクエリに変換できることを学びました。
図 2: クエリ生成 POC
実験目的で、 Red Team Automation(RTA) スクリプトを使用して疑わしいアクティビティをシミュレートし、Elastic Agentを介してSIEMのエンドポイントアクティビティをキャプチャしました。 図 2 は、Elasticスタックからのサンプルイベントを示しており、gold.jsonテストファイルにエクスポートされ、クエリ生成に不可欠なイベントフィールドが含まれています。
次に、GPTにRTAの実行時間枠をカバーするイベントコレクションを分析し、疑わしい動作のあるイベントに焦点を当てるように依頼しました。 POC では、プロンプトから、潜在的な異常に関連する主要な値を特定するように求められました。 その後、後続のプロンプトに従って、イベントをチャンク化し、すべてのアクティビティを要約しました。 すべての要約に基づいて、GPTに特定の値をキーにせずに指標のリストを生成するように依頼しました。 この疑わしい行動の短いリストを使用して、GPTにクエリの生成を依頼しました。 長期的なオープンソース開発の大きな利点は、GPT関連のモデルがElasticのコンテンツに精通しているため、プロンプトを過剰に調整する必要がないというメリットがあることです。
生データから EQL クエリへの移行は概念的には簡単でしたが、Azure OpenAI によるサービスの可用性など、小さな問題に遭遇しました。 比較的安価で、OpenAI と Azure OpenAI の推論および埋め込み API を使用するのに 1 週間で約 160 ドルかかると見積もられました。 また、Jupyter Notebook での共同作業を容易にするために GCP Vertex AI Workbench を使用することも検討しましたが、利用可能なオープンソース(OSS)モデルの使用が複雑なため、短い ONWeek では使用が困難でした。
図3:5月 2023 日ONWeekの主な成果
ONWeekを使用してロードマップを成熟させ、インメモリのライブラリベースのベクトル検索の実装を超えて、Elasticsearchの検出ルールコンテンツのよりパフォーマンスが高く、スケーラブルで、本番環境に対応したデータストアに拡張しました。 最初の結果に基づいて、GenAIをアナリストワークフローに統合する可能性と実行可能性を理解しました(例: イベントの時間枠の選択、クエリの生成、およびタイムラインの追加が可能です)。 これらの早期の成功に基づいて、私たちはさらなるLLM研究開発を追求するための社内ロードマップ計画を立て、社内の生産性ワークフローの1つに取り組むことを決定しました。
新たな地平線:調査ガイドの生成
Elasticセキュリティラボは長年にわたり、コンテンツを成熟させてきました。 2020 年に調査ガイドのセキュリティ機能を追加して開始し、2021 年にこれらのガイドを標準化します。2023年までに、 900 を超えるルールが施行されたため、900+の事前構築済みルールすべてについて、高精度で詳細かつ標準化されたガイドを効率的に生成する方法を積極的に模索しています。
従来のMLアプローチ(類似性ベクトル検索など)とプロンプトエンジニアリングの特別なソースを融合させ、私たちのチームはRulecraftと呼ばれる調査ガイド生成を中心とした新しいプロトタイプを作成しました。 今では、ルールIDを手にするだけで、ルール作成者はわずか数分でベースライン調査ガイドソリューションを生成できます。
図4:サンプル調査ガイド
この最初の調査では、検出ルールを提供しましたが、GPTの説明や名前など、ルールからのいくつかのフィールドに入力を制限しました。 また、クエリを提供しようとしましたが、期待した結果を過剰に調整しているように見えました。 当初は、GPTが最小限の労力で適切な調査ガイドをどれだけうまく生成できるかを評価するために、これらのフィールドを含む簡単なプロンプトを提供しました。 さらに調査を進めていくと、EQLクエリ生成の実験で行ったのと同様の複数のプロンプトをチェーンすることでメリットが得られることが明らかになりました。 そのため、調査ガイドの個別のセクションに合わせたプロンプトの作成に時間を費やしました。 プロンプトをセグメント化することで、柔軟性が向上しただけでなく、GPTが最も幻覚を見る傾向のある「関連ルール」セクションなど、GPTがつまずいた領域にも対処できました。 このような場合、類似性検索などの従来の ML 手法を使用し、ルールをベクトルデータベースに統合してコンテキストを強化しました。
次に、特定のセクションに追加のコンテキストを注入する機会を特定しました。 ガイド全体の統一性を確保するために、各セグメントの承認されたコンテンツと言語のライブラリをキュレーションしました。 その後、このライブラリは、GPTが確立された標準メッセージと同様の応答を生成し、フォーマットするように導きました。 次に、GenAIが作成したガイドと手動で作成したガイドを比較して、他のフォーマットの不一致、GPTによってもたらされる一般的なエラー、さらにはプロンプトの広範な問題を特定しました。
これらの調査結果に基づいて、文字列の書式設定などの後処理手法を使用するのではなく、プロンプトを調整することで、生成されたコンテンツを改善することを選択しました。 自動調査ガイドは完璧ではありませんが、当社の検出エンジニアに確固たる出発点を提供します。 これまで、調査ガイドは、ルールが期待する行動としてより多くのコンテキストをレビュアーに提供することにより、PRピアレビュープロセスを強化してきました。 これで、ベースガイドを生成して調整し、検出エンジニアがゼロから始めるのではなく、必要に応じて詳細を追加できるようになりました。
この機能を検出エンジニアに直接提供するために、Rulecraft を GitHub アクション ワークフローに統合し、オンデマンドでガイドを生成できるようにしました。 また、650+のガイドをわずか 13 時間で作成しましたが、これは従来は数ヶ月に及ぶ作業でした。 この自動化により、小さな調整を行い、調査ガイドが不足しているルールの基本コンテンツを迅速に再生成することができます。 繰り返しになりますが、これらのガイドはまだ厳格な内部レビューの対象となっていますが、予備ドラフトにGenAIを活用することで節約された時間と労力は信じられないほどです。
未来を描く:次のステップ
私たちの研究開発の旅は続いており、LLMを使用したコンテンツ生成へのアプローチを洗練し、結果をより徹底的に検証することに重点を置いています。 ここでは、LLMを検出エンジニアリングワークフローに統合することの実行可能性と有効性を調査した際の優先事項の短いリストを示します。
- 独自のモデルと最新のオープンソースモデルの比較
- イベントフィルタリング、プロンプト最適化、さまざまなモデルパラメータの探索など、実験プロセスをさらに洗練させます
- テストスイートを作成して、結果を検証し、回帰を防ぎます。
- 当社の研究開発の進歩を Elastic AI Assistantにシームレスに統合します。
全体として、調査ガイドの範囲を劇的に拡大し、これらのガイドをゼロから作成するのにかかる時間を短縮したいと考えています。 各調査ガイドでは、アラートのトリアージに関する詳細な手順とクエリをアナリストに提供します。 お客様第一の考え方を ソースコードの最前線に据え、さらに高品質の調査ガイドを追加することでアナリストのエクスペリエンスを向上させることを目指しています。これにより、お客様がFP分析とアラートのトリアージに費やす時間を減らすことができます。
まとめ
オープンイノベーションと透明性を堅持するElastic Security Labsは、脅威検知プロセスの生産性を向上させるためのジェネレーティブAIの旅を開始しました。 私たちの取り組みは進化を続けており、迅速なエンジニアリングと従来のMLアプローチをケースバイケースで取り入れており、「LetmeaskGPT」や「Rulecraft」などの研究開発の概念実証が増えています。 後者のPOCにより、ベースラインガイドの作成、アナリストエクスペリエンスの向上、誤検知分析の削減に必要な時間が大幅に短縮されました。 やるべきことはまだまだたくさんありますので、ぜひご参加ください。 私たちは進歩を遂げてきましたが、次のステップには、さらなる改良、結果を厳密に検証するためのフレームワークの開発、R&Dの運用化の機会の模索が含まれ、セキュリティの進歩の最前線にとどまるようにしています。
私たちは常にこのようなユースケースやワークフローを聞くことに関心を持っているので、 いつものようにGitHubの問題で連絡を取ったり、 コミュニティSlackでチャットしたり、 ディスカッションフォーラムで質問したりしてください。
また、これらの追加リソースをチェックして、最新の AI 機能をアナリストの手に渡す方法について詳しく学んでください。
- ElasticsearchでChatGPTを責任を持って使用する方法を学びましょう
- ESREを搭載したオープンなジェネレーティブAIの相棒である新しいElastic AI Assistant をご覧になり、 セットアップを始めましょう