바이너리 코드 표현 기술 연구 진전 개요

Taiyan WANG ,  

Qingsong XIE ,  

Lu YU ,  

Zulie PAN ,  

Min ZHANG ,  

Abstract

바이너리 분석은 소프트웨어 공학 및 보안 연구 분야의 다양한 응용을 지원하는 중요한 기초 기술이다. 소프트웨어 규모가 지속적으로 확대되고 소프트웨어 시스템 아키텍처가 복잡하게 발전함에 따라 바이너리 분석 기술은 새로운 도전에 직면하고 있다. 기존의 병목 현상을 극복하기 위해 연구자들은 인공지능 기술을 바이너리 코드 이해 및 분석에 적용하고 있는데, 그 핵심은 바이너리 코드를 어떻게 표현할 것인가에 있다. 즉, 인텔리전트한 방법을 사용하여 바이너리 코드에 의미 정보를 포함하는 표현 벡터를 생성하고 이를 다양한 바이너리 분석 후속 작업에 적용하는 것이다. 본 논문은 현 단계의 바이너리 코드 표현 기술 연구 최신 동향을 조사 및 분석하며, 기존 관련 연구의 작업 흐름을 바이너리 코드 특징 추출 방법과 바이너리 코드 특징 임베딩 방법 두 부분으로 나누어 소개한다. 특징 추출 부분은 주로 특징 정의 및 분류 그리고 특징 구성으로 구성된다. 먼저 특징의 추상적 정의 및 분류를 체계적으로 서술하고, 다음으로 특징의 구체적 표현 구축 과정을 상세히 소개한다. 특징 임베딩 부분에서는 사용된 다양한 지능형 의미 이해 모델을 기반으로, 텍스트 임베딩 모델과 그래프 임베딩 모델의 사용 현황을 분류 기준으로 하여 임베딩 방법을 4가지 유형으로 나누어 소개한다. 마지막으로 기존 연구의 전체 발전 방향을 요약하고 바이너리 코드 표현 기술 관련 잠재적 연구 방향을 전망한다.

Keywords

바이너리 분석;바이너리 코드 표현;바이너리 코드 특징 추출;바이너리 코드 특징 임베딩

READ MORE