Residue-Free Computing
Total Page:16
File Type:pdf, Size:1020Kb
Proceedings on Privacy Enhancing Technologies ; 2021 (4):389–405 Logan Arkema* and Micah Sherr Residue-Free Computing Abstract: Computer applications often leave traces or rather to provide additional features and functionali- residues that enable forensic examiners to gain a de- ties. For example, modern operating systems maintain tailed understanding of the actions a user performed access times to quickly locate the most recently modi- on a computer. Such digital breadcrumbs are left by fied files; these access times help an examiner determine a large variety of applications, potentially (and indeed how the computer was used. Log-based filesystems are likely) unbeknownst to their users. This paper presents designed to facilitate fast data recovery, but also leave the concept of residue-free computing in which a user remnants of erased files and more generally allow exam- can operate any existing application installed on their iners to reconstruct the filesystem at various points in computer in a mode that prevents trace data from be- time. ing recorded to disk, thus frustrating the forensic pro- More generally, the traces left by operating systems cess and enabling more privacy-preserving computing. and applications leads to a status quo in which it is In essence, residue-free computing provides an “incog- exceedingly difficult to use a computer without leav- nito mode” for any application. We introduce our im- ing a readily available record of one’s actions. Coun- plementation of residue-free computing, ResidueFree, termeasures that enable greater privacy protections are and motivate ResidueFree by inventorying the poten- piecemeal, and are usually constrained to a particular tially sensitive and privacy-invasive residue left by popu- application—a notable example is the “incognito” or lar applications. We demonstrate that ResidueFree al- “privacy” mode of modern web browsers that are de- lows users to operate these applications without leaving signed to remove local traces of web activity left by the trace data, while incurring modest performance over- browser. More general solutions do exist [10, 12], but heads. they require modifications to the Linux kernel and fail to capture some types of application residue. (We ex- Keywords: privacy; forensics; anti-forensics plore the related literature in more detail in the next DOI 10.2478/popets-2021-0076 section.) Received 2021-02-28; revised 2021-06-15; accepted 2021-06-16. This paper introduces residue-free computing, a privacy-preserving (or anti-forensics) mode of operation for modern operating systems without requiring kernel 1 Introduction modifications. In residue-free computing, the user uses their normal operating system and has access to their Many of the actions that users perform on their com- existing files. The user may optionally choose to start puters leave digital traces. In a computer forensics in- any installed program in residue-free mode, which en- vestigation, these traces form digital breadcrumbs that ables the program to run on top of a union filesystem. allow a forensic examiner to gain a fairly detailed un- The application has read access to all existing data on derstanding of what the user did with their computer— any installed filesystem, but file modifications (includ- which applications and files were accessed, the times ing deletions) are made to a volatile filesystem stored in and potentially the duration of their accesses, and more memory (i.e., RAM). Upon exiting the application, the generally, the actions performed by the user. filesystem modifications are permanently erased. Con- Computer forensics is aided by modern operating ceptually, residue-free computing provides an incognito systems that tend to leave an enormous volume of these mode for any installed application. breadcrumbs. Operating systems leave traces not nec- Residue-free computing assumes an atypical threat essarily to ease the job of a forensic examiner, but model. It assumes a cooperative user who wants to pre- serve their privacy, and an application and operating system that do not actively attempt to prevent the ap- plication from executing in residue-free mode. That is, *Corresponding Author: Logan Arkema: Georgetown residue-free computing is designed to work on appli- University, Email: [email protected] Micah Sherr: Georgetown University, Email: cations and operating systems as they currently exist. [email protected] We assume as our adversary a forensic examiner who is Residue-Free Computing 390 able to take filesystem snapshots of the filesystem before Motivating examples. To motivate the use of and after the execution of an application in residue-free residue-free computing, we consider two example sce- mode. We describe our adversary in more detail below, narios. but in brief, we do not protect against a network ad- Privacy from invasive cohabitants: A computer user versary who learns which applications are being used shares a residence with an individual (for example, an by examining network traces, nor do we protect against abusive partner) who attempts to monitor the user’s malware running on the user’s device that attempts to computer usage. This adversary may be technically so- record actions. Our goal is to prevent our snapshot ad- phisticated, but is not necessarily a trained forensic ex- versary from learning which applications were used and aminer. The user is also not especially technically so- which files were accessed. phisticated, but is aware that ResidueFree is installed To be most useful, residue-free computing should on their computer. not require any program modifications and should be The user uses Skype. Although the user may not compatible with all software already installed on the be aware that Skype stores comprehensive log files that computer, including its operating system. Increased contain chat transcript and Skype call metadata (in- privacy should not come at a significant performance cluding participants and call durations), the user for- penalty; running an application in residue-free mode tunately opted to use ResidueFree to operate Skype. should incur limited overheads. Finally, residue-free Since Skype was used in residue-free mode, the cohab- computing should be user-friendly, allowing a user to itating adversary can neither identify that Skype was easily opt to use residue-free computing mode (or not) used nor learn with whom the user communicated. for any application. Privacy from a knowledgeable forensic investigator: There already exist techniques that achieve some of An investigative journalist enters a border crossing the goals of residue-free computing. For example, the when their computer is seized and imaged. The bor- user can simply run an application in a virtual ma- der crossing agent examines the journalist’s computer chine and use checkpointing to roll back filesystem and to learn what they are investigating. Fortunately, the memory changes after the application exits. Or, the user journalist used ResidueFree to run the VLC media could use a live CD operating system such as The Am- player, so the log of the videos that they viewed (in- nesic Incognito Live System (Tails) [2] that is tailored cluding some interviews streamed from the web) are not to frustrate forensic investigations by preventing traces available to the agent, as they otherwise would have had from being recorded to non-volatile storage. However, ResidueFree not been activated. these solutions incur high usability costs as they require Contributions. In summary, this paper makes the the user to significantly modify their behavior (to the following contributions: point of using an entirely different operating system) in – The design of residue-free computing: a mode of op- order to gain some privacy protections. eration that provides an “incognito mode” for any We present the design and implementation of application; ResidueFree, an instantiation of residue-free comput- – ResidueFree, an open-source implementation of ing that allows users to operate their existing applica- residue-free computing. ResidueFree is available tions (on their existing operating systems) in residue- as free open-source software and is available at free mode. We perform an in-depth forensic investi- https://larkema.github.io/residuefree/; gation in which we examine every persistent file cre- – A study of the residue (i.e., forensic traces) left ated or modified during a run in residue-free mode, by popular applications, and an examination of and find that ResidueFree leaks only minimal infor- how ResidueFree prevents the collection of these mation: namely, that ResidueFree was used. The ap- traces. plication being used and the affected files (both read and modified) are invisible to the forensic examiner. We show through extensive benchmark-based evalu- ation that ResidueFree incurs moderate-to-limited 2 Related Work overhead. Finally, we provide a simple and intuitive in- terface for ResidueFree for the Gnome desktop: users The literature on privacy-enhancing methods of com- run an application in residue-free mode by right-clicking puting is rich and diverse. In this section, we describe the application icon and selecting “Run in Residue- how residue-free computing fits in the context of this Free.” existing literature. Residue-Free Computing 391 Most related to residue-free computing are from traditional files stored on the main filesystem to PrivExec [22] and TpriVexeC [10] which have the containerized filesystems, which themselves are stored shared goal of providing an incognito-like privacy