Fuzzing Symbolic Expressions

02/12/2021
by   Luca Borzacchiello, et al.
0

Recent years have witnessed a wide array of results in software testing, exploring different approaches and methodologies ranging from fuzzers to symbolic engines, with a full spectrum of instances in between such as concolic execution and hybrid fuzzing. A key ingredient of many of these tools is Satisfiability Modulo Theories (SMT) solvers, which are used to reason over symbolic expressions collected during the analysis. In this paper, we investigate whether techniques borrowed from the fuzzing domain can be applied to check whether symbolic formulas are satisfiable in the context of concolic and hybrid fuzzing engines, providing a viable alternative to classic SMT solving techniques. We devise a new approximate solver, FUZZY-SAT, and show that it is both competitive with and complementary to state-of-the-art solvers such as Z3 with respect to handling queries generated by hybrid fuzzers.

READ FULL TEXT

page 5

page 6

research
11/26/2017

Improving Function Coverage with Munch: A Hybrid Fuzzing and Directed Symbolic Execution Approach

Fuzzing and symbolic execution are popular techniques for finding vulner...
research
01/26/2023

Learning Modulo Theories

Recent techniques that integrate solver layers into Deep Neural Networks...
research
04/13/2018

On Solving Quantified Bit-Vectors using Invertibility Conditions

We present a novel approach for solving quantified bit-vector formulas i...
research
09/03/2021

On the proof complexity of MCSAT

Satisfiability Modulo Theories (SMT) and SAT solvers are critical compon...
research
08/17/2021

Symbolic Automatic Relations and Their Applications to SMT and CHC Solving

Despite the recent advance of automated program verification, reasoning ...
research
09/04/2019

Defeating Opaque Predicates Statically through Machine Learning and Binary Analysis

We present a new approach that bridges binary analysis techniques with m...
research
07/12/2023

An Efficient Canonical Narrowing Implementation with Irreducibility and SMT Constraints for Generic Symbolic Protocol Analysis

Narrowing and unification are very useful tools for symbolic analysis of...

Please sign up or login with your details

Forgot password? Click here to reset