Adding Compilation Metadata To Binaries To Make Disassembly Decidable

Fuente: arXiv
Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: Engel, Daniel, Verbeek, Freek, Kumar, Pranav, Ravindran, Binoy
Format: Preprint
Veröffentlicht: 2026
Schlagworte:
Online-Zugang:
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
_version_ 1866908984695324672
author Engel, Daniel
Verbeek, Freek
Kumar, Pranav
Ravindran, Binoy
author_facet Engel, Daniel
Verbeek, Freek
Kumar, Pranav
Ravindran, Binoy
contents The binary executable format is the standard method for distributing and executing software. Yet, it is also as opaque a representation of software as can be. If the binary format were augmented with metadata that provides security-relevant information, such as which data is intended by the compiler to be executable instructions, or how memory regions are expected to be bounded, that would dramatically improve the safety and maintainability of software. In this paper, we propose a binary format that is a middle ground between a stripped black-box binary and open source. We provide a tool that generates metadata capturing the compiler's intent and inserts it into the binary. This metadata enables lifting to a correct and recompilable higher-level representation and makes analysis and instrumentation more reliable. Our evaluation shows that adding metadata does not affect runtime behavior or performance. Compared to DWARF, our metadata is roughly 17% of its size. We validate correctness by compiling a comprehensive set of real-world C and C++ binaries and demonstrating that they can be lifted, instrumented, and recompiled without altering their behavior.
format Preprint
id arxiv_https___arxiv_org_abs_2604_19628
institution arXiv
publishDate 2026
record_format arxiv
spellingShingle Adding Compilation Metadata To Binaries To Make Disassembly Decidable
Engel, Daniel
Verbeek, Freek
Kumar, Pranav
Ravindran, Binoy
Cryptography and Security
Programming Languages
The binary executable format is the standard method for distributing and executing software. Yet, it is also as opaque a representation of software as can be. If the binary format were augmented with metadata that provides security-relevant information, such as which data is intended by the compiler to be executable instructions, or how memory regions are expected to be bounded, that would dramatically improve the safety and maintainability of software. In this paper, we propose a binary format that is a middle ground between a stripped black-box binary and open source. We provide a tool that generates metadata capturing the compiler's intent and inserts it into the binary. This metadata enables lifting to a correct and recompilable higher-level representation and makes analysis and instrumentation more reliable. Our evaluation shows that adding metadata does not affect runtime behavior or performance. Compared to DWARF, our metadata is roughly 17% of its size. We validate correctness by compiling a comprehensive set of real-world C and C++ binaries and demonstrating that they can be lifted, instrumented, and recompiled without altering their behavior.
title Adding Compilation Metadata To Binaries To Make Disassembly Decidable
topic Cryptography and Security
Programming Languages
url https://arxiv.org/abs/2604.19628