@inproceedings{25c0a3967e714fc3b75f88fb26473ab0,
title = "DeView: Confining Progressive Web Applications by Debloating Web APIs",
abstract = "A progressive web application (PWA) becomes an attractive option for building universal applications based on feature-rich web Application Programming Interfaces (APIs). While flexible, such vast APIs inevitably bring a significant increase in an API attack surface, which commonly corresponds to a functionality that is neither needed nor wanted by the application. A promising approach to reduce the API attack surface is software debloating, a technique wherein an unused functionality is programmatically removed from an application. Unfortunately, debloating PWAs is challenging, given the monolithic design and non-deterministic execution of a modern web browser. In this paper, we present DeView, a practical approach that reduces the attack surface of a PWA by blocking unnecessary but accessible web APIs. DeView tackles the challenges of PWA debloating by i) record-and-replay web API profiling that identifies needed web APIs on an app-by-app basis by replaying (recorded) browser interactions and ii) compiler-assisted browser debloating that eliminates the entry functions of corresponding web APIs from the mapping between web API and its entry point in a binary. Our evaluation shows the effectiveness and practicality of DeView. DeView successfully eliminates 91.8\% of accessible web APIs while i) maintaining original functionalities and ii) preventing 76.3\% of known exploits on average.",
keywords = "Browser, Debloating, PWA, Program Analysis, Progressive Web Application, Record-and-Replay, Web APIs",
author = "Oh, \{Chang Seok\} and Sangho Lee and Chenxiong Qian and Hyungjoon Koo and Wenke Lee",
note = "Publisher Copyright: {\textcopyright} 2022 Owner/Author.; 38th Annual Computer Security Applications Conference, ACSAC 2022 ; Conference date: 05-12-2022 Through 09-12-2022",
year = "2022",
month = dec,
day = "5",
doi = "10.1145/3564625.3567987",
language = "English",
series = "ACM International Conference Proceeding Series",
publisher = "Association for Computing Machinery",
pages = "881--895",
booktitle = "Proceedings - 38th Annual Computer Security Applications Conference, ACSAC 2022",
}