Concolic execution is a dynamic twist of symbolic execution de- signed with scalability in mind. Recent concolic executors heavily rely on program instrumentation to achieve such scalability. The instrumentation code can be added at compilation time (e.g., using an LLVM pass), or directly at execution time with the help of a dynamic binary translator. The former approach results in more ef- ficient code but requires recompilation. Unfortunately, recompiling the entire code of a program is not always feasible or practical (e.g., in presence of third-party components). On the contrary, the latter approach does not require recompilation but incurs significantly higher execution time overhead. In this paper, we investigate a hybrid instrumentation approach for concolic execution, called SymFusion. In particular, this hybrid instrumentation approach allows the user to recompile the core components of an application, thus minimizing the analysis over- head on them, while still being able to dynamically instrument the rest of the application components at execution time. Our experi- mental evaluation shows that our design can achieve a nice balance between efficiency and efficacy on several real-world applications

SymFusion: Hybrid Instrumentation for Concolic Execution / Coppa, Emilio; Yin, Heng; Demetrescu, Camil. - (2022). (Intervento presentato al convegno 7th International Workshop on Sensor-Based Activity Recognition and Artificial Intelligence, iWOAR 2022 tenutosi a Rochester; MI USA) [10.1145/3551349.3556928].

SymFusion: Hybrid Instrumentation for Concolic Execution

Emilio Coppa
Primo
;
Camil Demetrescu
2022

Abstract

Concolic execution is a dynamic twist of symbolic execution de- signed with scalability in mind. Recent concolic executors heavily rely on program instrumentation to achieve such scalability. The instrumentation code can be added at compilation time (e.g., using an LLVM pass), or directly at execution time with the help of a dynamic binary translator. The former approach results in more ef- ficient code but requires recompilation. Unfortunately, recompiling the entire code of a program is not always feasible or practical (e.g., in presence of third-party components). On the contrary, the latter approach does not require recompilation but incurs significantly higher execution time overhead. In this paper, we investigate a hybrid instrumentation approach for concolic execution, called SymFusion. In particular, this hybrid instrumentation approach allows the user to recompile the core components of an application, thus minimizing the analysis over- head on them, while still being able to dynamically instrument the rest of the application components at execution time. Our experi- mental evaluation shows that our design can achieve a nice balance between efficiency and efficacy on several real-world applications
2022
7th International Workshop on Sensor-Based Activity Recognition and Artificial Intelligence, iWOAR 2022
symbolic execution; code instrumentation;
04 Pubblicazione in atti di convegno::04b Atto di convegno in volume
SymFusion: Hybrid Instrumentation for Concolic Execution / Coppa, Emilio; Yin, Heng; Demetrescu, Camil. - (2022). (Intervento presentato al convegno 7th International Workshop on Sensor-Based Activity Recognition and Artificial Intelligence, iWOAR 2022 tenutosi a Rochester; MI USA) [10.1145/3551349.3556928].
File allegati a questo prodotto
File Dimensione Formato  
Coppa_postprint_SymFusion_2022.pdf.pdf

accesso aperto

Tipologia: Documento in Post-print (versione successiva alla peer review e accettata per la pubblicazione)
Licenza: Creative commons
Dimensione 733.89 kB
Formato Adobe PDF
733.89 kB Adobe PDF
Coppa_SymFusion_2022.pdf

solo gestori archivio

Tipologia: Versione editoriale (versione pubblicata con il layout dell'editore)
Licenza: Tutti i diritti riservati (All rights reserved)
Dimensione 897.57 kB
Formato Adobe PDF
897.57 kB Adobe PDF   Contatta l'autore

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/11573/1659877
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 2
  • ???jsp.display-item.citation.isi??? 0
social impact