Papers for

malware analysts

Papers whose findings have a practical use for this group, as judged from the abstract. Open a paper to read what it means in practice.

Malware image benchmarks overstate accuracy due to duplication and leakage

Measuring Duplication, Leakage, and Rendering Dependence in Malware-as-Image Benchmarks

Abstract: Classifying malware binaries rendered as images is a popular approach to malware family identification, and papers on the standard benchmarks for this task report accuracies of 97-99%. In this paper we audit ten of these benchmarks for near-duplicate images and test-train leakage, and retrain standard classifiers under naive and content-aware splits. Deduplicating by file hash, which is the standard practice, does not prevent leakage, because distinct binaries render to identical images. Deduplicating on image content reduces top-1 accuracy by up to 8 points and macro-F1 by up to 15 points on the released benchmarks we find leaky. The rendering step also adds duplication, since byteplots of the same binaries contain 19.7% near-duplicates where static feature vectors contain 2.2%, and changing the width at which bytes are wrapped into rows reduces accuracy by 20 to 33 points, although no byte changes. We recommend that content-level duplication and a non-image baseline be reported alongside accuracy.

Thu 29 OctCryptography and Security
The gist
Malware files are sometimes turned into pictures so computer programs can identify them more easily. This study found that many test sets used to check these programs have many duplicates and overlaps between training and testing data. Because of this, the programs appear much more accurate than they really are. When duplicates are removed carefully, accuracy scores drop significantly. The researchers recommend checking for duplicates and comparing image-based methods with other non-image approaches.
Open → 2610.39351v1

Evaluation reveals limits of language models in cross-function binary analysis

ICALL-BENCH: Benchmarking LLM Interprocedural Reasoning in Binary Programs

Abstract: Recent benchmarks show that LLMs achieve strong performance in both function-level binary understanding and end-to-end binary reverse engineering tasks, but whether LLMs can reason over interprocedural semantics in compiled binaries remains unclear. Function-level benchmarks offer limited visibility into cross-function relationships, while whole-program benchmarks typically evaluate final outcomes of tasks that may be solvable from local clues alone, making it difficult to disentangle interprocedural reasoning from exploration, tool use, execution, and retrieval. To address this limitation, we introduce ICALL-BENCH, a benchmark that directly evaluates whether LLMs and agents can understand and reason over interprocedural semantics in binary programs, using indirect-call target recovery as a measurable probe. ICALL-BENCH covers 50 complete real-world C/C++ programs spanning different complexity levels and multiple optimization configurations, with an average of 74,746 lines of code and 941 functions per program. We further introduce three analysis regimes spanning model-only reasoning, static tool-augmented agents, and Internet-enabled open-world agents to examine how intrinsic reasoning, active information acquisition, and external knowledge each contribute to interprocedural binary analysis. We evaluate five recent LLMs and their corresponding agents. Our results reveal a wide separation across current models and agents, with program-level verifiable success rates ranging from 23% to 81%. They also show that greater information access does not consistently lead to better results, with particularly limited gains on the hardest cases, where deeper interprocedural reasoning remains the primary bottleneck. Uneven performance across models and frequent verifiable failures even under an optimistic evaluation indicate that robust binary interprocedural reasoning remains an open challenge.

Tue 27 OctSoftware EngineeringCryptography and Security
The gist
Understanding how parts of a computer program work together after they've been turned into binary code is difficult. The authors created a test called ICALL-BENCH to see how well language models can figure out these complex relationships across functions. They tested five models on big, real programs and found that performance varies widely. Even with extra information, the models often struggle with deeper reasoning across multiple functions.
Open → 2610.37871v1

SEMPRE improves understanding of complex communication protocols automatically

SEMPRE: Semantic-Aware Protocol Reverse Engineering via Consistency-Driven Joint Optimization

Abstract: Protocol reverse engineering (PRE) is essential for understanding undocumented or proprietary communication formats, enabling security-critical tasks such as vulnerability discovery, malware C2 analysis, and IDS signature generation. However, existing PRE techniques rely on brittle hand-written rules, under-model contextual dependencies among neighboring fields, and often fail on messages with nested sub-protocols. We present SEMPRE, a fully automated PRE framework that replaces ad-hoc heuristics with recursive LLM reasoning grounded in fine-grained dynamic program analysis. SEMPRE uses taint-flow and loop traces to guide an LLM-driven tree-of-thought search that slices messages into fields while detecting nested sub-payloads, producing a hierarchical layout. It then infers each field's type and role and iteratively refines boundaries by freezing high-confidence segments and re-running detection under semantic constraints, yielding an EM-style procedure that monotonically improves structure and semantics until convergence. Evaluated on a broad corpus of mainstream protocols against six state-of-the-art (vs. <0.4 for all baselines) and 0.72 for semantic inference (vs. 0.13 for BinPRE). Ablations confirm the contribution of each component, and a case study on a prolific real-world botnet demonstrates practical utility.

Thu 22 OctCryptography and Security
The gist
Understanding unknown communication formats is important for security but hard because current methods rely on fragile rules and struggle with complex nested messages. The authors propose SEMPRE, a new tool that uses AI language models combined with dynamic code analysis to automatically break down and interpret these messages. SEMPRE identifies the different parts of a communication, including nested sections, and improves its guesses step-by-step until it gets accurate results. Tests show SEMPRE performs much better than existing methods on common protocols and real-world malware traffic.
Open → 2610.31844v1

Decompiler tool recovers clear code from virtual machine obfuscation

VMSpec: A Decompiler-based Approach against Virtual Machine Obfuscation

Abstract: Malicious actors frequently obfuscate their code to hinder investigative reverse engineering efforts. Among the most formidable techniques is virtual machine (VM) obfuscation: programs are translated into bytecode for a custom VM, often with a randomized virtual instruction set and distributed alongside a corresponding interpreter. Manual analysis and deobfuscation scale poorly due to the complexity of VM obfuscation and the diversification techniques that render each VM and interpreter unique. Existing methods primarily focus on simplifying execution traces and identifying virtual execution boundaries. However, comparatively little attention has been given to recovering higher-level program semantics from VM-obfuscated code. To address this gap, we propose VMSpec, a novel decompiler-based approach that automates the construction of VM processor specifications, enabling existing, well-known decompilers to analyze the VM-obfuscated code. We evaluate our prototype of VMSpec on 147 programs from an established obfuscation benchmark, comprising hash functions, standard algorithms, and randomized functions, obfuscated with different configurations of the Tigress and Code Virtualizer obfuscators. To demonstrate real-world applicability, we additionally include six domain generation algorithms stemming from real-world malware. VMSpec completely strips VM-obfuscation from nearly all obfuscated samples, producing output comparable to Ghidra's decompilation of the original code. Furthermore, it is the first method capable of reconstructing the complete program behavior of VM-obfuscated programs with infinite, input-dependent paths and recursive calls.

Wed 21 OctCryptography and Security
The gist
Some software hides its instructions by running on a made-up mini computer inside the real one, making it hard to understand. The authors present VMSpec, a tool that can automatically figure out how this mini computer works and turn the hidden instructions back into clear code. This helps security experts see what the hidden programs really do, even if they use complex tricks to confuse analysis. VMSpec works well on many test programs and real-world malware samples, matching the clarity of normal decompilers.
Open → 2610.29566v1

LLMs improve source code recovery from binaries across many architectures

SoK: Are LLMs Reliable at Source Code Recovery? A Taxonomy and Empirical Evaluation

Abstract: Effective source recovery is critical to security applications such as malware analysis, vulnerability assessment, and legacy maintenance. Large Language Models (LLMs) are reshaping this field, shifting the paradigm away from rule-based heuristics to probabilistic and high fidelity semantic recovery of source code from assembly or classical decompiler-derived pseudo-C. However, despite rapid progress, the field suffers from fragmentation across numerous approaches as well as their non-unified evaluations, limiting objective comparisons. Further, existing works have limited coverage of embedded, IoT architectures and source languages beyond C/C++. In this work, we present the first Systematization of Knowledge (SoK) focused specifically on LLM-assisted binary-to-source recovery. We provide a granular design-centric taxonomy of LLM-assisted source recovery methods and systematic evaluations using seven key metrics along six evaluation dimensions. We evaluate state-of-the-art methods on 45,000 test samples derived from four standard and five embedded architectures, five optimization levels, and symbol stripping. We ablate the impact of design choices on recovery performance, including input representation, contextual enrichment, model scale, iteration and review roles using controlled in-house recovery pipelines and three off-the-shelf models. Finally, we test same-language and cross-language recovery capability covering four mature and two legacy languages. Our systematization and comprehensive evaluations provide key insights that guide future directions in this field.

Thu 8 OctCryptography and SecuritySoftware Engineering
The gist
Turning low-level computer code back into human-readable programs is important for tasks like finding security problems or fixing old software. This paper studies how large language models (LLMs) can help recover original source code from compiled machine code. The authors organize current methods into a clear framework and test them extensively on many types of computer processors, coding languages, and compiler settings. They also investigate how different design choices affect recovery quality and the ability to translate between programming languages. Their work reveals how reliable current LLMs are for this task and suggests ways to improve them in the future.
Open → 2610.11556v1

Avhunter finds exact byte regions that antivirus software checks

Breaking the Black Box: Byte-Level Boundary Inference of Real-World Antivirus Systems

Abstract: Existing approaches for understanding the detection logic of real-world antivirus (AV) software infer only binary malware/benign decisions from black-box queries, providing limited insight into the fine-grained decision-critical regions that govern AV detection. In this paper, we present \textbf{AVHunter}, the first framework for inferring byte-level decision-critical regions of real-world AV products under a black-box threat model. AVHunter constructs the first large-scale Byte-Level AV Boundary Dataset (BABD) by systematically probing 11 real-world AV products, revealing that modern AV detections are largely associated with a small number of compact decision-critical byte regions. Leveraging BABD, AVHunter trains AV-specific models that not only reproduce binary AV decisions, but also localize the decision-critical byte regions underlying these decisions, achieving an average boundary prediction recall of 85.07% while maintaining 97.43% detection agreement with the target AVs. We further validate that the predicted regions capture genuine AV decision knowledge through boundary-guided malware evasion, false-positive induction on benign executables, and a seven-month longitudinal study demonstrating that the inferred regions remain largely stable as AV products evolve. Overall, AVHunter moves beyond conventional binary-label AV modeling by enabling fine-grained boundary-region localization and revealing a new form of AV knowledge leakage with important implications for malware analysis, AV security, and boundary-aware defenses.

Fri 25 SeptCryptography and Security
The gist
Antivirus programs decide if files are safe or harmful but keep their detection rules secret, making it hard to understand what triggers an alert. The authors created AVHunter, a tool that can guess which exact parts of a file antivirus products focus on to label it as dangerous or safe, just by testing with the software without knowing its internal workings. They built a large dataset by testing 11 antivirus systems and showed that AVHunter accurately predicts these key file regions. This helps reveal hidden antivirus knowledge and could improve malware detection and evasion studies.
Open → 2609.31012v1

Latent reasoning improves single-shot JavaScript code deobfuscation accuracy

Stage-Supervised Latent Reasoning for Single-Shot JavaScript Deobfuscation

Abstract: JavaScript obfuscation is widely used to protect code, but it also makes program analysis and security review substantially harder. Existing LLM-based deobfuscation methods usually treat the task as one-step translation, ignoring the staged structure of practical deobfuscation pipelines. This WIP paper proposes a stage-aware latent reasoning framework that converts intermediate outputs from a deterministic deobfuscation tool into supervision for Coconut-based training. The model learns from multi-stage rewrites during training but generates the final cleaned program in a single shot at inference time. Preliminary results on JsDeObsBench show that the Coconut-based model improves syntactic validity to 50%, compared with 15% for direct fine-tuning and 25% for a zero-shot baseline, and reaches 80% semantic correctness among valid outputs, indicating better semantic faithfulness than either comparison model in deobfuscation.

Tue 22 SeptSoftware Engineering
The gist
JavaScript code can be purposely scrambled to hide what it does, which makes it harder to study or fix. The authors propose a method that learns from step-by-step cleaning examples but produces a fully clean version in one try. Their approach uses intermediate hints from existing tools to train a model that better understands how to undo the scrambling. Tests show it creates more syntactically correct and semantically faithful versions of code than simpler methods.
Open → 2609.27058v1

Community prototypes do not improve malware family rejection in graphs

Residual Community Prototypes Under-Reject Held-Out Malware Families in FCG-MFD

Abstract: Open-set malware-family recognition must classify known families while rejecting families absent from training. We test whether Louvain-community summaries add rejection information beyond a graph neural network embedding and dimension-matched generic topology. The study uses a deduplicated, conflict-audited FCG-MFD corpus, five held-out families, and three optimization seeds. Community features are residualized against generic topology using known-family training data before nearest-prototype scoring. Residual community does not produce stable held-out-family rejection. Ranking effects reverse across families, the false-positive rate at 95 percent unknown recall worsens for every held-out family, and a validation-fitted threshold rejects only 4.48 percent of unknown samples. Accepted-known macro F1 improves in every family, but with five independent family units the exact two-sided sign-flip p-value is 0.0625, the smallest attainable value. The score remains associated with graph scale, while simple classifier uncertainty performs better on ranking, high-recall rejection, and OSCR. In this GIN/FCG-MFD setting, community-enriched prototypes change known-class geometry without creating a stable unknown margin. Graph open-set evaluations should pair structural features with matched topology controls, operational thresholds, and held-out-family analysis.

Mon 21 SeptCryptography and Security
The gist
This paper looks at how well certain graph-based techniques can recognize malware families they have seen before while rejecting new, unknown families. The authors tested whether using community detection summaries helps reject unknown malware better than existing graph features alone. They found that these community features did not consistently help detect new malware families and sometimes made the problem worse. However, the approach did slightly improve recognizing known malware types.
Open → 2609.24980v1

Semantic and graph analysis improves vulnerability detection in assembly code

SEMA-GUARD: Semantic and Graph-Based Vulnerability Detection in Assembly Code

Abstract: In cases where source code is not available, such as malware analysis, firmware analysis, and embedded systems analysis, vulnerability detection in compiled programs has gained importance. Current methods are heavily reliant on syntactical regularities or higher level representations that are vulnerable to changes in the compiler and may not be readily applicable to assembly code.In this article, we present SEMA-GUARD, a framework that uses semantic analysis and graph neural networks to identify flaws in assembly code. The approach improves the representation of control flow graphs by adding information about the program's execution at a lower level of abstraction, including stack manipulations, memory accesses, and data flow. A set based on the Juliet Test Suite was used to evaluate the effectiveness of SEMA-GUARD. In this set, each piece of source code is initially translated into assembly language and then broken down into function-level chunks. The suggested method, which relies only on statistical or structural data, achieves an accuracy of 85.1\% and an F1 score of 0.801, according to the results. Such results imply that including semantic information in graph-based models may be a successful method for identifying vulnerabilities in compiled code.

Tue 15 SeptCryptography and Security
The gist
Finding security problems in software is harder when only the low-level assembly code is available, such as in malware or device firmware. The authors created a method called SEMA-GUARD that looks at how the program actually works, including details like memory use and data flow, rather than just its structure. Their method uses special neural networks that work on graphs representing the program's flow, enhanced with semantic info. Tested on a set of programs converted to assembly, their approach detected vulnerabilities with about 85% accuracy. This suggests that combining semantic details with graph techniques helps find flaws in compiled programs.
Open → 2609.17254v1

Hieronym improves function naming in stripped binary code

Hieronym: Leveraging Hierarchical Multi-Source Information for Function Renaming in Stripped Binary

Abstract: Function renaming in stripped binaries can substantially assist reverse engineers by improving code readability, yet it is a challenging task. The difficulty stems from the need to accurately capture function semantics from low-level binary code across diverse instruction sets, architectures, and compiler optimizations, and to express these semantics in concise, human-readable names. Existing approaches either inadequately capture comprehensive function semantics or exhibit limited generalization to previously unseen binaries. In this paper, we present Hieronym, a generative large language model (LLM)-based framework for stripped binary function renaming. Hieronym adopts a hierarchical summarization-driven domain adaptation strategy and integrates multi-source information, including global binary context, local calling context, and intrinsic function semantics, to enhance the LLM's understanding of binary code. To enable systematic evaluation, we further propose a dual-layer evaluation framework that incorporates both token-level and whole-name-level metrics. We evaluate Hieronym on binary functions compiled with four compiler optimization levels (O0-O3) for four architectures (x64, x86, ARM, and MIPS). Experimental results demonstrate that Hieronym significantly outperforms state-of-the-art methods, achieving token-level improvements of 50.12% in precision, 41.75% in recall, and 45.10% in F1-score, as well as a 79.94% improvement in name-level accuracy, while also exhibiting strong generalization capability. Moreover, experiments on real-world malware samples further validate the practical effectiveness of Hieronym in security-critical scenarios.

Fri 11 SeptSoftware Engineering
The gist
Stripped binaries remove helpful function names to protect or reduce programs, making it hard for people to understand the code. Hieronym is a new tool that uses a large language model to suggest accurate and readable names for these functions by combining different information sources from the program. It works well across several computer architectures and optimization levels, making reverse engineering easier and more reliable. The authors also tested Hieronym on real malware, showing it can help in security situations.
Open → 2609.12457v1