Function risk assessment under memory leakage
Code reuse attack (CRA), specifically reusing and then reconstructing the codes (gadgets) already existed in programs and libraries, is widely exploited in software attacks. Admittedly, determination of the location of the gadgets consisted of target instructions along with control flow transfer ins...
Saved in:
Main Authors: | , , , , |
---|---|
Format: | text |
Language: | English |
Published: |
Institutional Knowledge at Singapore Management University
2018
|
Subjects: | |
Online Access: | https://ink.library.smu.edu.sg/sis_research/4393 https://ink.library.smu.edu.sg/context/sis_research/article/5396/viewcontent/Function_risk_assessment_under_memory_leakage_2018_av.pdf |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Institution: | Singapore Management University |
Language: | English |
Summary: | Code reuse attack (CRA), specifically reusing and then reconstructing the codes (gadgets) already existed in programs and libraries, is widely exploited in software attacks. Admittedly, determination of the location of the gadgets consisted of target instructions along with control flow transfer instructions, is of critical importance. Address Space Randomization (ASR), which serves as an effective technique to mitigate CRA, increases the entropy by randomizing the location of the code or data, and baffles adversaries from figuring out the memory layout. Currently, variable randomization methods of high granularity are proposed by scholars to prevent adversaries from deducting memory layout. However, their credibility on alleviating CRA is yet to be confirmed, especially when the suitable pointer is exposed to adversaries. In this paper, we focus on studying what kinds of function leakage can lead to a CRA more likely. A function risk assessment model focusing on function coupling is proposed to quantify the risk caused by the suitable function pointer leakage and it is extended to assess the risk of the whole program and library under the memory leakage. Our experimental results show that popular open-source software is vulnerable when certain code pointer is leaked to adversaries and even severer when the system library is accessible. In addition, suggestions to eliminate function coupling and evaluate the availability of randomization methods are further discussed. |
---|