2019
DOI: 10.1109/access.2019.2936139
|View full text |Cite
|
Sign up to set email alerts
|

A Value Set Analysis Refinement Approach Based on Conditional Merging and Lazy Constraint Solving

Abstract: Value set analysis is a common static binary program analysis approach. Value set analysis attempts to identify a tight over-approximation of the program state at any given point in the program and can be used to detect vulnerability. Existing memory corruption detection analysis technologies based on value set analysis have a high false positive rate, because value set analysis suffers from a lack of accuracy. We observed that two main sources of imprecision in value set analysis are merge operation and faile… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
8
0

Year Published

2019
2019
2023
2023

Publication Types

Select...
3
3
1

Relationship

2
5

Authors

Journals

citations
Cited by 9 publications
(8 citation statements)
references
References 46 publications
0
8
0
Order By: Relevance
“…But ours is different from the existing work [28]- [31]. Take Avatar as an example, there are three main differences between our work and Avatar.…”
Section: Related Workmentioning
confidence: 60%
“…But ours is different from the existing work [28]- [31]. Take Avatar as an example, there are three main differences between our work and Avatar.…”
Section: Related Workmentioning
confidence: 60%
“…The value set obtained by VSA is overapproximated, and its accuracy is subject to the lack of runtime information and path explosion. Therefore, VSA results suffer from a high false positive rate [53]. Our evaluation also demonstrates that VSA is too imprecise for practical binary code debloating.…”
Section: Indirect Control Flowmentioning
confidence: 91%
“…Can we reuse the work done by the automated analyses to effectively support that RE effort? Many automated static analyses perform some form of value-set analysis (VSA) [3], over-approximating what values memory and register locations can take on at runtime at each program point [26]. Binary analyses particularly lean on VSA because it does not require distinguishing between addresses and integers [4].…”
Section: Introductionmentioning
confidence: 99%
“…But before building a system to assist human reverse engineers, we need to understand the effects of these tradeoffs on the reverse engineers. We do not want to build a system that ends up impairing human reasoning -and approximate VSA information might do just that [26], [27].…”
Section: Introductionmentioning
confidence: 99%