2025-11-12T22:58:10.887954

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

악성코드 탐지를 위한 함수 및 프로세스 호출 그래프의 결합 임베딩 학습

기본 정보

  • 논문 ID: 2510.09984
  • 제목: 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 (암호학 및 보안)
  • 발표 학회: 39th Conference on Neural Information Processing Systems (NeurIPS 2025) Workshop: New Perspectives in Advancing Graph Machine Learning
  • 논문 링크: https://arxiv.org/abs/2510.09984

초록

소프트웨어 시스템은 함수 및 프로세스 간의 의존성을 포착하는 그래프 구조로 표현될 수 있습니다. 추출 목표 및 우선순위에 따라 소프트웨어 시스템은 다양한 유형의 그래프로 표현될 수 있습니다. 예를 들어, 함수 호출 그래프(FCG)는 함수 간 관계를 강조하고, 프로세스 상호작용 그래프(PCG)는 런타임 동작 및 프로세스 간 통신에 초점을 맞춥니다. 이러한 그래프 표현들이 관련되어 있지만, 각각은 시스템의 서로 다른 관점을 포착하여 상호 보완적인 통찰력을 제공합니다. 기존 연구는 주로 단일 그래프 표현에 초점을 맞추었으며, FCG와 PCG를 결합하여 모델링하는 연구는 상대적으로 적습니다. 본 논문은 FCG와 PCG의 결합 임베딩을 학습하는 통합 신경망 방법인 GeminiNet을 제안합니다. 635개의 Windows 실행 파일 데이터셋에 대한 실험은 결합 임베딩이 단일 그래프 모델보다 현저히 우수함을 보여줍니다.

연구 배경 및 동기

문제 정의

악성코드 탐지는 사이버보안 분야의 핵심 과제입니다. 기존 방법은 주로 소프트웨어 표현의 단일 유형에 의존하여 분석을 수행하며, 정적 분석(예: 함수 호출 그래프) 또는 동적 분석(예: 프로세스 상호작용 그래프)을 사용하지만, 두 가지를 결합하는 경우는 드뭅니다.

연구의 중요성

  1. 다중 관점 분석 필요성: 소프트웨어 시스템의 복잡성으로 인해 단일 관점은 중요한 정보를 놓치기 쉬움
  2. 적대적 견고성: 단일 모달리티에 의존하면 적대적 공격에 취약하며, 다중 모달리티 융합은 견고성을 향상시킬 수 있음
  3. 상호 보완적 정보: 정적 FCG는 제어 흐름 구조를 포착하고, 동적 PCG는 실행 궤적을 반영하여 상호 보완적임

기존 방법의 한계

  1. 단일 그래프 표현: 대부분의 연구는 FCG 또는 PCG 중 하나만 사용
  2. 불완전한 정보: 정적 분석은 런타임 동작을 포착할 수 없으며, 동적 분석은 실행되지 않은 코드 경로를 놓칠 수 있음
  3. 단순한 융합 방법: 기존 다중 모달리티 방법은 주로 단순 연결을 사용하며, 적응형 가중치 메커니즘이 부족함

연구 동기

본 논문은 FCG와 PCG의 임베딩 표현을 결합하여 학습함으로써 더욱 포괄적이고 견고한 악성코드 탐지 시스템을 구축하고, 단일 모달리티의 한계를 극복하는 것을 목표로 합니다.

핵심 기여

  1. GeminiNet 아키텍처 제안: FCG와 PCG를 각각 처리하고 적응형 게이팅 메커니즘을 통해 임베딩을 융합하는 이중 분기 그래프 합성곱 신경망 설계
  2. 다중 모달리티 데이터셋 구축: 635개의 Windows 실행 파일을 포함하고 FCG와 PCG를 동시에 추출한 데이터셋 생성
  3. 결합 노드 특징 설계: 국소 차수 분포(LDP)와 Shannon 엔트로피를 결합하여 구조적 및 통계적 정보 제공
  4. 융합 우수성 검증: 광범위한 실험을 통해 결합 임베딩이 단일 그래프 모델 및 단순 병합 방법보다 현저히 우수함을 증명

방법론 상세 설명

작업 정의

Windows 실행 파일이 주어졌을 때, 함수 호출 그래프 G₁=(V₁,E₁)과 프로세스 호출 그래프 G₂=(V₂,E₂)를 추출하고, 이진 분류(악성/양성)를 위한 결합 임베딩 표현을 학습합니다.

데이터셋 구축

함수 호출 그래프(FCG)

  • 도구: Ghidra 역공학 프레임워크 사용
  • 표현: 노드는 함수를 나타내고, 방향 간선은 함수 호출 관계를 나타냄
  • 규모: 635개 실행 파일, 총 449,960개 노드 및 1,048,741개 간선
  • 전처리: 함수명을 수치 식별자로 대체

프로세스 호출 그래프(PCG)

  • 도구: Any.Run 악성코드 샌드박스 사용
  • 실행 시간: 60초(Küchler 등의 연구에 따라 98% 코드 커버리지)
  • 표현: 노드는 프로세스를 나타내고, 방향 간선은 프로세스 간 통신 또는 생성 관계를 나타냄
  • 규모: 3,053개 노드 및 2,663개 간선

노드 특징 설계

국소 차수 분포(LDP)

각 노드에 대해 5차원 특징 벡터 계산:

  • 노드 자체의 차수
  • 이웃 노드 차수의 최솟값, 최댓값, 평균, 표준편차

Shannon 엔트로피

파일 수준의 정보 엔트로피 계산: H(X) = -∑ᵢ pᵢ log₂ pᵢ

여기서 pᵢ는 바이트 i의 확률입니다. 높은 엔트로피는 강한 무작위성을 나타내며(악성코드일 가능성), 낮은 엔트로피는 높은 중복성을 나타냅니다(양성 소프트웨어일 가능성).

결합 특징(LDP+Entropy)

LDP와 Shannon 엔트로피를 연결하여 6차원 특징 벡터를 형성하고, 국소 구조와 전역 통계 정보를 융합합니다.

GeminiNet 아키텍처

이중 분기 설계

분기 1: FCG → GCN₁ → 전역 풀링 → g₁
분기 2: PCG → GCN₂ → 전역 풀링 → g₂

적응형 게이팅 메커니즘

학습 가능한 게이팅 벡터 도입: α = softmax(w)

여기서 w는 훈련 가능한 매개변수입니다. 최종 결합 임베딩은: g = α₁g₁ + α₂g₂

α₁ + α₂ = 1 및 αᵢ ≥ 0의 제약 조건을 만족합니다.

분류 계층

결합 임베딩은 완전 연결 계층 및 ReLU 활성화를 통과합니다: ŷ = softmax(MLP(g))

기술 혁신점

  1. 적응형 가중치 융합: 정적 연결 또는 평균과 비교하여, 게이팅 메커니즘은 샘플에 따라 각 모달리티의 기여도를 적응적으로 조정할 수 있음
  2. 다중 입도 특징: 국소 위상(LDP)과 전역 통계(엔트로피) 정보 결합
  3. 종단 간 학습: 전체 아키텍처는 종단 간 훈련 가능하며, 게이팅 가중치가 자동으로 최적화됨
  4. 아키텍처 유연성: 분기를 비활성화하여 단일 그래프 모델로 축소 가능

실험 설정

데이터셋

  • 규모: 635개 Windows PE 파일(318개 악성, 317개 양성)
  • 출처: 악성코드 샘플 및 양성 소프트웨어 샘플
  • 분할: 5-폴드 교차 검증

평가 지표

  • 주요 지표: F1 점수(정확도와 재현율의 균형)
  • 통계 지표: 평균, 표준편차, 최솟값, 중앙값, 최댓값

비교 방법

  1. 단일 그래프 모델: FCG 또는 PCG만 사용
  2. 병합 그래프 모델: FCG와 PCG 간선 목록을 단일 그래프로 병합
  3. 다양한 GNN 아키텍처: GCN, SGC, GIN, GraphSAGE, MLP

구현 세부사항

  • 검증 방식: 5-폴드 교차 검증
  • 학습률 스케줄링: OneCycleLR, ReduceLROnPlateau
  • 정규화: Dropout
  • 아키텍처 매개변수: 4-6층 GCN, 2-6층 완전 연결, 32-64 은닉 차원

실험 결과

주요 결과

최적 구성 성능

표 1에 따르면, 최적 구성은 다음을 달성합니다:

  • 평균 F1 점수: 0.85 (표준편차 0.06-0.09)
  • 최고 F1 점수: 0.94
  • 최적 특징: LDP+Entropy
  • 최적 아키텍처: 가중 합산 융합을 사용한 SGC 및 GCN

다양한 구성 비교

  1. 결합 임베딩(both_wsum): F1=0.85, 중앙값≈0.87
  2. 단일 PCG 모델: F1=0.81-0.83, 중앙값≈0.82
  3. 병합 그래프(both_merged): F1=0.72-0.73, 중앙값≈0.72
  4. 단일 FCG 모델: F1=0.68-0.72, 중앙값≈0.67

제거 실험

그래프 유형 제거

Kruskal-Wallis 검정(p=3.86×10⁻⁷⁶)은 다양한 구성 간에 유의미한 차이가 있음을 나타냅니다:

  • both_wsum > single_pcg > both_merged > single_fcg
  • 모든 쌍별 비교는 유의미함(Bonferroni 보정 후)

특징 유형 제거

Kruskal-Wallis 검정(p=2.57×10⁻³³)은 특징의 중요성을 보여줍니다:

  • LDP+Entropy (중앙값≈0.85) > LDP (≈0.82) > Entropy (≈0.77)
  • 결합 특징은 단일 특징보다 현저히 우수함

통계적 유의성 분석

Dunn 검정을 통해 다음을 확인했습니다:

  1. 가중 합산 융합은 간선 병합 방법보다 현저히 우수함
  2. PCG 단독 사용은 FCG 단독 사용보다 우수함
  3. 결합 특징은 성능을 현저히 향상시킴

실험 발견

  1. 모달리티 상호 보완성: FCG와 PCG는 상호 보완적 정보를 제공하며, 결합 사용이 최고의 효과를 냄
  2. 융합 방식의 중요성: 자적응형 가중 합산은 단순 간선 병합보다 우수함
  3. 특징 결합 효과: 구조적 특징(LDP)과 통계적 특징(엔트로피)의 결합은 시너지 효과를 생성함
  4. 아키텍처 견고성: 다양한 GNN 아키텍처는 모두 결합 임베딩 설계의 이점을 누릴 수 있음

관련 연구

단일 그래프 악성코드 탐지

  1. FCG 방법: Freitas & Dong, Chen 등이 함수 호출 그래프 사용
  2. API 호출 그래프: Gao 등, Hou 등이 API 호출 시퀀스 사용
  3. 제어 흐름 그래프: Peng 등, Yan 등이 제어 흐름 구조 분석
  4. 네트워크 흐름 그래프: Busch 등이 네트워크 흐름 정보 사용

그래프 신경망 응용

  • 대부분의 연구는 단일 그래프 표현에 초점
  • 다중 모달리티 그래프 융합에 대한 체계적 연구 부족
  • 본 논문은 정적-동적 결합 분석의 공백을 채움

다중 모달리티 학습

기존 방법은 주로 단순 연결 또는 평균을 사용하며, 적응형 가중치 메커니즘이 부족하며, 본 논문의 게이팅 융합은 더욱 유연한 솔루션을 제공합니다.

결론 및 논의

주요 결론

  1. 결합 임베딩의 우수성: FCG와 PCG의 결합 학습은 단일 모달리티보다 현저히 우수함
  2. 융합 메커니즘의 중요성: 적응형 게이팅 메커니즘은 단순 병합 전략보다 우수함
  3. 특징 공학의 가치: 구조적 특징과 통계적 특징의 결합은 판별 능력을 향상시킴
  4. 방법의 일반성: 취약점 탐지, 이진 유사성 탐지 등의 작업으로 확장 가능

한계

  1. 데이터셋 규모: 635개 샘플은 상대적으로 작으며, 일반화 능력에 영향을 미칠 수 있음
  2. 실행 시간 제한: 60초 샌드박스 실행은 모든 악성 동작을 포착하지 못할 수 있음
  3. 특징 공학: 수동으로 설계된 LDP 및 엔트로피 특징에 의존
  4. 계산 복잡도: 이중 분기 아키텍처는 계산 오버헤드를 증가시킴

향후 방향

  1. 규모 확장: 더 큰 데이터셋에서 방법의 유효성 검증
  2. 해석 가능성: 모델 결정 과정을 이해하기 위한 해석 기술 개발
  3. 적대적 견고성: 적대적 샘플에 대한 견고성 평가
  4. 자동 특징 학습: 수동 특징에 대한 의존성 감소

심층 평가

장점

  1. 높은 혁신성: 악성코드 탐지를 위해 FCG와 PCG를 체계적으로 결합한 첫 번째 연구
  2. 합리적 방법: 이중 분기 아키텍처 설계가 합리적이며, 게이팅 메커니즘은 이론적 지원을 가짐
  3. 충분한 실험: 5-폴드 교차 검증, 다양한 아키텍처 비교, 통계적 유의성 검정
  4. 설득력 있는 결과: 일관된 결과는 방법의 유효성과 안정성을 나타냄

부족한 점

  1. 데이터셋 한계: Windows PE 파일로만 제한되며, 샘플 규모가 상대적으로 작음
  2. 불충분한 기준선 비교: 최신 악성코드 탐지 방법과의 비교 부족
  3. 계산 오버헤드 분석: 이중 분기 아키텍처의 계산 복잡도에 대한 상세 분석 부족
  4. 초매개변수 민감성: 게이팅 메커니즘의 초매개변수에 대한 민감성 분석 부족

영향력

  1. 학술 기여: 다중 모달리티 그래프 학습의 보안 분야 응용에 새로운 사고 제공
  2. 실용적 가치: 악성코드 탐지 시스템에 직접 적용 가능
  3. 재현성: 방법 설명이 명확하고 실험 설정이 상세함
  4. 확장성: 프레임워크는 다른 소프트웨어 분석 작업으로 확장 가능

적용 시나리오

  1. 악성코드 탐지: 기업 보안 제품, 안티바이러스 소프트웨어
  2. 소프트웨어 분석: 취약점 탐지, 코드 유사성 분석
  3. 연구 플랫폼: 다중 모달리티 그래프 학습의 테스트 플랫폼
  4. 교육 응용: 보안 분야에서 그래프 신경망의 교육 사례

참고문헌

논문은 다음을 포함하는 18개의 관련 문헌을 인용합니다:

  • 그래프 표현 학습 기초 방법
  • 악성코드 탐지 관련 연구
  • 그래프 신경망 아키텍처(GCN, GIN, GraphSAGE, SGC)
  • 소프트웨어 분석 도구 및 플랫폼

주요 참고문헌에는 Xu 등의 GIN 아키텍처, Wu 등의 SGC 단순화 방법, 그리고 악성코드 탐지에 관한 여러 관련 연구가 포함되어 있으며, 이는 본 논문에 견고한 이론적 기초와 비교 기준을 제공합니다.