Show simple item record

dc.contributor.author
He, Jingxuan
dc.contributor.author
Sivanrupan, Gishor
dc.contributor.author
Tsankov, Petar
dc.contributor.author
Vechev, Martin
dc.date.accessioned
2022-03-20T20:53:43Z
dc.date.available
2021-11-27T04:06:28Z
dc.date.available
2022-03-20T20:53:43Z
dc.date.issued
2021
dc.identifier.isbn
978-1-4503-8454-4
en_US
dc.identifier.other
10.1145/3460120.3484813
en_US
dc.identifier.uri
http://hdl.handle.net/20.500.11850/517245
dc.description.abstract
Symbolic execution is a powerful technique that can generate tests steering program execution into desired paths. However, the scalability of symbolic execution is often limited by path explosion, i.e., the number of symbolic states representing the paths under exploration quickly explodes as execution goes on. Therefore, the effectiveness of symbolic execution engines hinges on the ability to select and explore the right symbolic states. In this work, we propose a novel learning-based strategy, called Learch, able to effectively select promising states for symbolic execution to tackle the path explosion problem. Learch directly estimates the contribution of each state towards the goal of maximizing coverage within a time budget, as opposed to relying on manually crafted heuristics based on simple statistics as a crude proxy for the objective. Moreover, Learch leverages existing heuristics in training data generation and feature extraction, and can thus benefit from any new expert-designed heuristics. We instantiated Learch in KLEE, a widely adopted symbolic execution engine. We evaluated Learch on a diverse set of programs, showing that Learch is practically effective: it covers more code and detects more security violations than existing manual heuristics, as well as combinations of those heuristics. We also show that using tests generated by Learch as initial fuzzing seeds enables the popular fuzzer AFL to find more paths and security violations.
en_US
dc.language.iso
en
en_US
dc.publisher
Association for Computing Machinery
en_US
dc.subject
Symbolic execution
en_US
dc.subject
Fuzzing
en_US
dc.subject
Program testing
en_US
dc.subject
Machine learning
en_US
dc.title
Learning to Explore Paths for Symbolic Execution
en_US
dc.type
Conference Paper
dc.date.published
2021-11-13
ethz.book.title
CCS '21: Proceedings of the 2021 ACM SIGSAC Conference on Computer and Communications Security
en_US
ethz.pages.start
2526
en_US
ethz.pages.end
2540
en_US
ethz.event
ACM Conference on Computer and Communications Security (CCS 2021)
en_US
ethz.event.location
Online
en_US
ethz.event.date
November 15-19, 2021
en_US
ethz.identifier.wos
ethz.identifier.scopus
ethz.publication.place
New York, NY
en_US
ethz.publication.status
published
en_US
ethz.leitzahl
ETH Zürich::00002 - ETH Zürich::00012 - Lehre und Forschung::00007 - Departemente::02150 - Dep. Informatik / Dep. of Computer Science::02664 - Inst. f. Programmiersprachen u. -systeme / Inst. Programming Languages and Systems::03948 - Vechev, Martin / Vechev, Martin
en_US
ethz.leitzahl.certified
ETH Zürich::00002 - ETH Zürich::00012 - Lehre und Forschung::00007 - Departemente::02150 - Dep. Informatik / Dep. of Computer Science::02664 - Inst. f. Programmiersprachen u. -systeme / Inst. Programming Languages and Systems::03948 - Vechev, Martin / Vechev, Martin
ethz.date.deposited
2021-11-27T04:06:51Z
ethz.source
SCOPUS
ethz.eth
yes
en_US
ethz.availability
Metadata only
en_US
ethz.rosetta.installDate
2022-03-20T20:53:50Z
ethz.rosetta.lastUpdated
2023-02-07T00:25:26Z
ethz.rosetta.versionExported
true
ethz.COinS
ctx_ver=Z39.88-2004&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.atitle=Learning%20to%20Explore%20Paths%20for%20Symbolic%20Execution&rft.date=2021&rft.spage=2526&rft.epage=2540&rft.au=He,%20Jingxuan&Sivanrupan,%20Gishor&Tsankov,%20Petar&Vechev,%20Martin&rft.isbn=978-1-4503-8454-4&rft.genre=proceeding&rft_id=info:doi/10.1145/3460120.3484813&rft.btitle=CCS%20'21:%20Proceedings%20of%20the%202021%20ACM%20SIGSAC%20Conference%20on%20Computer%20and%20Communications%20Security
 Search print copy at ETH Library

Files in this item

FilesSizeFormatOpen in viewer

There are no files associated with this item.

Publication type

Show simple item record