Skip to main content
QUICK REVIEW

[논문 리뷰] Unsupervised Features Extraction for Binary Similarity Using Graph Embedding Neural Networks

Roberto Baldoni, Giuseppe Antonio Di Luna|arXiv (Cornell University)|2018. 10. 23.
Software Engineering Research참고 문헌 21인용 수 9
한 줄 요약

이 논문은 약어 제어 흐름 그래프(ACFG)에서 그래프 임베딩 신경망을 사용하여 이진 함수 유사성에 대한 비지도 특성 학습 방법을 제안한다. 수동적인 특성 공학 대신, word2vec 스타일의 명령어 임베딩(i2v)을 활용하여 정점 특성을 자동으로 유도함으로써, 이차적 유사성 작업에서 최첨단 기법 대비 2% 성능 향상을 달성하면서도 임베딩 공간 내 의미적 군집화가 가능하다.

ABSTRACT

In this paper we consider the binary similarity problem that consists in determining if two binary functions are similar only considering their compiled form. This problem is know to be crucial in several application scenarios, such as copyright disputes, malware analysis, vulnerability detection, etc. The current state-of-the-art solutions in this field work by creating an embedding model that maps binary functions into vectors in $\mathbb{R}^{n}$. Such embedding model captures syntactic and semantic similarity between binaries, i.e., similar binary functions are mapped to points that are close in the vector space. This strategy has many advantages, one of them is the possibility to precompute embeddings of several binary functions, and then compare them with simple geometric operations (e.g., dot product). In [32] functions are first transformed in Annotated Control Flow Graphs (ACFGs) constituted by manually engineered features and then graphs are embedded into vectors using a deep neural network architecture. In this paper we propose and test several ways to compute annotated control flow graphs that use unsupervised approaches for feature learning, without incurring a human bias. Our methods are inspired after techniques used in the natural language processing community (e.g., we use word2vec to encode assembly instructions). We show that our approach is indeed successful, and it leads to better performance than previous state-of-the-art solutions. Furthermore, we report on a qualitative analysis of functions embeddings. We found interesting cases in which embeddings are clustered according to the semantic of the original binary function.

연구 동기 및 목표

  • 소스 코드 없이 악성코드 분석, 취약점 탐지, 저작권 분쟁 등 이차적 함수 유사성 문제를 해결하기 위해.
  • 수동적인 ACFG 특성 설계에서 비롯되는 인간의 편향을 줄이기 위해, 비지도 학습 기법으로 수동으로 설계된 ACFG 특성 대체하기 위해.
  • 비지도 명령어 임베딩 모델(i2v 등)이 이차 함수를 위한 그래프 임베딩 품질을 향상시킬 수 있는지 평가하기 위해.
  • 학습된 임베딩이 어셈블리 코드의 의미적 및 구문적 구조를 포착하여 의미적으로 유의미한 군집화와 유추적 추론을 가능하게 하는지 조사하기 위해.
  • 동일 소스 코드에서 컴파일된 이차적 바이너리 외부로도 임베딩의 일반화 능력이 있는지 탐색하여, 소프트웨어 분석 응용 분야로의 잠재적 확장 가능성 탐색하기 위해.

제안 방법

  • 컴파일된 이차적 함수에서 각 기본 블록을 정점으로 하는 약어 제어 흐름 그래프(ACFG)를 구축하며, 각 정점의 특성은 어셈블리 명령어에서 유도된다.
  • 대규모 어셈블리 코드 코퍼스에서 훈련된 비지도 명령어 임베딩 모델(i2v)을 적용하여 개별 명령어를 조밀한 벡터로 매핑한다.
  • 가장 성능이 뛰어난 변종(i2v_attention)에서, 각 기본 블록 내 명령어 임베딩의 가중 평균을 적용하여 정점 특성 벡터를 계산하며, 이때 어텐션 메커니즘을 사용한다.
  • 구조 기반 임베딩(Structure2Vec) 기반 그래프 신경망을 사용하여 전체 ACFG를 R^n 내의 고정 크기의 벡터로 임베딩하며, 구조적 및 의미적 유사성을 유지한다.
  • 차원 감소를 위해 t-SNE를 활용하여 기능 임베딩의 의미적 군집화를 시각화하고 정성적으로 분석한다.
  • 표준 이차적 유사성 벤치마크를 사용하여 성능을 평가하며, 비지도 특성 학습 기법을 수동 특성 공학 기법과 비교한다.

실험 결과

연구 질문

  • RQ1i2v와 같은 비지도 명령어 임베딩 모델이 이차적 유사성에 효과적인 ACFG 임베딩을 생성하는 데 있어 수동으로 설계된 특성보다 뛰어나게 성능을 발휘할 수 있는가?
  • RQ2학습된 임베딩이 산술 연산이나 메모리 접근 패턴과 같은 어셈블리 명령어 간의 의미적 관계를 포착하는가?
  • RQ3동일 소스 코드에서 컴iles된 경우나 다른 최적화 기법을 사용한 경우에도, 임베딩 공간에서 기능의 의미적 행동에 따라 의미적으로 유의미한 군집화가 가능한가?
  • RQ4벡터 산술이 명령어 변환(예: add → sub)을 포착하는 등 임베딩 공간에서 유추적 추론의 증거가 있는가?
  • RQ5임베딩이 동일 소스 코드에서 컴파일된 이차적 바이너리 외부로도 일반화되는 정도는 어느 정도이며, 이는 소프트웨어 분석 작업에 대한 잠재적 응용 가능성을 시사하는가?

주요 결과

  • 어텐션 기반 가중 평균을 사용하는 i2v_attention 모델이, 수동 특성 공학 기반 최첨단 기법 대비 이차적 유사성 성능에서 2% 향상된 성과를 기록했다.
  • 정성적 t-SNE 시각화 결과, 의미 유형(예: AES 보조 기능, 카멜리아 암호화/복호화)에 따라 기능 임베딩이 명확하게 군집화되어 있음을 확인하여, 임베딩 공간 내 의미 유지가 이루어졌음을 시사했다.
  • i2v 모델이 어셈블리 명령어 간의 구문적 및 의미적 관계를 성공적으로 포착했으며, add → sub 및 ldr → str 변환과 같은 벡터 유추 사례로 이를 입증했다.
  • 다른 컴파일러나 아키텍처에서 컴파일된 동일 기능의 임베딩들이 서로 가까이 군집되어 있음을 발견하여, 컴파일 차이에 대한 강건성을 시사했다.
  • 표본 기반 특성 추출 방법은 성능이 열악하여 이차적 유사성 작업에 부적합함을 확인했다.
  • 결과적으로 비지도 명령어 임베딩이 동일 소스 코드 바이너리 외부로도 일반화 가능하며, 이는 소프트웨어 분석 분야에 광범위한 응용 가능성을 암시한다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.