Home Page
Resources
Secure Your Web Applications
Get A Free Trial Request Information
Start Resources Research
Get A Free Trial
Sign Up for a Free Trial
Request Information
Easily and quickly send a message to Armorize
Resource Center
Access the Armorize Resource Center
Academic Publications
Web Application Security Assessment by Fault Injection and Behavior Monitoring
As a large and complex application platform, the World Wide Web is capable of delivering a broad range of sophisticated applications. However, many Web applications go through rapid development phases with extremely short turnaround time, making it difficult to eliminate vulnerabilities.
Here we analyze the design of Web application security assessment mechanisms in order to identify poor coding practices that render Web applications vulnerable to attacks such as SQL injection and cross-site scripting. We describe the use of a number of softwaretesting techniques (including dynamic analysis, black-box testing, fault injection, and behavior monitoring), and suggest mechanisms for applying these techniques to Web applications. Real-world situations are used to test a tool we named the Web Application Vulnerability and Error Scanner (WAVES, an opensource project available at http://waves.sourceforge.net) and to compare it with other tools. Our results show that WAVES is a feasible platform for assessing Web application security. | ...
Download the Paper (PDF) | Login Required | Register here
Web Application Security Assessment by Fault Injection and Behavior Monitoring
A Testing Framework for Web Application Security Assessment
The rapid development phases and extremely short turnaround time of Web applications make it difficult to eliminate their vulnerabilities.
Here we study how software testing techniques such as fault injection and runtime monitoring can be applied to Web applications. We implemented our proposed mechanisms in the Web Application Vulnerability and Error Scanner (WAVES) - a black-box testing framework for automated Web application security assessment. Real-world situations are used to test WAVES and to compare it with other tools.
Our results show that WAVES is a feasible platform for assessing Web application security. © 2005 Elsevier B.V. All rights reserved. | ...
Download the Paper (PDF) | Login Required | Register here
A Testing Framework for Web Application Security Assessment
Non-Detrimental Web Application Security Scanning
The World Wide Web has become a sophisticated platform capable of delivering a broad range of applications. However, its rapid growth has resulted in numerous security problems that current technologies cannot address. Researchers from both academic and private sector are devoting a considerable amount of resources to the development of Web application security scanners (i.e., automated software testing platforms for Web application security auditing) with some success. However, little is known about their potential side effects.
It is possible for an auditing process to induce permanent changes in an application's state. Due to this potential, we have so far avoided large-scale empirical evaluations of our Web Application Vulnerability and Error Scanner (WAVES).
In this paper we introduce a testing methodology that allows for harmless auditing, define three testing modes-heavy, relaxed, and safe modes, and report our results from two experiments. In the first, we compared the coverage and side effects of the three scanning modes using 5 real-world Web applications chosen from the 38 found vulnerable in a previous static verification effort. In the second, we used the relaxed mode to conduct a 48-hour test involving 1120 random websites, of which 55 were found to be vulnerable. | ...
Download the Paper (PDF) | Login Required | Register here
Non-Detrimental Web Application Security Scanning
Securing Web Application Code by Static Analysis and Runtime Protection
Security remains a major roadblock to universal acceptance of the Web for many kinds of transactions, especially since the recent sharp increase in remotely exploitable vulnerabilities has been attributed to Web application bugs. Many verification tools are discovering previously unknown vulnerabilities in legacy C programs, raising hopes that the same success can be achieved with Web applications.
In this paper, we describe a sound and holistic approach to ensuring Web application security. Viewing Web application vulnerabilities as a secure information flow problem, we created a lattice-based static analysis algorithm derived from type systems and typestate, and addressed its soundness. During the analysis, sections of code considered vulnerable are instrumented with runtime guards, thus securing Web applications in the absence of user intervention.
With sufficient annotations, runtime overhead can be reduced to zero. We also created a tool named WebSSARI (Web application Security by Static Analysis and Runtime Inspection) to test our algorithm, and used it to verify 230 open-source Web application projects on SourceForge.net, which were selected to represent projects of different maturity, popularity, and scale. 69 contained vulnerabilities and their developers were notified.
38 projects acknowledged our findings and stated their plans to provide patches. Our statistics also show that static analysis reduced potential runtime overhead by 98.4%.
Download the Paper (PDF) | Login Required | Register here
Securing Web Application Code by Static Analysis and Runtime Protection
Verifying Web Applications Using Bounded Model Checking
The authors describe the use of bounded model checking (BMC) for verifying Web application code.
Vulnerable sections of code are patched automatically with runtime guards, allowing both verification and assurance to occur without user intervention. Model checking techniques have relatively complexity compared to the typestate-based polynomial-time algorithm (TS) we adopted in an earlier paper, but they offer three benefits—they provide counterexamples, more precise models, and sound and complete verification.
Compared to conventional model checking techniques, BMC offers a more practical approach to verifying programs containing large numbers of variables, but requires fixed program diameters to be complete.
Formalizing Web application vulnerabilities as a secure information flow problem with fixed diameter allows for BMC application without drawback. Using BMC-produced counterexamples, errors that result from propagations of the same initial error can be reported as a single group rather than individually.
Download the Paper (PDF) | Login Required | Register here
Verifying Web Applications Using Bounded Model Checking
Armorize Technologies Inc. © 2005-2010 | About | Contact | Privacy Policy | Black Style | Silver Style