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
Apprendimento di Embedding Congiunti di Grafi di Chiamate di Funzioni e Processi per il Rilevamento di Malware
Titolo: Learning Joint Embeddings of Function and Process Call Graphs for Malware Detection
Autori: Kartikeya Aneja (University of Wisconsin-Madison), Nagender Aneja (Virginia Tech), Murat Kantarcioglu (Virginia Tech)
Classificazione: cs.LG (Apprendimento Automatico), cs.CR (Crittografia e Sicurezza)
Conferenza di Pubblicazione: 39th Conference on Neural Information Processing Systems (NeurIPS 2025) Workshop: New Perspectives in Advancing Graph Machine Learning
I sistemi software possono essere rappresentati come strutture grafiche che catturano le dipendenze tra funzioni e processi. A seconda degli obiettivi di estrazione e delle priorità, i sistemi software possono essere rappresentati come diversi tipi di grafi. Ad esempio, il grafo di chiamate di funzioni (FCG) evidenzia le relazioni tra funzioni, mentre il grafo di interazione tra processi (PCG) si concentra sul comportamento a runtime e sulla comunicazione tra processi. Sebbene queste rappresentazioni grafiche siano correlate, ciascuna cattura prospettive diverse del sistema, fornendo intuizioni complementari. La ricerca precedente si è principalmente concentrata su rappresentazioni grafiche singole, con relativamente pochi lavori che affrontano la modellazione congiunta di FCG e PCG. Questo articolo propone GeminiNet, un approccio di rete neurale unificato che apprende gli embedding congiunti di FCG e PCG. Gli esperimenti su un dataset di 635 file eseguibili Windows dimostrano che gli embedding congiunti superano significativamente i modelli a grafo singolo.
Il rilevamento di malware è una sfida centrale nel campo della sicurezza informatica. I metodi tradizionali si basano principalmente su rappresentazioni software singole per l'analisi, utilizzando o l'analisi statica (come i grafi di chiamate di funzioni) oppure l'analisi dinamica (come i grafi di interazione tra processi), ma raramente combinano i due approcci.
Necessità di Analisi Multi-Prospettiva: I sistemi software hanno una complessità intrinseca; una singola prospettiva può facilmente tralasciare informazioni importanti
Robustezza Avversariale: La dipendenza da una singola modalità è vulnerabile agli attacchi avversariali; la fusione multi-modale può aumentare la robustezza
Informazioni Complementari: L'FCG statico cattura la struttura del flusso di controllo, mentre il PCG dinamico riflette le traiettorie di esecuzione; i due sono complementari
Rappresentazione Grafica Singola: La maggior parte della ricerca utilizza solo uno tra FCG o PCG
Informazioni Incomplete: L'analisi statica non può catturare il comportamento a runtime; l'analisi dinamica potrebbe tralasciare i percorsi di codice non eseguiti
Metodi di Fusione Semplici: I metodi multi-modali esistenti adottano principalmente concatenazione semplice, mancando di meccanismi di ponderazione adattivi
Questo articolo mira a costruire un sistema di rilevamento di malware più completo e robusto attraverso l'apprendimento congiunto delle rappresentazioni di embedding di FCG e PCG, superando le limitazioni delle modalità singole.
Proposta dell'Architettura GeminiNet: Progettazione di una rete di convoluzione grafica a doppio ramo che elabora separatamente FCG e PCG, fondendo gli embedding attraverso un meccanismo di gate adattivo
Costruzione di Dataset Multi-Modale: Creazione di un dataset contenente 635 file eseguibili Windows con estrazione simultanea di FCG e PCG
Progettazione di Caratteristiche di Nodi Congiunti: Combinazione della distribuzione di grado locale (LDP) e dell'entropia di Shannon, fornendo informazioni strutturali e statistiche
Verifica dei Vantaggi della Fusione: Dimostrazione attraverso ampi esperimenti che gli embedding congiunti superano significativamente i modelli a grafo singolo e i metodi di semplice fusione
Dato un file eseguibile Windows, estrarre il suo grafo di chiamate di funzioni G₁=(V₁,E₁) e il grafo di chiamate di processi G₂=(V₂,E₂), apprendere una rappresentazione di embedding congiunta per la classificazione binaria (malevolo/benigno).
Calcolo dell'entropia informativa a livello di file:
H(X) = -∑ᵢ pᵢ log₂ pᵢ
dove pᵢ è la probabilità del byte i. Un'entropia elevata indica forte casualità (possibile malware), mentre un'entropia bassa indica alta ridondanza (possibile software benigno).
Concatenazione di LDP e entropia di Shannon, formando un vettore di caratteristiche a 6 dimensioni che fonde informazioni strutturali locali e informazioni statistiche globali.
Fusione di Pesi Adattivi: Rispetto alla concatenazione statica o alla media, il meccanismo di gate può regolare adattivamente il contributo di ciascuna modalità in base al campione
Caratteristiche Multi-Granularità: Combinazione di informazioni topologiche locali (LDP) e informazioni statistiche globali (entropia)
Apprendimento End-to-End: L'intera architettura può essere addestrata end-to-end, con i pesi del gate ottimizzati automaticamente
Flessibilità Architettonica: Può degradarsi a modello a grafo singolo disattivando i rami
Complementarità Modale: FCG e PCG forniscono informazioni complementari; l'uso congiunto produce i migliori risultati
Importanza del Metodo di Fusione: La somma ponderata adattiva è superiore alla semplice fusione di archi
Effetto di Combinazione di Caratteristiche: La combinazione di caratteristiche strutturali (LDP) e caratteristiche statistiche (entropia) produce effetti sinergici
Robustezza Architettonica: Molteplici architetture GNN traggono beneficio dalla progettazione di embedding congiunto
I metodi esistenti adottano principalmente concatenazione semplice o media, mancando di meccanismi di ponderazione adattivi; la fusione con gate di questo articolo fornisce una soluzione più flessibile.
L'articolo cita 18 riferimenti correlati, che coprono:
Metodi fondamentali di apprendimento di rappresentazioni grafiche
Lavori correlati al rilevamento di malware
Architetture di reti neurali grafiche (GCN, GIN, GraphSAGE, SGC)
Strumenti e piattaforme di analisi software
I riferimenti chiave includono l'architettura GIN di Xu et al., il metodo SGC semplificato di Wu et al., e molteplici lavori correlati al rilevamento di malware, fornendo una base teorica solida e benchmark di confronto per questo articolo.