One of the new features available in Stinger 2.0 is the ability to apply a negative security model on top of a positive security model. There are cases when the positive model becomes too open and a negative security model is necessary. The OWASP Stinger Project is in need of regular expressions which can be used to thwart potential input validation attacks, such as cross site scripting and SQL Injection. One such example would look for the words ''document.cookie''in the parameter value. This obvious cross site scripting attack would then be caught by the negative security model and the appropriate action(s) taken place. If you have any regular expressions which you would like to donate to the OWASP Validation Project, please contact [mailto:eric.sheridan@owasp.org Eric Sheridan].

One of the new features available in Stinger 2.0 is the ability to apply a negative security model on top of a positive security model. There are cases when the positive model becomes too open and a negative security model is necessary. The OWASP Stinger Project is in need of regular expressions which can be used to thwart potential input validation attacks, such as cross site scripting and SQL Injection. One such example would look for the words ''document.cookie''in the parameter value. This obvious cross site scripting attack would then be caught by the negative security model and the appropriate action(s) taken place. If you have any regular expressions which you would like to donate to the OWASP Validation Project, please contact [mailto:eric.sheridan@owasp.org Eric Sheridan].

Revision as of 15:42, 22 September 2006

Overview

Most web application platforms do not include features to validate user input. This leaves many organizations to craft their own validation mechanisms, often incomplete, flawed, and inefficient.

The OWASP Validation Project was created to provide guidance and tools related to validation. Our philosophy is that validation is required for every part of the HTTP request, including headers, query string, cookies, form fields, and hidden fields.

Currently, there are several projects underway to create validation technologies for various platforms. The long term goal is to provide a detailed guide for implementing proper input validation as well as provide validation engines for popular web application environments.

The OWASP Validation Project was created by Jeff Williams and is currently maintained by Eric Sheridan.

Feedback and Participation:

We hope you find the OWASP Validation Project useful. Please contribute to the Project by volunteering for one of the Tasks, sending your comments, questions, and suggestions to owasp@owasp.org. To join the OWASP Validation Project mailing list or view the archives, please visit the subscription page.

News

One of the new features available in Stinger 2.0 is the ability to apply a negative security model on top of a positive security model. There are cases when the positive model becomes too open and a negative security model is necessary. The OWASP Stinger Project is in need of regular expressions which can be used to thwart potential input validation attacks, such as cross site scripting and SQL Injection. One such example would look for the words document.cookiein the parameter value. This obvious cross site scripting attack would then be caught by the negative security model and the appropriate action(s) taken place. If you have any regular expressions which you would like to donate to the OWASP Validation Project, please contact Eric Sheridan.

In an attempt to fully open the validation documentation to the OWASP community, the paper will now be maintained via Mediawiki. The online version of the validation documentation can be found here. We encourage contributions and edits. We will periodically build word document version of the validation documentation when appropriate.

Announcing Minor Releases for both Stinger and the Validation Documentation - 11:15, 14 August 2006 (EDT)

The OWASP Validation Project is pleased to announce the immediate availability of Stinger 2.0 Beta I as well as a rough draft of the OWASP Validation Documentation. Both projects are the result of a tireless effort to provide a clear and defined process of implementing input validation in web applications. The Validation Project would like to thank everyone for their continuing support. More information on can be found at the Stinger project page and the OWASP Validation Documentation project page.

Note: These projects are still in the development stage. Testing and feedback would be greatly appreciated!

Fortify software as graciously donated a comprehensive set of software security research material to OWASP. The research material provides an in-depth analysis of 115 software vulnerabilities which can be found at the OWASP Honeycomb Project homepage. The category of particular interest is, of course, the Input Validation Vulnerability. The OWASP Community is strongly encouraged to donate to this milestone project. Once the current set of projects is completed, it is the goal of the OWASP Validation Project to contribute to the vast and quickly growing OWASP Honeycomb Project.

OWASP Validation Documentation Delayed - 09:07, 23 July 2006 (EDT)

Unfortunately, the OWASP Validation Documentation has been delayed for roughly a week. The good news, however, is the reason for the delay. A new project, entitled Poseidon, is currently in development. Poseidon will greatly simplify the generation of an SVDL file through the use of your own web based application! Look for a rough draft of the validation documentation near the end of the week.

Project Stinger 2.0 is Underway! - 11:44, 10 July 2006 (EDT)

One of the goals of the OWASP Validation Project is updating and improving the Java validation engine, Stinger. This update will include the many submitted ideas/patches over the past several years on top of a completely rewritten engine. If you have any ideas/patches that you would like to have reviewed for submission, please contact Eric Sheridan.

OWASP Validation Finds a New Project Lead - 11:44, 10 July 2006 (EDT)

Thanks to Jeff Williams, Eric Sheridan is now the lead of the OWASP Validation Project. The project will be moving forward in the next few weeks. Refer to the road map for short term goals and deadlines. Stay tuned!

Project Roadmap

The three major goals of the OWASP Validation Project are the following:

build an input validation guide

provide and implement input validation mechanisms for various platforms

Guide to Building Input Validation

One of the major goals of the OWASP Validation Project is to provide clear and detailed documentation on building input validation mechanisms for your web application needs. In the near future, this section will contain such documentation. Check back soon!

Implementation

The second major goal of the OWASP Validation Project is to provide input validation mechanisms which adhere to one or more of the design principals outlined in the 'Input Validation Guide'. If you have a project which fits this requirement, please submit it via email to the project lead.

OWASP Validation Documentation

The primary purpose of the OWASP Validation Documentation project is to provide the design principals necessary to build an effective input validation engine. More can be found here.

.NET

One of the goals of the OWASP Validation Project is to implement Stinger 2.0 on the .NET platform.

If you are interested in leading this project, please contact Eric Sheridan.

Please refer to the project road map for an estimated time of arrival.

PHP

The PHP Filters Project provides an API framework for validating input for various purposes. The project can be found here.

OWASP Recently released the OWASP Top 5, an article illustrating several attack vectors against PHP applications.

The majority of the PHP Top 5 can be alleviated with a solid and well defined validation mechanism.

RegEx Repository

The OWASP RegEx Repository contains a multitude of regular expressions for common data types. Developers implementing input validation engines should review these regular expressions. Save the time of developing a complicated regular expression that currently exists!