Difference between revisions of "Web Application Firewall"

From OWASP
Jump to: navigation, search
(Clearing up clutter)
 
(55 intermediate revisions by 27 users not shown)
Line 1: Line 1:
{{Template:Countermeasure}}
+
=Description=
 +
A '''web application firewall (WAF)''' is an [https://en.wikipedia.org/wiki/Application_firewall application firewall] for HTTP applications. It applies a set of rules to an HTTP conversation. Generally, these rules cover common attacks such as [[Cross-site Scripting (XSS)|cross-site scripting (XSS)]] and [[SQL Injection|SQL injection]].
  
==Description==
+
While proxies generally protect clients, WAFs protect servers. A WAF is deployed to protect a specific web application or set of web applications. A WAF can be considered a [https://en.wikipedia.org/wiki/Reverse_proxy reverse proxy].
  
A web application firewall (WAF) is an appliance, server plugin, or filter that applies a set of rules to an HTTP conversation. Generally, these rules cover common attacks such as [[Cross-site Scripting (XSS)]] and [[SQL Injection]]. By customizing the rules to your application, many attacks can be identified and blocked. The effort to perform this customization can be significant and needs to be maintained as the application is modified.
+
WAFs may come in the form of an appliance, server plugin, or filter, and may be customized to an application. The effort to perform this customization can be significant and needs to be maintained as the application is modified.
  
A far more detailed description is available at [http://en.wikipedia.org/wiki/Application_firewall Wikipedia]
+
= OWASP Projects =
 +
* The [https://www.owasp.org/index.php/Category:OWASP_ModSecurity_Core_Rule_Set_Project OWASP ModSecurity CRS Project's] goal is to provide an easily "pluggable" set of generic attack detection rules that provide a base level of protection for any web application.
 +
* Consider the [https://www.owasp.org/index.php/WASC_OWASP_Web_Application_Firewall_Evaluation_Criteria_Project Web Application Firewall Evaluation Criteria Project (WAFEC)] to help evaluate commercial and open source web application firewalls.
 +
 +
= References  =
 +
* https://en.wikipedia.org/wiki/Web_application_firewall
  
==Strengths and Weaknesses==
+
[[Category: OWASP WAF]]
 
 
==Important Selection Criteria==
 
 
 
* Very Few False Positives (i.e., should NEVER dissallow an authorized request)
 
* Strength of Default (Out of the Box) Defenses
 
* Power and Ease of Learn Mode
 
* Types of Vulnerabilities it can prevent
 
* Ability to keep individual users constrained to exactly what they have seen in the current session
 
* Ability to be configured to prevent ANY specific problem (i.e., Emergency Patches)
 
* Form Factor: Software vs. Hardware (Hardware generally preferred)
 
 
 
 
 
You may also use [https://www.owasp.org/index.php/Category:OWASP_Best_Practices:_Use_of_Web_Application_Firewalls Best Paractices: Use of Web Application Firewalls] to find out where and when to use a WAF and/or you may find
 
the [http://www.webappsec.org/projects/wafec/ Web Application Firewall Evaluation Criteria] useful for evaluating the performance and other characteristics of a WAF.
 
 
 
The [[London Chapter WAF event]] held in 2006 has some comparative info amongst the WAF Vendors that participated in the event.
 
 
 
==OWASP Tools Of This Type==
 
 
 
The [http://www.owasp.org/index.php/Category:OWASP_Stinger_Project OWASP Stinger Project] is not a full blown WAF, but it is a strong Java/J2EE input validation filter that can be put in front of your application.
 
 
 
==Well Known Open Source Tools Of This Type==
 
 
 
* [http://www.aqtronix.com/?PageID=99 AQTronix - WebKnight]
 
* [http://www.modsecurity.org/ Breach - ModSecurity]
 
 
 
==Commercial Tools from OWASP Members Of This Type==
 
 
 
These vendors have decided to support OWASP by becoming [[Membership|members]]. OWASP appreciates the support from these organizations, but cannot endorse any commercial products or services.
 
 
 
* [http://www.artofdefence.com/en/hyperguard/hyperguard.html art of defence - hyperguard]
 
* [http://www.breach.com Breach - WebDefend]
 
* [http://www.denyall.com/produits.html?set_lang=en Deny All - rWeb]
 
* [http://fortifysoftware.com/products/defender/ Fortify Software - Defender]
 
* [http://www.imperva.com/products/securesphere/web_application_firewall.html Imperva - SecureSphere™]
 
 
 
==Other Well Known Commercial Tools Of This Type==
 
 
 
* [http://www.applicure.com Applicure - DotDefender]
 
* [http://www.armorlogic.com/ Armorlogic - Profense]
 
* [http://www.barracudanetworks.com/ns/products/web-application-controller-overview.php Barracuda Networks - Application Firewall]
 
* [http://www.bee-ware.net/en/product/i-sentry/ Bee-Ware - iSentry]
 
* [http://binarysec.com/ BinarySec - Application Firewall]
 
* [http://www.bugsec.com/index.php?q=WebSniper BugSec - WebSniper]
 
* [http://www.cisco.com/en/US/products/ps9586/index.html Cisco - ACE Web Application Firewall]
 
* [http://www.citrix.com/English/ps2/products/product.asp?contentID=25636 Citrix - Application Firewall]
 
* [http://www.eeye.com/html/products/secureiis/index.html eEye Digital Security - SecureIIS]
 
* [http://www.f5.com/products/big-ip/product-modules/application-security-manager.html F5 - Application Security Manager]
 
* [http://forumsys.com/ Forum Systems - Xwall, Sentry]
 
* [http://www.webscurity.com/products.htm mWEbscurity - webApp.secure]
 
* [http://www.phion.com/INT/products/websecurity/Pages/default.aspx Phion / Visonys - Airlock]
 
* [http://www.protegrity.com/WebApplicationFirewall Protegrity - Defiance TMS  - Web Application Firewall]
 
* [http://www.xtradyne.com/ Xtradyne - Application Firewalls]
 
 
 
==Related Threats==
 
 
 
==Related Attacks==
 
 
 
==Related Vulnerabilities==
 
 
 
==Related Countermeasures==
 
 
 
[[Category: Control]]
 

Latest revision as of 18:33, 18 October 2016

Description

A web application firewall (WAF) is an application firewall for HTTP applications. It applies a set of rules to an HTTP conversation. Generally, these rules cover common attacks such as cross-site scripting (XSS) and SQL injection.

While proxies generally protect clients, WAFs protect servers. A WAF is deployed to protect a specific web application or set of web applications. A WAF can be considered a reverse proxy.

WAFs may come in the form of an appliance, server plugin, or filter, and may be customized to an application. The effort to perform this customization can be significant and needs to be maintained as the application is modified.

OWASP Projects

References