Triereme: Speeding up hybrid fuzzing through efficient query scheduling

Research output: Chapter in Book / Report / Conference proceedingConference contributionAcademicpeer-review

89 Downloads (Pure)

Abstract

Hybrid fuzzing, the combination between fuzzing and concolic execution, holds great promise in theory, but has so far failed to deliver all the expected advantages in practice due to its high overhead. The cause is the large amount of time spent in the SMT solver. As a result, hybrid fuzzers often lose out to simpler, yet faster techniques. This issue remains despite novel query pruning techniques that reduce the number and complexity of solver queries as they preclude other crucial optimizations like incremental solving. We introduce Triereme, a method to speed up the hybrid fuzzer's concolic engine by reducing the time spent in the SMT solver. Triereme uses a trie (or prefix tree) data structure to schedule and cache solver queries, exploiting common prefixes. This design is made possible by decoupling concolic tracing from concolic solving. As a result, Triereme manages to reconcile pruning with incremental solving, reaping their combined benefits. In our tests, Triereme speeds up concolic executions by 6.1x on average in FuzzBench [22] and improves coverage progress in 79% of the benchmarks.

Original languageEnglish
Title of host publicationACSAC 2023
Subtitle of host publicationProceedings of the 39th Annual Computer Security Applications Conference
PublisherAssociation for Computing Machinery
Pages56-70
Number of pages15
ISBN (Electronic)9798400708862
DOIs
Publication statusPublished - 2023
Event39th Annual Computer Security Applications Conference, ACSAC 2023 - Austin, United States
Duration: 4 Dec 20238 Dec 2023

Publication series

NameACM International Conference Proceeding Series

Conference

Conference39th Annual Computer Security Applications Conference, ACSAC 2023
Country/TerritoryUnited States
CityAustin
Period4/12/238/12/23

Bibliographical note

Funding Information:
This work was supported by EZK through AVR
“Memo” and by NWO through “INTERSECT” and “Vulcan”.

Publisher Copyright:
© 2023 Owner/Author.

Funding

This work was supported by EZK through AVR “Memo” and by NWO through “INTERSECT” and “Vulcan”.

FundersFunder number
Nederlandse Organisatie voor Wetenschappelijk OnderzoekINTERSECT, Vulcan (VI.Veni.202.212)

    Keywords

    • concolic execution
    • fuzzing
    • hybrid fuzzing
    • program analysis

    Fingerprint

    Dive into the research topics of 'Triereme: Speeding up hybrid fuzzing through efficient query scheduling'. Together they form a unique fingerprint.

    Cite this