RUS  ENG
Full version
JOURNALS // Proceedings of the Institute for System Programming of the RAS // Archive

Proceedings of ISP RAS, 2016 Volume 28, Issue 5, Pages 73–92 (Mi tisp68)

This article is cited in 7 papers

Software defect severity estimation in presence of modern defense mechanisms

A. N. Fedotova, V. A. Padaryanba, V. V. Kaushana, Sh. F. Kurmangaleeva, A. V. Vishnyakova, A. R. Nurmukhametova

a Institute for System Programming of the Russian Academy of Sciences
b Lomonosov Moscow State University

Abstract: This paper introduces a refined method for automated exploitability evaluation of found program bugs. During security development lifecycle a significant number of crashes is detected in programs. Because of limited resources, bug fixing is time consuming and needs prioritization. It should be the matter of highest priority to fix exploitable bugs. Automated exploit generation technique is used to solve this problem in practice. Generated exploit confirms the presence of a critical vulnerability. However, state-of-the-art publications omit modern defense mechanisms preventing exploitation. It results in lowering of an evaluation quality. This paper considers modern vulnerability exploitation prevention mechanisms. An evaluation of their prevalence and efficiency is also presented. The method can be applied to program binaries and doesn't require any debug information. Proposed method is based on symbolic interpretation of traces obtained by a full-system emulator. Our method can demonstrate a real exploitability for stack buffer overflow vulnerability with write-what-where condition even when DEP, ASLR, and “canary” operate together. The implemented method capabilities were shown on model examples and real programs.

Keywords: critical vulnerability, binary code, symbolic execution.

DOI: 10.15514/ISPRAS-2016-28(5)-4



Bibliographic databases:


© Steklov Math. Inst. of RAS, 2024