A análise binária, como uma importante tecnologia fundamental, oferece suporte a numerosas aplicações nos campos da engenharia de software e pesquisa de segurança. Com a expansão contínua da escala do software e a evolução complexa das arquiteturas dos sistemas de software, a tecnologia de análise binária enfrenta novos desafios. Para superar os gargalos existentes, os pesquisadores aplicam técnicas de inteligência artificial à compreensão e análise do código binário, cujo cerne está em como representar o código binário, isto é, como usar métodos inteligentes para gerar vetores de representação contendo informações semânticas do código binário, para aplicação em diversas tarefas posteriores da análise binária. Este artigo investiga e analisa os mais recentes avanços na tecnologia atual de representação do código binário, dividindo o fluxo de trabalho das pesquisas relacionadas em dois partes: métodos de extração de características do código binário e métodos de incorporação de características do código binário. A parte de extração de características abrange principalmente a definição e classificação das características, bem como a construção das características. Primeiro, é apresentada sistematicamente a definição abstrata e a classificação das características e, em seguida, é detalhado o processo de construção da representação específica das características. Na parte de incorporação, com base nos diferentes modelos inteligentes de compreensão semântica usados, e tomando como critério de classificação o uso dos modelos de incorporação de texto e modelos de incorporação gráfica, os métodos de incorporação são divididos em quatro categorias e apresentados. Por fim, o artigo resume a linha geral de desenvolvimento das pesquisas existentes e antecipa algumas direções de pesquisa potenciais relacionadas à tecnologia de representação do código binário.
Keywords
Análise binária;representação de código binário;extração de características de código binário;incorporação de características de código binário