FASER: Binary Code Similarity Search through the use of Intermediate Representations
Not on the map. Why?
Abstract (arXiv)
Being able to identify functions of interest in cross-architecture software is useful whether you are analysing for malware, securing the software supply chain or conducting vulnerability research. Cross-Architecture Binary Code Similarity Search has been explored in numerous studies and has used a wide range of different data sources to achieve its goals. The data sources typically used draw on common structures derived from binaries such as function control flow graphs or binary level call graphs, the output of the disassembly process or the outputs of a dynamic analysis approach. One data source which has received less attention is binary intermediate representations. Binary Intermediate representations possess two interesting properties: they are cross architecture by their very nature and encode the semantics of a function explicitly to support downstream usage. Within this paper we propose Function as a String Encoded Representation (FASER) which combines long document transformers with the use of intermediate representations to create a model capable of cross architecture function search without the need for manual feature engineering, pre-training or a dynamic analysis step. We compare our approach against a series of baseline approaches for two tasks; A general function search task and a targeted vulnerability search task. Our approach demonstrates strong performance across both tasks, performing better than all baseline approaches.
Key facts. Cited by 4 papers in the map (data through 14 Oct 2026). Builds on 15 of its 26 references that are in the map. First posted on arXiv 5 Oct 2023.
Builds on
15 of 26 references.
References · 15
- 2018BERT: Pre-training of Deep Bidirectional Transformers for Language Understandingcited by 40,399
- 2014Adam: A Method for Stochastic Optimizationcited by 37,240
- 2020Longformer: The Long-Document Transformercited by 3,413
- 2017In Defense of the Triplet Loss for Person Re-Identificationcited by 786
- 2020Circle Loss: A Unified Perspective of Pair Similarity Optimizationcited by 403
- 2019Graph Matching Networks for Learning the Similarity of Graph Structured Objectscited by 205
- 2017Neural Network-based Graph Embedding for Cross-Platform Binary Code Similarity Detectioncited by 65
- 2021PalmTree: Learning an Assembly Language Model for Instruction Embeddingcited by 49
- 2022jTrans: Jump-Aware Transformer for Binary Code Similaritycited by 44
- 2020Trex: Learning Execution Semantics from Micro-Traces for Binary Similaritycited by 34
- 2018SAFE: Self-Attentive Function Embeddings for Binary Similaritycited by 33
- 2018Neural Machine Translation Inspired Binary Code Similarity Comparison beyond Function Pairscited by 25
3 more
- 2020Revisiting Binary Code Similarity Analysis using Interpretable Feature Engineering and Lessons Learnedcited by 14
- 2022Cross-Language Binary-Source Code Matching with Intermediate Representationscited by 13
- 2023Asteria-Pro: Enhancing Deep-Learning Based Binary Code Similarity Detection by Incorporating Domain Knowledgecited by 5
Built on by
Citing papers per year: 2023: 1; 2024: 2; 2025: 1.
4 papers.
- 2024Is Function Similarity Over-Engineered? Building a Benchmarkcited by 6
- 2023VEXIR2Vec: An Architecture-Neutral Embedding Framework for Binary Similaritycited by 1
- 2025Can Large Language Models Understand Intermediate Representations in Compilers?cited by 1
- 2024Know Your Neighborhood: General and Zero-Shot Capable Binary Function Search Powered by Call Graphletscited by 0
- 2025Can Large Language Models Understand Intermediate Representations in Compilers?7 Feb 2025
- 2024Is Function Similarity Over-Engineered? Building a Benchmark30 Oct 2024
- 2024Know Your Neighborhood: General and Zero-Shot Capable Binary Function Search Powered by Call Graphlets2 Jun 2024
- 2023VEXIR2Vec: An Architecture-Neutral Embedding Framework for Binary Similarity1 Dec 2023