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

Proceedings of ISP RAS, 2022 Volume 34, Issue 3, Pages 7–12 (Mi tisp689)

Analyzing properties of path predicate slicing algorithm

A. V. Vishnyakov

Ivannikov Institute for System Programming of the RAS

Abstract: Security development lifecycle (SDL) is applied to improve software reliability and security. It extends program lifecycle with additional testing of security properties. Among other things, fuzz testing is widely used, which allows one to detect crashes and hangs of the analyzed code. The hybrid approach that combines fuzzing and dynamic symbolic execution showed even greater efficiency than classical fuzzing. Moreover, symbolic execution empowers one to add additional runtime checks called security predicates that detect memory errors and undefined behavior. This article explores the properties of the path predicate slicing algorithm that eliminates redundant constraints from a path predicate without accuracy loss. The article proves that the algorithm is finite and does not lose solutions. Moreover, the algorithm asymptotic complexity is estimated.

Keywords: dynamic symbolic execution, DSE, path predicate, slicing, irrelevant constraints elimination, binary analysis

DOI: 10.15514/ISPRAS-2022-34(3)-1



© Steklov Math. Inst. of RAS, 2024