NAACL 2024findings1 citations

Learning Cross-Architecture Instruction Embeddings for Binary Code Analysis in Low-Resource Architectures

Junzhe Wang, Qiang Zeng, Lannan Luo

Abstract

Binary code analysis is indispensable for a variety of software security tasks. Applying deep learning to binary code analysis has drawn great attention because of its notable performance. Today, source code is frequently compiled for various Instruction Set Architectures (ISAs). It is thus critical to expand binary analysis capabilities to multiple ISAs. Given a binary analysis task, the scale of available data on different ISAs varies. As a result, the rich datasets (e.g., malware) for certain ISAs, such as x86, lead to a disproportionate focus on these ISAs and a negligence of other ISAs, such as PowerPC, which suffer from the “data scarcity” problem. To address the problem, we propose to learn cross-architecture instruction embeddings (CAIE), where semantically-similar instructions, regardless of their ISAs, have close embeddings in a shared space. Consequently, we can transfer a model trained on a data-rich ISA to another ISA with less available data. We consider four ISAs (x86, ARM, MIPS, and PowerPC) and conduct both intrinsic and extrinsic evaluations (including malware detection and function similarity comparison). The results demonstrate the effectiveness of our approach to generate high-quality CAIE with good transferability.

BibTeX
@inproceedings{wang-etal-2024-learning-cross,
    title = "Learning Cross-Architecture Instruction Embeddings for Binary Code Analysis in Low-Resource Architectures",
    author = "Wang, Junzhe  and
      Zeng, Qiang  and
      Luo, Lannan",
    editor = "Duh, Kevin  and
      Gomez, Helena  and
      Bethard, Steven",
    booktitle = "Findings of the Association for Computational Linguistics: NAACL 2024",
    month = jun,
    year = "2024",
    address = "Mexico City, Mexico",
    publisher = "Association for Computational Linguistics",
    url = "https://aclanthology.org/2024.findings-naacl.84/",
    doi = "10.18653/v1/2024.findings-naacl.84",
    pages = "1320--1332"
}
Learning Cross-Architecture Instruction Embeddings for Binary Code Analysis in Low-Resource Architectures · NAACL 2024