@conference {655234,
	title = {Oblique: Accelerating Page Loads Using Symbolic Execution},
	booktitle = {NSDI},
	year = {2021},
	abstract = {
	\&nbsp;



	\&nbsp;



	Mobile devices are often stuck behind high-latency links. Unfortunately for mobile browsers, latency (not bandwidth) is often the key influence on page load time. Proxy-based web accelerators hide last-mile latency by analyzing a page{\textquoteright}s content, and informing clients about useful objects to prefetch. However, most accelerators require content providers to divulge cleartext HTTPS data to third-party analysis servers. Acceleration systems can be installed on first-party web servers, avoiding the violation of end-to-end TLS security; however, due to the administrative overhead (and additional VM costs) associated with running an accelerator, many first-party content providers would prefer to outsource the acceleration work{\textemdash}if outsourcing could be secure.



	In this paper, we introduce Oblique, a third-party web accelerator which enables secure outsourcing of page analysis. Oblique symbolically executes the client-side of a page load, generating a prefetch list of symbolic URLs. Each symbolic URL describes a URL that a client browser should fetch, given user-specific values for cookies, the User-Agent string, and other sensitive variables. Those sensitive values are never revealed to Oblique{\textquoteright}s analysis server. Instead, during a real page load, the user{\textquoteright}s browser concretizes URLs by reading sensitive local state; the browser can then prefetch the associated objects. Experiments involving real sites demonstrate that Oblique preserves TLS integrity while providing faster page loads than state-of-the-art accelerators. For popular sites, Oblique is also financially cheaper in terms of VM costs.



	\&nbsp;



	\&nbsp;

},
	url = {https://mickens.seas.harvard.edu/files/mickens/files/oblique.pdf},
	author = {Ronny Ko and Blake Loring and Ravi Netravali and James Mickens}
}
