Side-Channel Attack on Web Counteracting Web Malvertising Secure Computing on Hybrid Clouds Secure Web Commerce Mobile Fragmentation |
CNS 1017782: Reining in Side-Channel Information Leaks in the Software-as-a-Service EraIntroductionWith software-as-a-service (SaaS) rapidly becoming mainstream, web applications increasingly substitute for desktop software. A web application is a two-part program, with its components deployed both in the browser and in the web server. The interactions between these two components inevitably reveal the program's internal states to any observer of the communication stream, simply through the pattern of packet lengths and the timing of interactions, even if stream is entirely encrypted. This research reveals that these "side-channel" information leaks are both fundamental and common: a number of popular web applications are found to disclose highly sensitive user data, such as one's family income, health profile, investments and more. This research will develop an in-depth understanding of web applications' side channel vulnerabilities, particularly the design features and domain knowledge that lead to side-channel leaks. Based upon this understanding, new technologies are developed to facilitate the detection and mitigation of the side-channel threats during the development and operation of web applications. These technologies will be made available to users so they can assess their vulnerabilities and to developers so they can reduce the vulnerabilities in the applications they build. The outcomes of the project will contribute to the improvement of privacy protection in the SaaS infrastructure and cloud computing. Related paper
Demo
Source Code of Sidebuster:Here you can download the source code of SideBuster, a tool that helps web developers detect and quantify the information leaks in the web applications they build. The source code includes two components: the first part is for static analysis on a web application's source code, which reports the possible program locations where information could be leaked; the second part does dynamic analysis on these locations and quantifies the information leaks. Click here to download the static analysis part, and here to download the dynamic analysis part. Our tools are built on a set of existing toolkits, so in order to run these analysis tools, you need to download and set up a set of third party libraries, packages, and applications. Following are the instructions. You need to install JDK SE 1.5 and Eclipse. Also our static analysis tool is built on Soot , a Java Bytecode analysis and transformation Framework. We suggest to install the Eclipse Plugin of Soot , as well as the Soot complete package. Our dynamic analysis tool is built on JWebUnit, which you can download here . Please note that our code has been tested on the JWebUnit 2.3 release only. We also give some sample web applications for the testing purpose. They are built on GWT (Google Web Toolkit). With GWT, developers can write Web application with Java, and then transform the code into JSP (server side) and HTML/JavaScript (client side) through GWT compiler. Click here to download an application that simulates the behavior of Tax preparation web applications. This application has also been deployed to Google's AppEngine and can be accessed via this link: http://income-test.appspot.com/ |