Learning Joint Embeddings of Function and Process Call Graphs for Malware Detection
Aneja, Aneja, Kantarcioglu
Software systems can be represented as graphs, capturing dependencies among functions and processes. An interesting aspect of software systems is that they can be represented as different types of graphs, depending on the extraction goals and priorities. For example, function calls within the software can be captured to create function call graphs, which highlight the relationships between functions and their dependencies. Alternatively, the processes spawned by the software can be modeled to generate process interaction graphs, which focus on runtime behavior and inter-process communication. While these graph representations are related, each captures a distinct perspective of the system, providing complementary insights into its structure and operation. While previous studies have leveraged graph neural networks (GNNs) to analyze software behaviors, most of this work has focused on a single type of graph representation. The joint modeling of both function call graphs and process interaction graphs remains largely underexplored, leaving opportunities for deeper, multi-perspective analysis of software systems. This paper presents a pipeline for constructing and training Function Call Graphs (FCGs) and Process Call Graphs (PCGs) and learning joint embeddings. We demonstrate that joint embeddings outperform a single-graph model. In this paper, we propose GeminiNet, a unified neural network approach that learns joint embeddings from both FCGs and PCGs. We construct a new dataset of 635 Windows executables (318 malicious and 317 benign), extracting FCGs via Ghidra and PCGs via Any.Run sandbox. GeminiNet employs dual graph convolutional branches with an adaptive gating mechanism that balances contributions from static and dynamic views.
academic
Обучение совместным вложениям графов вызовов функций и процессов для обнаружения вредоносного ПО
Название: Learning Joint Embeddings of Function and Process Call Graphs for Malware Detection
Авторы: Kartikeya Aneja (University of Wisconsin-Madison), Nagender Aneja (Virginia Tech), Murat Kantarcioglu (Virginia Tech)
Классификация: cs.LG (машинное обучение), cs.CR (криптография и безопасность)
Конференция: 39-я конференция по нейронным системам обработки информации (NeurIPS 2025) Семинар: Новые перспективы в развитии машинного обучения на графах
Программные системы могут быть представлены в виде графических структур, отражающих зависимости между функциями и процессами. В зависимости от целей извлечения и приоритетов программные системы могут быть представлены различными типами графов. Например, граф вызовов функций (FCG) выделяет отношения между функциями, тогда как граф взаимодействия процессов (PCG) сосредоточен на поведении во время выполнения и межпроцессном взаимодействии. Хотя эти графические представления связаны, каждое из них отражает различные аспекты системы, предоставляя дополняющую информацию. Предыдущие исследования в основном сосредоточены на одном графическом представлении, а работ по совместному моделированию FCG и PCG относительно мало. В данной статье предлагается GeminiNet — унифицированный нейросетевой подход для обучения совместным вложениям FCG и PCG. Эксперименты на наборе данных из 635 исполняемых файлов Windows показывают, что совместные вложения значительно превосходят модели с одним графом.
Обнаружение вредоносного ПО является ключевой задачей в области кибербезопасности. Традиционные методы в основном полагаются на один тип программного представления для анализа, используя либо статический анализ (например, граф вызовов функций), либо динамический анализ (например, граф взаимодействия процессов), но редко объединяют оба подхода.
Необходимость многоаспектного анализа: Программные системы обладают сложностью, и единственный аспект может упустить важную информацию
Устойчивость к противодействию: Зависимость от одного модального представления уязвима для противодействующих атак; мультимодальное слияние повышает устойчивость
Дополняющая информация: Статический FCG отражает структуру потока управления, динамический PCG отражает траектории выполнения; оба дополняют друг друга
Данная работа направлена на построение более комплексной и надежной системы обнаружения вредоносного ПО путем совместного обучения представлениям вложений FCG и PCG, преодолевая ограничения единственного модального представления.
Предложена архитектура GeminiNet: Разработана двухветвевая сверточная нейронная сеть на графах, обрабатывающая FCG и PCG отдельно и объединяющая вложения через механизм адаптивного затвора
Построен мультимодальный набор данных: Создан набор данных, содержащий 635 исполняемых файлов Windows с одновременным извлечением FCG и PCG
Разработаны совместные признаки узлов: Объединены локальное распределение степеней (LDP) и энтропия Шеннона, предоставляющие структурную и статистическую информацию
Проверена преимущество слияния: Обширные эксперименты подтверждают, что совместные вложения значительно превосходят модели с одним графом и методы простого объединения
Для исполняемого файла Windows требуется извлечь его граф вызовов функций G₁=(V₁,E₁) и граф вызовов процессов G₂=(V₂,E₂), обучить представление совместного вложения для двоичной классификации (вредоносное/безопасное).
Вычисляется информационная энтропия на уровне файла:
H(X) = -∑ᵢ pᵢ log₂ pᵢ
где pᵢ — вероятность байта i. Высокая энтропия указывает на высокую случайность (возможно вредоносное ПО), низкая энтропия указывает на высокую избыточность (возможно безопасное ПО).
Адаптивное взвешенное слияние: По сравнению со статической конкатенацией или усреднением, механизм затвора может адаптивно регулировать вклад каждого модального представления в зависимости от образца
Многогранулярные признаки: Объединение локальной топологии (LDP) и глобальной статистической информации (энтропия)
Сквозное обучение: Вся архитектура может обучаться сквозным образом, веса затвора автоматически оптимизируются
Гибкость архитектуры: Может деградировать в модель с одним графом путем отключения ветви
Существующие методы в основном используют простую конкатенацию или усреднение, не имея механизма адаптивного взвешивания; затворное слияние в данной работе предоставляет более гибкое решение.
Архитектуры графовых нейронных сетей (GCN, GIN, GraphSAGE, SGC)
Инструменты и платформы анализа программного обеспечения
Ключевые цитируемые работы включают архитектуру GIN Xu и др., упрощенный метод SGC Wu и др., а также несколько связанных работ по обнаружению вредоносного ПО, предоставляющие прочную теоретическую основу и сравнительные эталоны для данной работы.