English
Related papers

Related papers: BinPro: A Tool for Binary Source Code Provenance

200 papers

Reproducing system-level concurrency bugs requires both input data and the precise interleaving order of system calls. This process is challenging because such bugs are non-deterministic, and bug reports often lack the detailed information…

Software Engineering · Computer Science 2026-01-15 Tarannum Shaila Zaman , Zhihui Yan , Chen Wang , Chadni Islam , Jiangfan Shi , Tingting Yu

There is increasing interest in applying verification tools to programs that have bitvector operations (eg., binaries). SMT solvers, which serve as a foundation for these tools, have thus increased support for bitvector reasoning through…

Programming Languages · Computer Science 2021-08-31 Yuandong Cyrus Liu , Chengbin Pang , Daniel Dietsch , Eric Koskinen , Ton-Chanh Le , Georgios Portokalidis , Jun Xu

In this paper we introduce CrowdSource, a statistical natural language processing system designed to make rapid inferences about malware functionality based on printable character strings extracted from malware binaries. CrowdSource…

Cryptography and Security · Computer Science 2016-05-30 Joshua Saxe , Rafael Turner , Kristina Blokhin

Finding the same or similar code snippets in source code is one of fundamental activities in software maintenance. Text-based pattern matching tools such as grep is frequently used for such purpose, but making proper queries for the…

Software Engineering · Computer Science 2020-03-13 Katsuro Inoue , Yuya Miyamoto , Daniel M. German , Takashi Ishio

Binary code is pervasive, and binary analysis is a key task in reverse engineering, malware classification, and vulnerability discovery. Unfortunately, while there exist large corpora of malicious binaries, obtaining high-quality corpora of…

Cryptography and Security · Computer Science 2024-11-05 Chang Liu , Rebecca Saul , Yihao Sun , Edward Raff , Maya Fuchs , Townsend Southard Pantano , James Holt , Kristopher Micinski

Code linters play a crucial role in developing high-quality software systems by detecting potential problems (e.g., memory leaks) in the source code of systems. Despite their benefits, code linters are often language-specific, focused on…

Software Engineering · Computer Science 2024-07-24 Darren Holden , Nafiseh Kahani

This paper explores the complexities of automatic detection of software similarities, in relation to the unique challenges of digital artifacts, and introduces Project Martial, an open-source software solution for detecting code similarity.…

Software Engineering · Computer Science 2026-01-05 Rares Folea , Emil Slusanschi

A code clone is a pair of code fragments, within or between software systems that are similar. Since code clones often negatively impact the maintainability of a software system, several code clone detection techniques and tools have been…

Software Engineering · Computer Science 2020-05-05 Golam Mostaeen , Banani Roy , Chanchal Roy , Kevin Schneider , Jeffrey Svajlenko

The decompiler is one of the most common tools for examining binaries without corresponding source code. It transforms binaries into high-level code, reversing the compilation process. Decompilers can reconstruct much of the information…

Software Engineering · Computer Science 2019-10-04 Jeremy Lacomis , Pengcheng Yin , Edward J. Schwartz , Miltiadis Allamanis , Claire Le Goues , Graham Neubig , Bogdan Vasilescu

Two key contributions presented in this paper are: i) A method for building a dataset containing source code features extracted from source files taken from Open Source Software (OSS) and associated bug reports, ii) A predictive model for…

Software Engineering · Computer Science 2018-09-13 Ritu Kapur , Balwinder Sodhi

Mutation analysis is an effective technique to evaluate a test suite adequacy in terms of revealing unforeseen bugs in software. Traditional source- or IR-level mutation analysis is not applicable to the software only available in binary…

Software Engineering · Computer Science 2021-02-16 Mohsen Ahmadi , Pantea Kiaei , Navid Emamdoost

Sequence models for binary analysis are bottlenecked by byte-level tokenization: raw bytes waste precious context window capacity for transformers and other neural network architectures, and many existing text-oriented tokenizers fail on…

Machine Learning · Computer Science 2025-11-25 Michael J. Bommarito

Binary code similarity detection (BCSD) has important applications in various fields such as vulnerability detection, software component analysis, and reverse engineering. Recent studies have shown that deep neural networks (DNNs) can…

Cryptography and Security · Computer Science 2022-05-26 Hao Wang , Wenjie Qu , Gilad Katz , Wenyu Zhu , Zeyu Gao , Han Qiu , Jianwei Zhuge , Chao Zhang

This paper describes a method for the recovering of software architectures from a set of similar (but unrelated) software products in binary form. One intention is to drive refactoring into software product lines and combine architecture…

Software Engineering · Computer Science 2016-08-08 Ian D. Peake , Jan Olaf Blech , Lasith Fernando , Divyasheel Sharma , Srini Ramaswamy , Mallikarjun Kande

Binary code analysis and comprehension is critical to applications in reverse engineering and computer security tasks where source code is not available. Unfortunately, unlike source code, binary code lacks semantics and is more difficult…

Software Engineering · Computer Science 2025-09-29 Yifan Zhang , Chen Huang , Yueke Zhang , Huajie Shao , Kevin Leach , Yu Huang

We consider the problem of identifying the provenance of free/open source software (FOSS) and specifically the need of identifying where reused source code has been copied from. We propose a lightweight approach to solve the problem based…

Software Engineering · Computer Science 2023-05-25 Yiming Sun , Daniel M. German , Stefano Zacchiroli

Microarchitectural side channels expose unprotected software to information leakage attacks where a software adversary is able to track runtime behavior of a benign process and steal secrets such as cryptographic keys. As suggested by…

Cryptography and Security · Computer Science 2023-04-25 Jan Wichelmann , Ahmad Moghimi , Thomas Eisenbarth , Berk Sunar

Plagiarism is a commonly encountered problem in the academia. While there are several tools and techniques to efficiently determine plagiarism in text, the same cannot be said about source code plagiarism. To make the existing systems more…

Information Retrieval · Computer Science 2019-02-08 Vasishtha Sriram Jayapati , Ajay Venkitaraman

Contemporary software documentation is as complicated as the software itself. During its lifecycle, the documentation accumulates a lot of near duplicate fragments, i.e. chunks of text that were copied from a single source and were later…

Software Engineering · Computer Science 2018-10-10 D. V. Luciv , D. V. Koznov , G. A. Chernishev , A. N. Terekhov

Being able to duplicate published research results is an important process of conducting research whether to build upon these findings or to compare with them. This process is called "replicability" when using the original authors'…

Digital Libraries · Computer Science 2020-05-07 Nicolas Bonneel , David Coeurjolly , Julie Digne , Nicolas Mellado