As the scope and impact of cyber threats have expanded, analysts utilize audit logs to hunt threats and investigate attacks. The provenance graphs constructed from kernel logs are increasingly considered as an ideal data source due to their powerful semantic expression and attack historic correlation ability. However, storing provenance graphs with traditional databases faces the challenge of high storage overhead, given the high frequency of kernel events and the persistence of attacks. To address this, we propose Dehydrator, an efficient provenance graph storage system. For the logs generated by auditing frameworks, Dehydrator uses field mapping encoding to filter field-level redundancy, hierarchical encoding to filter structure-level redundancy, and finally learns a deep neural network to support batch querying. We have conducted evaluations on seven datasets totaling over one billion log entries. Experimental results show that Dehydrator reduces the storage space by 84.55%. Dehydrator is 7.36 times more efficient than PostgreSQL, 7.16 times than Neo4j, and 16.17 times than Leonard (the work most closely related to Dehydrator, published at Usenix Security'23).
academic- 論文ID: 2501.00446
- タイトル: DEHYDRATOR: Enhancing Provenance Graph Storage via Hierarchical Encoding and Sequence Generation
- 著者: Jie Ying, Tiantian Zhu*, Mingqi Lv, Tieming Chen(浙江工業大学)
- 分類: cs.CR(暗号化とセキュリティ)
- 掲載誌: IEEE Transactions on Information Forensics and Security
- 論文リンク: https://arxiv.org/abs/2501.00446
ネットワーク脅威の範囲と影響の拡大に伴い、アナリストは監査ログを利用して脅威を追跡し、攻撃を調査しています。カーネルログから構築された溯源グラフは、強力なセマンティック表現能力と攻撃履歴の関連付け能力により、理想的なデータソースとして認識されるようになっています。しかし、カーネルイベントの高頻度と攻撃の永続性により、従来のデータベースを使用した溯源グラフストレージは高いストレージオーバーヘッドという課題に直面しています。この問題を解決するため、本論文はDEHYDRATORという効率的な溯源グラフストレージシステムを提案しています。監査フレームワークが生成するログに対して、DEHYDRATORはフィールドマッピングエンコーディングでフィールドレベルの冗長性を除去し、階層的エンコーディングで構造レベルの冗長性を除去し、最後に深層ニューラルネットワークを学習してバッチクエリをサポートします。10億件を超えるログエントリを含む7つのデータセットで評価した結果、DEHYDRATORはストレージスペースを84.55%削減し、PostgreSQLより7.36倍、Neo4jより7.16倍、Leonardより16.17倍効率的です。
- ネットワーク脅威の急増:2024年5月時点で9,478件のデータ漏洩事件が発生しており、2024年1月のMOAB事件では260億件のレコードが漏洩しました
- 溯源グラフの重要性:溯源グラフは有向グラフ構造として、ノードはシステムエンティティ(プロセス、ファイル、ソケット)を表し、エッジはシステムイベントを表し、強力なセマンティック表現と攻撃履歴の関連付け能力を持ちます
- ストレージの課題:4つの現象がストレージの困難さをもたらします:
- 不可逆的成長:データ完全性を維持するため、追加のみで削除なし
- 急速な拡張:マシンあたり1日あたりGB級のログを生成
- 長期間の継続:侵入が発見されるまで平均188日間継続
- クエリ要件:脅威ハンティングと因果分析の大規模クエリをサポートする必要
既存の効率的な溯源グラフストレージシステム(ESSPGs)は2つのカテゴリに分類されます:
- 剪定ベースの方法(LogGC、CPR、NodeMerge、DPRなど):ロスのある圧縮で、上位コンポーネントに偽陰性をもたらす可能性があります
- エンコーディングベースの方法(SEAL、SLEUTH、ELISE、Leonardなど):クエリをサポートできないか、補助コンポーネントが大量のストレージスペースを占有します
既存の方法は3つの重要な要件を同時に満たすことができません:
- コンテンツロスレス:偽陰性を避けるためすべてのデータを保持
- ストレージ効率:ストレージオーバーヘッドを最小化
- クエリサポート:大規模クエリ要件に対応
- DEHYDRATORシステムの提案:既存方法の限界を克服する効率的な溯源グラフストレージシステム。フィールドマッピングエンコーディングでフィールドレベルの冗長性を除去し、階層的エンコーディングで構造レベルの冗長性を除去し、深層ニューラルネットワークでバッチクエリをサポートします
- プロトタイプシステムの構築と大規模評価:7つのデータセット(合計10億件を超えるログ)で評価。ストレージスペースを84.55%削減し、PostgreSQL、Neo4j、Leonardと比較してそれぞれ7.36倍、7.16倍、16.17倍効率的です
- 包括的な評価分析:コンポーネント影響、適用シナリオ、パフォーマンス下限を探索。ストレージオーバーヘッドと遅延のバランスを取る遅延ストレージ比(LSR)指標を定義します
入力:監査フレームワークが収集した生のカーネルログ
出力:効率的に保存された溯源グラフ。上位コンポーネントのクエリ要件をサポート
制約:コンテンツロスレス、ストレージ効率、クエリサポート
DEHYDRATORは3段階のフレームワークを採用しています:
- ログ解析:正規表現を使用して生ログから重要フィールドを抽出
- 溯源グラフ構築:ノードテーブルNT(IdentiID、Name、Type)とエッジテーブルET(SrcID、DstID、TimeStamp、Operation)を構築
- フィールドマッピングエンコーディング:3種類のフィールドレベルの冗長性を処理
- 一意の値:より短い数字文字で置換
- 繰り返し値:インデックスで置換
- 増分値:オフセットで置換
階層的エンコーディング:
- 溯源グラフを階層的有向グラフとしてモデル化
- 各ノードvについて、すべてのソースノードと入辺情報を記録
- マージマッピングテーブルMMTと階層的エッジテーブルEThiを構築
- ネストされたリスト構造:Operation: timeOffset: nodeOffset
モデルトレーニング:
- 単層デコーダのみのTransformerを選択
- ストレージタスクをシーケンス生成タスクとしてモデル化
- char2vecエンコーディングを使用し、自動回帰生成
- モデル予測エラーを処理するための誤り訂正テーブルECTを構築
- ノード情報:マッピングテーブルMTを通じてインデックスを取得し、ノード情報を検索
- エッジ情報:インデックスをDNNモデルに入力し、シーケンスを生成。ECTで誤り訂正し、階層的デコーディングで読み取り可能な情報を取得
- 階層的エンコーディング設計:
- 因果分析の逆方向クエリ特性に基づく
- 複数の並列エッジをコンパクトなエンコーディング形式に圧縮
- 情報密度を増加させ、モデルトレーニングを加速
- DNNモデルの選択:
- 複数層LSTMの代わりに単層デコーダTransformerを使用
- より優れた並列化能力と特徴抽出能力
- ストレージタスクの低レベルの繰り返しパターン認識に適切
- 誤り訂正メカニズム:
- ECTテーブルは位置と正しい文字を記録
- DNNの圧縮をサポートしながらコンテンツロスレスを保証
7つのデータセット、合計10億件を超えるログ:
- G1-G4:DARPA TC E3のCADETS、THEIA、TRACEグループ
- G5-G6:DARPA TC E4のTRACEグループ
- G7:DEPIMACTデータセットのサブセット
- 平均エッジ数:17,754,566(Leonardより9.6倍大きい)
- ストレージオーバーヘッド:BPpre(前処理)とBPpost(後処理)のバイト数
- ストレージ遅延:Ts時間コスト
- 遅延ストレージ比:LSR = (BPpre - BPpost)/Ts
- PostgreSQL:リレーショナルデータベース
- Neo4j:グラフデータベース
- Leonard:DNNベースのストレージシステム(Usenix Security'23)
- 環境:Python 3.9、PyTorch 1.13.1、AMD EPYC 7513プロセッサ、RTX A6000 GPU
- ハイパーパラメータ:バッチサイズ4096、Adam最適化器、学習率0.001、最大トレーニングエポック数5
| システム | 平均ストレージオーバーヘッド(MB) | 平均遅延(s) | DEHYDRATORに対する相対的改善 |
|---|
| PostgreSQL | 1,818 | 45 | 7.36× |
| Neo4j | 1,770 | 21 | 7.16× |
| Leonard | 3,991 | 30,233 | 16.17× |
| DEHYDRATOR | 247 | 3,205 | - |
異なる深度のBFSクエリテストで:
- Neo4jが最高のパフォーマンス(~4.92s)
- DEHYDRATORが次点(~32.02s)
- PostgreSQLが最低(~32.08s)
コンポーネント貢献分析:
- 元のグラフ:1598.69MB
- フィールドマッピングエンコーディング後:405.2MB(25.3%)
- 階層的エンコーディング後:75.98MB(4.7%)
- モデルトレーニング後:192.42MB(12%)
階層的エンコーディングの影響:
- 階層的エンコーディング有り:EThi 20.19M、トレーニング時間660.69s、ECT 50.79M
- 階層的エンコーディング無し:EThi 268.31M、トレーニング時間5814.42s、ECT 1064.25M
- 階層的エンコーディングはトレーニング時間を8.8倍削減、ECTサイズを20.95倍削減
理論的導出は、平均次数davg ≥ 3の場合、階層的エンコーディングが有効であることを証明しています
実験検証:次数が3、4、5のデータセットで階層的エンコーディングが有効です
- ヒューリスティック方法:HOLMES、SLEUTH、Poirotなど、MITRE ATT&CKに基づいてマッチングルールを構築
- 異常検知:Streamspot、Unicorn、KAIROSなど、正常な行動からの偏差を識別することで侵入を検知
- RapSheet、HERCULE、NODOZEなどのシステムが脅威スコアリングと因果分析を実施
- DEPIMPACT、ATLASなどが依存性分析と攻撃パターン認識を実施
- ロスのある方法:LogGC、CPR、NodeMerge、DPRなどの剪定技術
- ロスレス方法:SEAL、ELISE、Leonardなどのエンコーディング技術
- DEHYDRATORは溯源グラフストレージの3つの課題を成功裏に解決しました:コンテンツロスレス、ストレージ効率、クエリサポート
- 階層的エンコーディングは重要な革新で、構造レベルの冗長性を効果的に処理します
- 単層Transformerは複数層LSTMよりもストレージタスクに適しています
- 大規模データセットで既存方法を大幅に上回ります
- ストレージ遅延が高い:平均3205秒で、データセット時間帯の13.29%を占有
- クエリ効率:自動回帰生成により長いシーケンスクエリの遅延が高い
- モデル容量の選択:最適なモデル容量ηを決定するための理論的指導が不足
- 適用範囲:主にコールドストレージシナリオに適用でき、ACID属性をサポートしません
- AI加速技術を活用してトレーニングと推論効率を向上
- 最適なモデル容量選択の理論的分析
- 汎用グラフデータベースアプリケーションへの拡張
- クエリアルゴリズムの最適化により遅延を削減
- 問題の重要性:ネットワークセキュリティ分野の実際の課題を解決
- 方法の革新性:階層的エンコーディングは領域特性とDNNの利点を巧みに組み合わせ
- 実験の充実性:大規模データセットでの検証、包括的なアブレーション実験と比較分析
- 工学的価値:顕著なストレージ効率の向上、実用性が強い
- 遅延の問題:ストレージとクエリの遅延がまだ高く、リアルタイムアプリケーションを制限
- 理論的分析:モデル容量選択に関する理論的指導が不足
- 適用範囲:主に特定の溯源グラフシナリオを対象とし、汎化性が限定的
- ベースラインの比較:Leonardの実装に不公正な比較の可能性
- 学術的貢献:溯源グラフストレージに新しい技術パスを提供
- 実用的価値:ネットワークセキュリティインフラストラクチャに重要な意義
- 再現性:コードとデータのオープンソース化を約束
- 推進性:方法は他のグラフストレージシナリオに拡張可能
- ネットワークセキュリティ:EDRシステム、脅威ハンティング、攻撃調査
- コールドストレージ:履歴データのアーカイブと分析
- 大規模グラフデータ:高次数、高冗長性のグラフ構造ストレージ
- バッチクエリ:大量の並列クエリが必要なアプリケーションシナリオ
本論文は93篇の関連文献を引用しており、ネットワークセキュリティ、グラフ圧縮、深層学習など複数の分野の重要な研究をカバーし、研究に堅実な理論的基礎を提供しています。