TU Darmstadt / ULB / TUbiblio

Systematic Black-Box Analysis of Collaborative Web Applications

Billes, Marina and Møller, Anders and Pradel, Michael (2017):
Systematic Black-Box Analysis of Collaborative Web Applications.
In: PLDI '17 ACM SIGPLAN Conference on Programming Language Design and Implementation, ACM New York, NY, USA, Barcelona, Spain, ISBN 978-1-4503-4988-8,
DOI: 10.1145/3062341.3062363,
[Conference or Workshop Item]

Abstract

Web applications, such as collaborative editors that allow multiple clients to concurrently interact on a shared resource, are difficult to implement correctly. Existing techniques for analyzing concurrent software do not scale to such complex systems or do not consider multiple interacting clients. This paper presents Simian, the first fully automated technique for systematically analyzing multi-client web applications. Naively exploring all possible interactions between a set of clients of such applications is practically infeasible. Simian scales to real-world applications by using a twophase black-box approach. The first phase systematically explores the application with a single client to infer potential conflicts between client events. The second phase synthesizes multi-client interactions targeted at triggering misbehavior that may result from the potential conflicts, and reports an inconsistency if the clients do not converge to a consistent state. We evaluate the analysis on three widely used systems, Google Docs, Firepad, and ownCloud Documents, where it reports a variety of inconsistencies, such as incorrect formatting and misplaced text fragments. Moreover, we find that the two-phase approach runs 10x faster than exhaustive exploration, making systematic analysis feasible.

Item Type: Conference or Workshop Item
Erschienen: 2017
Creators: Billes, Marina and Møller, Anders and Pradel, Michael
Title: Systematic Black-Box Analysis of Collaborative Web Applications
Language: English
Abstract:

Web applications, such as collaborative editors that allow multiple clients to concurrently interact on a shared resource, are difficult to implement correctly. Existing techniques for analyzing concurrent software do not scale to such complex systems or do not consider multiple interacting clients. This paper presents Simian, the first fully automated technique for systematically analyzing multi-client web applications. Naively exploring all possible interactions between a set of clients of such applications is practically infeasible. Simian scales to real-world applications by using a twophase black-box approach. The first phase systematically explores the application with a single client to infer potential conflicts between client events. The second phase synthesizes multi-client interactions targeted at triggering misbehavior that may result from the potential conflicts, and reports an inconsistency if the clients do not converge to a consistent state. We evaluate the analysis on three widely used systems, Google Docs, Firepad, and ownCloud Documents, where it reports a variety of inconsistencies, such as incorrect formatting and misplaced text fragments. Moreover, we find that the two-phase approach runs 10x faster than exhaustive exploration, making systematic analysis feasible.

Title of Book: PLDI '17 ACM SIGPLAN Conference on Programming Language Design and Implementation
Publisher: ACM New York, NY, USA
ISBN: 978-1-4503-4988-8
Uncontrolled Keywords: Testing, collaborative editing, dynamic analysis
Divisions: Profile Areas
Profile Areas > Cybersecurity (CYSEC)
Event Location: Barcelona, Spain
Date Deposited: 07 Aug 2017 14:04
DOI: 10.1145/3062341.3062363
Identification Number: TUD-CS-2017-0214
Export:
Suche nach Titel in: TUfind oder in Google

Optionen (nur für Redakteure)

View Item View Item