WAVES: Automatic Synthesis of Client-Side Validation Code for Web Applications

Nazari Skrupsky, M. Monshizadeh, Prithvi Bisht, Timothy L. Hinrichs, V. Venkatakrishnan, L. Zuck
{"title":"WAVES: Automatic Synthesis of Client-Side Validation Code for Web Applications","authors":"Nazari Skrupsky, M. Monshizadeh, Prithvi Bisht, Timothy L. Hinrichs, V. Venkatakrishnan, L. Zuck","doi":"10.1109/CyberSecurity.2012.13","DOIUrl":null,"url":null,"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.","PeriodicalId":162858,"journal":{"name":"2012 International Conference on Cyber Security","volume":"9 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2012-12-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"8","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2012 International Conference on Cyber Security","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/CyberSecurity.2012.13","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 8

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.
为Web应用程序自动合成客户端验证代码
当前的Web应用程序开发实践将应用程序的客户机和服务器组件视为两个独立的软件部分。每个组件都是独立编写的,通常使用不同的编程语言和开发平台——当客户机和服务器共享应用程序逻辑时,这个过程很容易出错。当客户端和服务器不同步时,会发生阻抗不匹配,这通常会导致软件漏洞,正如最近在参数篡改方面的工作所证明的那样。本文概述了一种新的软件开发方法WAVES的基础,在这种方法中,开发人员编写服务器端应用程序逻辑,并依靠工具自动合成相应的客户端应用程序逻辑。WAVES使用程序分析技术从服务器提取逻辑规范,并以此合成客户端代码。WAVES还综合了交互式客户端接口,其中包括异步回调(AJAX),其性能和覆盖范围可与手动编写的客户端相媲美,同时确保不会引入新的安全漏洞。WAVES的有效性在三个真实的web应用程序中进行了演示和评估。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信