A web application firewall is an appliance, server plugin, or filter that applies a set of rules to an HTTP conversation.
From owasp:
A web application firewall 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.
A far more detailed description is available at Wikipedia.