Write a Blog >>
ICSE 2020
Wed 24 June - Thu 16 July 2020
Wed 8 Jul 2020 16:44 - 16:50 at Goguryeo - A11-Performance and Analysis Chair(s): Pooyan Jamshidi

Programs tend to provide a broad range of features, and different typologies of users tend to use only a subset of these features. For this reason, and because unnecessary functionality can be harmful in terms of both performance and security, recently we have witnessed an increasing interest in debloating techniques—techniques for reducing the size of a program by eliminating (possibly) unneeded features. Most existing debloating techniques tend to focus on program-size reduction alone, by producing a reduced program that behaves correctly for a provided set of inputs. Although effective with respect to their stated goal, these approaches ignore other important aspects of debloating and ultimately solve a simplified formulation of the problem. We believe that program debloating is a multifaceted issue, in which different, possibly conflicting goals must be considered and suitably accounted for. In this spirit, we propose a general approach that allows for formulating program debloating as a multi-objective optimization problem. Given a program to be debloated, our approach lets users specify (1) a usage profile for the program (i.e., a set of inputs with associated usage probabilities), (2) the factors of interest for the debloating task at hand, and (3) the relative importance of these factors. Based on this information, the approach defines a suitable objective function, so as to be able to associate a score to every possible reduced program, and tries to generate an optimal solution, that is, one that maximizes the objective function. To provide concrete evidence of the usefulness of our approach, we also present and evaluate Debop, a specific instance of the approach that considers three objectives: size reduction, attack surface reduction, and generality (i.e., extent to which the reduced program behaves correctly for the inputs in p’s usage profile). Our results, albeit still preliminary, are promising, in that they show that our approach can be effective in generating debloated programs that achieve good trade-offs between the different factors involved in the debloating process. Our results also provide insights on the performance of our general approach when compared to a specialized single-goal technique.

Wed 8 Jul
Times are displayed in time zone: (UTC) Coordinated Universal Time change

16:05 - 17:05: Paper Presentations - A11-Performance and Analysis at Goguryeo
Chair(s): Pooyan JamshidiUniversity of South Carolina
Demonstrations16:05 - 16:08
Robert ChatleyImperial College London, Thomas AllertonStarling Bank
icse-2020-Journal-First16:08 - 16:16
Giovanni GranoUniversity of Zurich, Christoph LaaberUniversity of Zurich, Annibale PanichellaDelft University of Technology, Sebastiano PanichellaZurich University of Applied Sciences
Link to publication DOI Pre-print
icse-2020-Journal-First16:16 - 16:24
Diego CostaConcordia University, Canada, Cor-Paul BezemerUniversity of Alberta, Canada, Philipp LeitnerChalmers University of Technology & University of Gothenburg, Artur AndrzejakHeidelberg University
icse-2020-papers16:24 - 16:36
Zishuo DingConcordia University, Canada, Jinfu ChenConcordia University, Canada, Weiyi ShangConcordia University
icse-2020-Journal-First16:36 - 16:44
Andreas DannPaderborn University, Ben HermannPaderborn University, Eric BoddenHeinz Nixdorf Institut, Paderborn University and Fraunhofer IEM
Link to publication DOI
icse-2020-New-Ideas-and-Emerging-Results16:44 - 16:50
Qi XinGeorgia Institute of Technology, Myeongsoo KimGeorgia Institute of Technology, Qirun ZhangGeorgia Institute of Technology, USA, Alessandro OrsoGeorgia Tech
icse-2020-Journal-First16:50 - 16:58
Marco PaolieriUniversity of Southern California, Marco BiagiUniversity of Florence, Laura CarnevaliUniversity of Florence, Enrico VicarioUniversity of Florence