返回
BinBert: Binary Code Understanding With a Fine-Tunable and Execution-Aware Transformer
DOI:10.1109/TDSC.2024.3397660.png)
摘要
En 中文
A recent trend in binary code analysis promotes the use of neural solutions based on instruction embedding models. An instruction embedding model is a neural network that transforms assembly instructions into embedding vectors. If the embedding network is able to processes sequences of assembly instructions transforming them into a sequence of embedding vectors, then the network effectively represents an assembly code model. In this paper we present BinBert, a novel assembly code model. BinBert is built on a transformer pre-trained on a huge dataset of both assembly instruction sequences and symbolic execution information. BinBert can be applied to assembly instructions sequences and it is fine-tunable, i.e. it can be re-trained as part of a neural architecture on task-specific data. Through fine-tuning, BinBert learns how to apply the general knowledge acquired with pre-training to the specific task. We evaluated BinBert on a multi-task benchmark that we specifically designed to test the understanding of assembly code. The benchmark is composed of several tasks, some taken from the literature, and a few novel tasks that we designed, with a mix of intrinsic and downstream tasks. Our results show that BinBert outperforms state-of-the-art models for binary instruction embedding, raising the bar for binary code understanding.
Keyword:
Assembly
Task analysis
Vectors
Transformers
Semantics
Binary codes
Benchmark testing
Binary analysis
machine learning
期刊
IF:
7.5
论文数:
2.4K
被引数:
9.6K
机构
引用论文
Matrix Effects in the Detection of Pb and Ba in Soils Using Laser-Induced Breakdown Spectroscopy使用激光诱导击穿光谱检测土壤中Pb和Ba的基质效应
Types of Parent Verbal Responsiveness That Predict Language in Young Children With Autism Spectrum Disorder预测自闭症谱系障碍幼儿语言的父母言语反应类型

