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).
- 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 использует кодирование сопоставления полей для фильтрации избыточности на уровне полей, иерархическое кодирование для фильтрации избыточности на уровне структуры и, наконец, глубокую нейронную сеть для поддержки пакетных запросов. При оценке на семи наборах данных с общим количеством более одного миллиарда записей журналов результаты экспериментов показывают, что DEHYDRATOR сокращает пространство хранения на 84,55%, что в 7,36 раза эффективнее PostgreSQL, в 7,16 раза эффективнее Neo4j и в 16,17 раза эффективнее Leonard.
- Рост киберугроз: По состоянию на май 2024 года произошло 9478 утечек данных, при этом событие MOAB в январе 2024 года привело к утечке 26 миллиардов записей
- Значимость графов происхождения: Графы происхождения как структуры ориентированных графов, где узлы представляют системные сущности (процессы, файлы, сокеты), а рёбра представляют системные события, обладают мощной семантической выразительностью и способностью отслеживать историю атак
- Проблемы хранения: Четыре явления создают трудности при хранении:
- Необратимый рост: Для сохранения целостности данных добавляются только новые данные, удаление исключено
- Быстрое расширение: Каждая машина генерирует журналы размером в гигабайты в день
- Длительный период: Среднее время обнаружения вторжения составляет 188 дней
- Требования к запросам: Необходимо поддерживать крупномасштабные запросы для охоты на угрозы и причинно-следственного анализа
Существующие эффективные системы хранения графов происхождения (ESSPGs) делятся на две категории:
- Методы на основе обрезки (LogGC, CPR, NodeMerge, DPR): Сжатие с потерями, которое может привести к ложноотрицательным результатам в компонентах верхнего уровня
- Методы на основе кодирования (SEAL, SLEUTH, ELISE, Leonard): Либо не поддерживают запросы, либо вспомогательные компоненты занимают значительное пространство хранения
Существующие методы не могут одновременно удовлетворить трём ключевым требованиям:
- Сохранение содержимого: Сохранение всех данных для избежания ложноотрицательных результатов
- Эффективность хранения: Минимизация затрат на хранение
- Поддержка запросов: Обработка крупномасштабных запросов
- Предложение системы DEHYDRATOR: Эффективная система хранения графов происхождения, преодолевающая ограничения существующих методов, использующая кодирование сопоставления полей для фильтрации избыточности на уровне полей, иерархическое кодирование для фильтрации избыточности на уровне структуры и глубокую нейронную сеть для поддержки пакетных запросов
- Построение прототипной системы и крупномасштабная оценка: Оценка на семи наборах данных (более одного миллиарда журналов) показывает сокращение пространства хранения на 84,55%, что в 7,36 раза эффективнее PostgreSQL, в 7,16 раза эффективнее Neo4j и в 16,17 раза эффективнее Leonard
- Комплексный анализ оценки: Исследование влияния компонентов, применимых сценариев и нижних границ производительности, определение метрики коэффициента задержки хранения (LSR) для балансирования затрат на хранение и задержки
Входные данные: Исходные журналы ядра, собранные фреймворками аудита
Выходные данные: Эффективно хранящийся граф происхождения, поддерживающий запросы компонентов верхнего уровня
Ограничения: Сохранение содержимого, эффективность хранения, поддержка запросов
DEHYDRATOR использует трёхэтапный фреймворк:
- Анализ журналов: Использование регулярных выражений для извлечения ключевых полей из исходных журналов
- Построение графа происхождения: Построение таблицы узлов NT (IdentiID, Name, Type) и таблицы рёбер ET (SrcID, DstID, TimeStamp, Operation)
- Кодирование сопоставления полей: Обработка трёх типов избыточности на уровне полей
- Уникальные значения: Замена более короткими числовыми символами
- Повторяющиеся значения: Замена индексами
- Дополнительные значения: Замена смещениями
Иерархическое кодирование:
- Моделирование графа происхождения как иерархического ориентированного графа
- Для каждого узла v запись всех исходных узлов и информации о входящих рёбрах
- Построение объединённой таблицы сопоставления MMT и иерархической таблицы рёбер EThi
- Структура вложенного списка: Operation: timeOffset: nodeOffset
Обучение модели:
- Выбор однослойного декодера Transformer
- Моделирование задачи хранения как задачи генерации последовательности
- Использование кодирования char2vec, авторегрессивная генерация
- Построение таблицы исправления ошибок ECT для обработки ошибок предсказания модели
- Информация узла: Получение индекса через таблицу сопоставления MT, извлечение информации узла
- Информация ребра: Ввод индекса в модель DNN, генерация последовательности, исправление ошибок ECT, иерархическое декодирование для получения читаемой информации
- Проектирование иерархического кодирования:
- На основе характеристик обратного запроса причинно-следственного анализа
- Сжатие нескольких параллельных рёбер в компактную форму кодирования
- Увеличение плотности информации, ускорение обучения модели
- Выбор модели DNN:
- Однослойный декодер Transformer вместо многослойного LSTM
- Лучшие возможности параллелизации и извлечения признаков
- Подходит для распознавания низкоуровневых повторяющихся паттернов в задачах хранения
- Механизм исправления ошибок:
- Таблица ECT записывает позицию и правильный символ
- Гарантирует сохранение содержимого при поддержке сжатия DNN
Семь наборов данных с общим количеством более одного миллиарда журналов:
- G1-G4: CADETS, THEIA, TRACE группы DARPA TC E3
- G5-G6: TRACE группа DARPA TC E4
- G7: Подмножество набора данных DEPIMACT
- Среднее количество рёбер: 17 754 566 (в 9,6 раза больше, чем Leonard)
- Затраты на хранение: BPpre (предварительная обработка) и BPpost (постобработка) в байтах
- Задержка хранения: Ts временные затраты
- Коэффициент задержки хранения: LSR = (BPpre - BPpost)/Ts
- PostgreSQL: Реляционная база данных
- Neo4j: Графовая база данных
- Leonard: Система хранения на основе DNN (Usenix Security'23)
- Окружение: Python 3.9, PyTorch 1.13.1, процессор AMD EPYC 7513, GPU RTX A6000
- Гиперпараметры: Размер пакета 4096, оптимизатор Adam, скорость обучения 0,001, максимум 5 эпох обучения
| Система | Среднее хранилище (МБ) | Средняя задержка (с) | Улучшение относительно 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,92 с)
- DEHYDRATOR занимает второе место (~32,02 с)
- PostgreSQL показывает худший результат (~32,08 с)
Анализ вклада компонентов:
- Исходный граф: 1598,69 МБ
- После кодирования сопоставления полей: 405,2 МБ (25,3%)
- После иерархического кодирования: 75,98 МБ (4,7%)
- После обучения модели: 192,42 МБ (12%)
Влияние иерархического кодирования:
- С иерархическим кодированием: EThi 20,19 М, время обучения 660,69 с, ECT 50,79 М
- Без иерархического кодирования: EThi 268,31 М, время обучения 5814,42 с, ECT 1064,25 М
- Иерархическое кодирование сокращает время обучения в 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 успешно решает три основные проблемы хранения графов происхождения: сохранение содержимого, эффективность хранения, поддержка запросов
- Иерархическое кодирование является ключевой инновацией, эффективно обрабатывающей избыточность на уровне структуры
- Однослойный Transformer более подходит для задач хранения, чем многослойный LSTM
- Значительное превосходство над существующими методами на крупномасштабных наборах данных
- Высокая задержка хранения: Средняя 3205 секунд, составляющая 13,29% временного периода набора данных
- Эффективность запросов: Авторегрессивная генерация приводит к высокой задержке запросов для длинных последовательностей
- Выбор ёмкости модели: Отсутствие теоретического руководства для определения оптимальной ёмкости модели η
- Область применения: Главным образом подходит для сценариев холодного хранилища, не поддерживает свойства ACID
- Использование технологий ускорения AI для повышения эффективности обучения и вывода
- Теоретический анализ выбора оптимальной ёмкости модели
- Расширение на универсальные приложения графовых баз данных
- Оптимизация алгоритмов запросов для снижения задержки
- Значимость проблемы: Решение практических проблем в области кибербезопасности
- Инновационность метода: Иерархическое кодирование умело сочетает особенности предметной области и преимущества DNN
- Полнота экспериментов: Проверка на крупномасштабных наборах данных, комплексные абляционные эксперименты и сравнительный анализ
- Инженерная ценность: Значительное улучшение эффективности хранения, высокая практическая применимость
- Проблема задержки: Задержка хранения и запросов остаётся высокой, ограничивая приложения в реальном времени
- Теоретический анализ: Отсутствие теоретического руководства для выбора ёмкости модели
- Область применения: Главным образом ориентирована на специфический сценарий графов происхождения, ограниченная обобщаемость
- Сравнение базовых линий: Реализация Leonard может содержать несправедливые сравнения
- Академический вклад: Предоставление нового технического пути для хранения графов происхождения
- Практическая ценность: Важное значение для инфраструктуры кибербезопасности
- Воспроизводимость: Обещание открытого исходного кода и данных
- Масштабируемость: Методология может быть расширена на другие сценарии хранения графов
- Кибербезопасность: Системы EDR, охота на угрозы, расследование атак
- Холодное хранилище: Архивирование и анализ исторических данных
- Хранение крупномасштабных графовых данных: Хранение структур графов с высокой степенью и высокой избыточностью
- Пакетные запросы: Сценарии приложений, требующие большого количества параллельных запросов
Статья цитирует 93 связанные работы, охватывающие важные исследования в области кибербезопасности, сжатия графов, глубокого обучения и других областей, обеспечивая прочную теоретическую основу для исследования.