Please use this identifier to cite or link to this item: https://doi.org/10.1109/TSE.2019.2941681
DC FieldValue
dc.titleSmart Greybox Fuzzing
dc.contributor.authorPham, Van-Thuan
dc.contributor.authorBohme, Marcel
dc.contributor.authorSantosa, Andrew E
dc.contributor.authorCaciulescu, Alexandru Razvan
dc.contributor.authorRoychoudhury, Abhik
dc.date.accessioned2023-09-04T00:44:50Z
dc.date.available2023-09-04T00:44:50Z
dc.date.issued2021-09-01
dc.identifier.citationPham, Van-Thuan, Bohme, Marcel, Santosa, Andrew E, Caciulescu, Alexandru Razvan, Roychoudhury, Abhik (2021-09-01). Smart Greybox Fuzzing. IEEE Transactions on Software Engineering 47 (9) : 1980-1997. ScholarBank@NUS Repository. https://doi.org/10.1109/TSE.2019.2941681
dc.identifier.issn0098-5589
dc.identifier.issn1939-3520
dc.identifier.urihttps://scholarbank.nus.edu.sg/handle/10635/244803
dc.description.abstractCoverage-based greybox fuzzing (CGF) is one of the most successful approaches for automated vulnerability detection. Given a seed file (as a sequence of bits), a CGF randomly flips, deletes or copies some bits to generate new files. CGF iteratively constructs (and fuzzes) a seed corpus by retaining those generated files which enhance coverage. However, random bitflips are unlikely to produce valid files (or valid chunks in files), for applications processing complex file formats. In this work, we introduce smart greybox fuzzing (SGF) which leverages a high-level structural representation of the seed file to generate new files. We define innovative mutation operators that work on the virtual file structure rather than on the bit level which allows SGF to explore completely new input domains while maintaining file validity. We introduce a novel validity-based power schedule that enables SGF to spend more time generating files that are more likely to pass the parsing stage of the program, which can expose vulnerabilities much deeper in the processing logic. Our evaluation demonstrates the effectiveness of SGF. On several libraries that parse complex chunk-based files, our tool AFLsmart achieves substantially more branch coverage (up to 87 percent improvement) and exposes more vulnerabilities than baseline AFL. Our tool AFLsmart discovered 42 zero-day vulnerabilities in widely-used, well-tested tools and libraries; 22 CVEs were assigned.
dc.language.isoen
dc.publisherInstitute of Electrical and Electronics Engineers
dc.sourceElements
dc.subjectScience & Technology
dc.subjectTechnology
dc.subjectComputer Science, Software Engineering
dc.subjectEngineering, Electrical & Electronic
dc.subjectComputer Science
dc.subjectEngineering
dc.subjectFuzzing
dc.subjectComputer bugs
dc.subjectLibraries
dc.subjectTools
dc.subjectDictionaries
dc.subjectOpen area test sites
dc.subjectSchedules
dc.subjectVulnerability detection
dc.subjectsmart fuzzing
dc.subjectautomated testing
dc.subjectfile format
dc.subjectgrammar
dc.subjectinput structure
dc.typeArticle
dc.date.updated2023-09-03T10:35:33Z
dc.contributor.departmentDEPARTMENT OF COMPUTER SCIENCE
dc.description.doi10.1109/TSE.2019.2941681
dc.description.sourcetitleIEEE Transactions on Software Engineering
dc.description.volume47
dc.description.issue9
dc.description.page1980-1997
dc.published.statePublished
Appears in Collections:Staff Publications
Elements

Show simple item record
Files in This Item:
File Description SizeFormatAccess SettingsVersion 
1811.09447v1.pdf706.2 kBAdobe PDF

OPEN

Pre-printView/Download

Google ScholarTM

Check

Altmetric


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.