The open-source ESAPI WAF is a departure from commercial, network-based firewalls, as well as ModSecurity's free WAF, says Arshan Dabirsiaghi, developer of the ESAPI WAF and director of research for Aspect Security. Dabirsiaghi will roll out the WAF at the OWASP Conference in Washington, D.C., in November.
"WAFs today are deployed as appliances meant to protect a suite of applications. They're kind of part of your network and not part of your application," Dabirsiaghi says. "This is really an application-layer WAF rather than a network or appliance-layer WAF...it lives inside your application so you have a lot more control as an application owner [who's] enforcing rules."
The ESAPI WAF isn't the first open-source (or free) WAF: ModSecurity, which is also a software-based WAF, was one of the first freebies. The ModSecurity WAF, which is an Apache module, runs outside the application on the server.
Dabirsiaghi says the Java-based ESAPI WAF is all about making it easier and cheaper to deploy a WAF, which can cost up to $200,000 to deploy in a commercial product, he says. "The whole point of a WAF is a short- to medium-term patching solution," he says. "Long-term, you want secure code. We want to give you a bridge between that gap when a vulnerability is exploited."
This puts the WAF in the hands of the application team rather than the network or security team. "I think it's better to decentralize that and have everyone maintain their own WAF," Dabirsiaghi says. "Application owners are hopefully discovering their own vulnerabilities, so the time to protection should be much shorter [for patching them]."
There are advantages and trade-offs with both the network and application-based WAF approaches, however. "From an operational perspective, a network device can be deployed without changing a standard system configuration. On the other hand, you have another physical device to manage -- and possibly fail, unlike software on the Web server," says Jeremiah Grossman, CTO of WhiteHat Security. "Also, network devices have to terminate SSL if the site uses SSL, while software WAFs do not."
Dabirsiaghi maintains that the application-resident WAF makes it easier to fix and stop nagging Web application security problems, such as business logic flaws. "If you have a WAF appliance that sits in front of a few different applications, there's a distance between you and the apps," Dabirsiaghi says. "Because the ESAPI WAF lives inside the app, it's easier to stop those types of flaws."
Among some of the features in the new WAF are egress/outbound filtering to help stop information-leakages vulnerabilities and cross-site scripting, he says.
Dabirsiaghi says the WAF simplifies things, such as adding an Internet Explorer 8 header for preventing clickjacking. "With a WAF in place, you open up a text file, add one line, and you're done. It's all configuration-driven versus code driven," he says.
But the ESAPI WAF doesn't detect new vulnerabilities. "This is not about preventing unknown vulnerabilities," he says.
Have a comment on this story? Please click "Discuss" below. If you'd like to contact Dark Reading's editors directly, send us a message.