Invivo Fuzzing by Amplifying Actual Executions
A major bottleneck that remains when fuzzing software libraries is the need for fuzz drivers, i.e., the glue code between the fuzzer and the library. Despite years of fuzzing, critical security flaws are still found, e.g., by manual auditing, because the fuzz drivers do not cover the complex interac...
Saved in:
| Published in: | Proceedings / International Conference on Software Engineering pp. 1566 - 1578 |
|---|---|
| Main Authors: | , |
| Format: | Conference Proceeding |
| Language: | English |
| Published: |
IEEE
26.04.2025
|
| Subjects: | |
| ISSN: | 1558-1225 |
| Online Access: | Get full text |
| Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
| Abstract | A major bottleneck that remains when fuzzing software libraries is the need for fuzz drivers, i.e., the glue code between the fuzzer and the library. Despite years of fuzzing, critical security flaws are still found, e.g., by manual auditing, because the fuzz drivers do not cover the complex interactions between the library and the host programs using it. In this work we propose an alternative approach to library fuzzing, which leverages a valid execution context that is set up by a given program using the library (the host), and amplify its execution. More specifically, we execute the host until a designated function from a list of target functions has been reached, and then perform coverage-guided function-level fuzzing on it. Once the fuzzing quota is exhausted, we move on to fuzzing the next target from the list. In this way we not only reduce the amount of manual work needed by a developer to incorporate fuzzing into their workflow, but we also allow the fuzzer to explore parts of the library as they are used in real-world programs that may otherwise not have been tested due to the simplicity of most fuzz drivers. |
|---|---|
| AbstractList | A major bottleneck that remains when fuzzing software libraries is the need for fuzz drivers, i.e., the glue code between the fuzzer and the library. Despite years of fuzzing, critical security flaws are still found, e.g., by manual auditing, because the fuzz drivers do not cover the complex interactions between the library and the host programs using it. In this work we propose an alternative approach to library fuzzing, which leverages a valid execution context that is set up by a given program using the library (the host), and amplify its execution. More specifically, we execute the host until a designated function from a list of target functions has been reached, and then perform coverage-guided function-level fuzzing on it. Once the fuzzing quota is exhausted, we move on to fuzzing the next target from the list. In this way we not only reduce the amount of manual work needed by a developer to incorporate fuzzing into their workflow, but we also allow the fuzzer to explore parts of the library as they are used in real-world programs that may otherwise not have been tested due to the simplicity of most fuzz drivers. |
| Author | Galland, Octavio Bohme, Marcel |
| Author_xml | – sequence: 1 givenname: Octavio surname: Galland fullname: Galland, Octavio organization: Canonical,Argentina – sequence: 2 givenname: Marcel surname: Bohme fullname: Bohme, Marcel organization: MPI-SP,Germany |
| BookMark | eNotj8FOg0AURUejiW3tH3TBD4Bv3mNmmCUhVEmauFDXzYMOZgyFpkAj_Xoxuro5m5Nzl-Ku7VonxEZCJCXYpyJ7y5Wi2EQIqCIAafBGrK2xCZFUoLSVt2IhlUpCiagexLLvvwBAx9YuRFS0F3_pgu14vfr2MyinID2eGl9Pv5RWw8hNkH-7ahx81_aP4r7mpnfr_12Jj23-nr2Eu9fnIkt3IaOGIZxTUMWGDcwZzllSGiujiZgwJgeHREHpkorlgTWUhBUCSway7IDrklZi8-f1zrn96eyPfJ7282G0iUb6AVXzRMU |
| CODEN | IEEPAD |
| ContentType | Conference Proceeding |
| DBID | 6IE 6IH CBEJK ESBDL RIE RIO |
| DOI | 10.1109/ICSE55347.2025.00172 |
| DatabaseName | IEEE Electronic Library (IEL) Conference Proceedings IEEE Proceedings Order Plan (POP) 1998-present by volume IEEE Xplore All Conference Proceedings IEEE Xplore Open Access Journals IEEE Electronic Library (IEL) IEEE Proceedings Order Plans (POP) 1998-present |
| DatabaseTitleList | |
| Database_xml | – sequence: 1 dbid: RIE name: IEEE Electronic Library (IEL) url: https://ieeexplore.ieee.org/ sourceTypes: Publisher |
| DeliveryMethod | fulltext_linktorsrc |
| Discipline | Computer Science |
| EISBN | 9798331505691 |
| EISSN | 1558-1225 |
| EndPage | 1578 |
| ExternalDocumentID | 11029862 |
| Genre | orig-research |
| GroupedDBID | -~X .4S .DC 29O 5VS 6IE 6IF 6IH 6IK 6IL 6IM 6IN 8US AAJGR AAWTH ABLEC ADZIZ ALMA_UNASSIGNED_HOLDINGS ARCSS AVWKF BEFXN BFFAM BGNUA BKEBE BPEOZ CBEJK CHZPO EDO ESBDL FEDTE I-F IEGSK IJVOP IPLJI M43 OCL RIE RIL RIO |
| ID | FETCH-LOGICAL-a260t-2022547a70798ee93562c7633a3243e0d850be8ca1da60b32c20a1a039ae0afb3 |
| IEDL.DBID | RIE |
| ISICitedReferencesCount | 0 |
| ISICitedReferencesURI | http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=001538318100122&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| IngestDate | Wed Aug 27 01:40:27 EDT 2025 |
| IsDoiOpenAccess | true |
| IsOpenAccess | true |
| IsPeerReviewed | false |
| IsScholarly | true |
| Language | English |
| LinkModel | DirectLink |
| MergedId | FETCHMERGED-LOGICAL-a260t-2022547a70798ee93562c7633a3243e0d850be8ca1da60b32c20a1a039ae0afb3 |
| OpenAccessLink | https://ieeexplore.ieee.org/document/11029862 |
| PageCount | 13 |
| ParticipantIDs | ieee_primary_11029862 |
| PublicationCentury | 2000 |
| PublicationDate | 2025-April-26 |
| PublicationDateYYYYMMDD | 2025-04-26 |
| PublicationDate_xml | – month: 04 year: 2025 text: 2025-April-26 day: 26 |
| PublicationDecade | 2020 |
| PublicationTitle | Proceedings / International Conference on Software Engineering |
| PublicationTitleAbbrev | ICSE |
| PublicationYear | 2025 |
| Publisher | IEEE |
| Publisher_xml | – name: IEEE |
| SSID | ssj0006499 |
| Score | 2.2968287 |
| Snippet | A major bottleneck that remains when fuzzing software libraries is the need for fuzz drivers, i.e., the glue code between the fuzzer and the library. Despite... |
| SourceID | ieee |
| SourceType | Publisher |
| StartPage | 1566 |
| SubjectTerms | Codes Fuzzing Manuals Security Software libraries |
| Title | Invivo Fuzzing by Amplifying Actual Executions |
| URI | https://ieeexplore.ieee.org/document/11029862 |
| WOSCitedRecordID | wos001538318100122&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| hasFullText | 1 |
| inHoldings | 1 |
| isFullTextHit | |
| isPrint | |
| link | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV1LTwIxEG6UePCED4zv9OB1obvtdtsjIRC5EBI14Ub6GBIui0GWKL_eaXdBLx68NW2Tpo95deabIeQJic8Z530itBKJUJAmRkhIlJK80CgwcSwWmygmEzWb6WkDVo9YGACIwWfQDc3oy_crV4Wvsh6KqkyrwHGPi0LWYK0D25WouzfYuJTp3njwMsxzLgq0AbPwb5KGJMC_KqhEATJq_3PpM9L5geLR6UHInJMjKC9Ie1-LgTakeUm643K73K7oqNrtcCK1X7QfgsUjjIn2I0yEDj_B1Q-tQ95Gw9fBc9LUQkgMWhwbfMxIeKIwIaGdAtAc9RaHvIEb1Ig4MK9yZkE5k3ojmeWZy5hJDePaADMLy69Iq1yVcE1oDgvrUqk96iYCzQ_reQjndxKy3NqFvyGdsP_5e53uYr7f-u0f_XfkNBxxcLFk8p60NusKHsiJ226WH-vHeEnfOxiR4g |
| linkProvider | IEEE |
| linkToHtml | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV1LTwIxEG4MmugJHxjf9uB1obvt7rZHQiAQkZCICTfSx5BwWQwCUX6907KgFw_emrZJ08e8OvPNEPKExGe1dS4SSopISIgjLTKIpMx4rlBg4lgoNpEPBnI8VsMSrB6wMAAQgs-g7pvBl-_mduW_yhooqhIlPcc9TIVI2BautWe8GWrvJTouZqrRa72205SLHK3AxP-cxD4N8K8aKkGEdKr_XPyU1H7AeHS4FzNn5ACKc1LdVWOgJXFekHqvWM_Wc9pZbTY4kZov2vTh4gHIRJsBKELbn2C3T61G3jrtUasbldUQIo02xxKfM5KeyLVPaScBFEfNxSJ34Bp1Ig7MyZQZkFbHTmfM8MQmTMeacaWB6anhl6RSzAu4IjSFqbFxphxqJwINEOO4D-i3GSSpMVN3TWp-_5P3bcKLyW7rN3_0P5Lj7uilP-n3Bs-35MQft3e4JNkdqSwXK7gnR3a9nH0sHsKFfQMFJZUp |
| openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=proceeding&rft.title=Proceedings+%2F+International+Conference+on+Software+Engineering&rft.atitle=Invivo+Fuzzing+by+Amplifying+Actual+Executions&rft.au=Galland%2C+Octavio&rft.au=Bohme%2C+Marcel&rft.date=2025-04-26&rft.pub=IEEE&rft.eissn=1558-1225&rft.spage=1566&rft.epage=1578&rft_id=info:doi/10.1109%2FICSE55347.2025.00172&rft.externalDocID=11029862 |