DocumentCode :
2440851
Title :
WAVES: Automatic Synthesis of Client-Side Validation Code for Web Applications
Author :
Skrupsky, N. ; Monshizadeh, Mehrnoosh ; Bisht, P. ; Hinrichs, T. ; Venkatakrishnan, V.N. ; Zuck, Lenore
Author_Institution :
Dept. of Comput. Sci., Univ. of Illinois at Chicago, Chicago, IL, USA
fYear :
2012
fDate :
14-16 Dec. 2012
Firstpage :
46
Lastpage :
53
Abstract :
The current practice of Web application development treats the client and server components of the application as two separate pieces of software. Each component is written independently, usually in distinct programming languages and development platforms - a process known to be prone to errors when the client and server share application logic. When the client and server are out of sync, an âimpedance mismatchâ occurs, often leading to software vulnerabilities as demonstrated by recent work on parameter tampering. This paper outlines the groundwork for a new software development approach, WAVES, where developers author the server-side application logic and rely on tools to automatically synthesize the corresponding client-side application logic. WAVES employs program analysis techniques to extract a logical specification from the server, from which it synthesizes client code. WAVES also synthesizes interactive client interfaces that include asynchronous callbacks (AJAX) whose performance and coverage rival that of manually written clients while ensuring no new security vulnerabilities are introduced. The effectiveness of WAVES is demonstrated and evaluated on three real-world web applications.
Keywords :
client-server systems; formal specification; interactive systems; program diagnostics; program verification; AJAX; WAVES framework; Web application development; asynchronous callbacks; automatic client-side validation code synthesis; client components; client-side application logic; impedance mismatch; interactive client interface synthesis; logical specification extraction; parameter tampering; program analysis techniques; programming languages; server components; server-side application logic; software development approach; software vulnerabilities;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Cyber Security (CyberSecurity), 2012 International Conference on
Conference_Location :
Washington, DC
Print_ISBN :
978-1-4799-0219-4
Type :
conf
DOI :
10.1109/CyberSecurity.2012.13
Filename :
6542525
Link To Document :
بازگشت