2020 IEEE Conference on Communications and Network Security (CNS) 2020
DOI: 10.1109/cns48642.2020.9162164
|View full text |Cite
|
Sign up to set email alerts
|

SYMBION: Interleaving Symbolic with Concrete Execution

Abstract: Symbolic execution is a powerful technique for exploring programs and generating inputs that drive them into specific states. However, symbolic execution is also known to suffer from severe limitations, which prevent its application to real-world software. For example, symbolically executing programs requires modeling their interactions with the surrounding environment (e.g., libraries, operating systems). Unfortunately, models are usually created manually, introducing considerable approximations of the progra… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1

Citation Types

0
4
0

Year Published

2021
2021
2024
2024

Publication Types

Select...
7
2

Relationship

0
9

Authors

Journals

citations
Cited by 13 publications
(4 citation statements)
references
References 19 publications
0
4
0
Order By: Relevance
“…PS 3 can work with various architectures, since we can access the source code and compile it into the corresponding binaries. Angr is an open source binary program analysis framework in Python and has been used extensively in binary analysis [8,17,22], as well as patch presence test [23,33,37]. We use Z3 [15] to simplify the expression and calculation of the stack address offset to ensure that the memory mapping is more precise.…”
Section: Methodsmentioning
confidence: 99%
“…PS 3 can work with various architectures, since we can access the source code and compile it into the corresponding binaries. Angr is an open source binary program analysis framework in Python and has been used extensively in binary analysis [8,17,22], as well as patch presence test [23,33,37]. We use Z3 [15] to simplify the expression and calculation of the stack address offset to ensure that the memory mapping is more precise.…”
Section: Methodsmentioning
confidence: 99%
“…Angr [47] is a Python-based framework that enables static analyses of binaries and symbolic execution. Recent advances to Angr [14] allow transfering state to and from concrete execution environments (e.g., QEMU) which enables transitioning between concrete and symbolic executions.…”
Section: Related Workmentioning
confidence: 99%
“…Angr is an open-source powerful tool for binary analysis ], thus being selected as basis for the MALVERSE development. Angr was also used as basis for other research work in multiple aspects, such as for: tracing disjoint binary functions [Ma et al 2019] (a technique presented in [Caballero et al 2010]), fixing binary loading [Xu et al 2017], or in concolic executions [Gritti et al 2020]. Despite powerful, Angr has some limitations, as pointed in previous work [Yin et al 2018.…”
Section: Related Workmentioning
confidence: 99%