2017
DOI: 10.1145/3133885
|View full text |Cite
|
Sign up to set email alerts
|

Model-assisted machine-code synthesis

Abstract: Binary rewriters are tools that are used to modify the functionality of binaries lacking source code. Binary rewriters can be used to rewrite binaries for a variety of purposes including optimization, hardening, and extraction of executable components. To rewrite a binary based on semantic criteria, an essential primitive to have is a machine-code synthesizer-a tool that synthesizes an instruction sequence from a specification of the desired behavior, often given as a formula in quantifier-free bit-vector logi… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1

Citation Types

0
2
0

Year Published

2021
2021
2023
2023

Publication Types

Select...
3
1

Relationship

0
4

Authors

Journals

citations
Cited by 4 publications
(2 citation statements)
references
References 33 publications
(33 reference statements)
0
2
0
Order By: Relevance
“…Srinivasan and Reps also consider the problem of synthesizing assembly programs from semantic specifications [Srinivasan and Reps 2015;Srinivasan et al 2016Srinivasan et al , 2017, developing several synthesis optimizations similar to ours. Like us, they use a divide-and-conquer scheme that attempts to find independent sub-specifications that can be solved separately.…”
Section: Related Workmentioning
confidence: 99%
“…Srinivasan and Reps also consider the problem of synthesizing assembly programs from semantic specifications [Srinivasan and Reps 2015;Srinivasan et al 2016Srinivasan et al , 2017, developing several synthesis optimizations similar to ours. Like us, they use a divide-and-conquer scheme that attempts to find independent sub-specifications that can be solved separately.…”
Section: Related Workmentioning
confidence: 99%
“…The binary code transformation process was initially attempted for some simple applications to run on bare machines [18]. There is abundant work done at the binary level to optimize compilers, reverse engineering, and instruction-level insight [19][20][21][22][23]. There are many tools [24][25][26][27][28] available for binary transformation and analysis.…”
Section: Introductionmentioning
confidence: 99%