UCL Discovery
UCL home » Library Services » Electronic resources » UCL Discovery

Probabilistic Naming of Functions in Stripped Binaries

Patrick-Evans, J; Cavallaro, L; Kinder, J; (2020) Probabilistic Naming of Functions in Stripped Binaries. In: ACSAC '20: Annual Computer Security Applications Conference. (pp. pp. 373-385). ACM Green open access

[thumbnail of Cavallaro_acsac20-punstrip.pdf]
Preview
Text
Cavallaro_acsac20-punstrip.pdf - Accepted Version

Download (670kB) | Preview

Abstract

Debugging symbols in binary executables carry the names of functions and global variables. When present, they greatly simplify the process of reverse engineering, but they are almost always removed (stripped) for deployment. We present the design and implementation of punstrip, a tool which combines a probabilistic fingerprint of binary code based on high-level features with a probabilistic graphical model to learn the relationship between function names and program structure. As there are many naming conventions and developer styles, functions from different applications do not necessarily have the exact same name, even if they implement the exact same functionality. We therefore evaluate punstrip across three levels of name matching: exact; an approach based on natural language processing of name components; and using Symbol2Vec, a new embedding of function names based on random walks of function call graphs. We show that our approach is able to recognize functions compiled across different compilers and optimization levels and then demonstrate that punstrip can predict semantically similar function names based on code structure. We evaluate our approach over open source C binaries from the Debian Linux distribution and compare against the state of the art.

Type: Proceedings paper
Title: Probabilistic Naming of Functions in Stripped Binaries
Event: ACSAC '20: Annual Computer Security Applications Conference
Open access status: An open access version is available from UCL Discovery
DOI: 10.1145/3427228.3427265
Publisher version: https://doi.org/10.1145/3427228.3427265
Additional information: This version is the author accepted manuscript. For information on re-use, please refer to the publisher's terms and conditions.
UCL classification: UCL
UCL > Provost and Vice Provost Offices > UCL BEAMS
UCL > Provost and Vice Provost Offices > UCL BEAMS > Faculty of Engineering Science
UCL > Provost and Vice Provost Offices > UCL BEAMS > Faculty of Engineering Science > Dept of Computer Science
URI: https://discovery.ucl.ac.uk/id/eprint/10133168
Downloads since deposit
272Downloads
Download activity - last month
Download activity - last 12 months
Downloads by country - last 12 months

Archive Staff Only

View Item View Item