Dynamic Detection of Use-After-Free Bugs


Cite item

Full Text

Open Access Open Access
Restricted Access Access granted
Restricted Access Subscription Access

Abstract

A novel method for detecting use-after-free bugs based on the program dynamic analysis is described. In memory unsafe programming languages, such as C or C++, this class of bugs mainly occurs when the program tries to access an area of dynamically allocated memory that has been already freed. For each program execution path, the method checks the correction of the allocation, deallocation, and access operations. Since the dynamic analysis is used, bugs can be found only in the parts of the code that was actually executed. The symbolic program execution with the help of SMT (Satisfiability Modulo Theories) solvers is used. This allows us to generate data the processing of which produces new execution paths.

About the authors

S. A. Asryan

Institute of Problems in Informatics and Automation, Armenia National Academy of Sciences

Author for correspondence.
Email: asryan@ispras.ru
Armenia, Erevan, 0014

S. S. Gaissaryan

Ivannikov Institute for System Programming, Russian Academy of Sciences; Faculty of Computational Mathematics and Cybernetics, Moscow State University; Moscow Institute of Physics and Technology; State University—Higher School of Economics

Author for correspondence.
Email: ssg@ispras.ru
Russian Federation, Moscow, 109004; Moscow, 119991; Dolgoprudnyi, Moscow oblast, 141700; Moscow, 101000

Sh. F. Kurmangaleev

Ivannikov Institute for System Programming, Russian Academy of Sciences

Author for correspondence.
Email: kursh@ispras.ru
Russian Federation, Moscow, 109004

A. M. Aghabalyan

Erevan State University

Author for correspondence.
Email: anna.aghabalyan@ispras.ru
Armenia, Erevan, 0025

N. G. Hovsepyan

Erevan State University

Author for correspondence.
Email: narekhnh@ispras.ru
Armenia, Erevan, 0025

S. S. Sargsyan

Erevan State University

Author for correspondence.
Email: sevaksargsyan@ispras.ru
Armenia, Erevan, 0025


Copyright (c) 2019 Pleiades Publishing, Ltd.

This website uses cookies

You consent to our cookies if you continue to use our website.

About Cookies