In 2012, for example, poor input validation for databases put SQL injection on top of the short list of vulnerability-related attacks, with the three largest breaches compromising nearly 20 million records, according to the State of Software Security Report released annually by application-security firm Veracode. While the tools are available to solve the problems, developers are still focused on features over security.
Part of the problem is the lack of necessary security expertise. Without a focus on security, developers are hard-pressed to find and close the vulnerabilities in their code, says Brian Mizelle, vice president of operations at Cigital, a vulnerability software and service provider.
"What we are finding in the market is that vulnerabilities are piling up, and no one is able to bring that queue down," Mizelle says. "This is all about fixing them, verifying them, and getting the cycle going again, so companies are not piling on vulnerability after vulnerability, with the same ones showing up every time they test their code."
A number of companies are trying to solve the problem by offering automated static-code checking and dynamic vulnerability scanning as cloud services. Last week, code-security firm Cigital, for example, released details of two security services that allow companies to check their code for security flaws using either static or dynamic analysis. Veracode and Cenzic are two other firms that have offered similar services. The services range from a simple automated scan of a Web application to additional consulting services to explain the results and help developers close the security holes.
"You have to worry about not just testing, but fixing," says Chris Wysopal, chief technology officer for Veracode. "It is very difficult to find skilled application security people. That's one reason why going to a service provider scales better."
[A network scanner that can survey the Internet in less than an hour will make it easier for research groups to expose vulnerabilities on the Internet. See Fast Scanning To Fuel 'Golden Age' Of Global Flaw Finding.]
When looking for an application assessment service, companies should consider what vulnerabilities the service can detect. The OWASP Top-10 list of Web application vulnerabilities and SANS Top 25 Most Dangerous Software Errors are good starting points, but companies should look for deeper scans as well. In addition, the service should recommend strategies for fixing the problems and methods of avoiding the issues in the future, says Bala Venkat, chief marketing officer for Cenzic, a software security firm.
"You really need to have a metric showing the level of security or the level of vulnerability that the application has," he says. "You can track that and tell them why they have that score and how they go about addressing those vulnerabilities."
Companies also need to ask questions about how far the software-analysis service can scale, and whether the turnaround time on tests satisfy their software development life cycle, Venkat says. In addition, firms should ask the service provider how they minimize false positives.
Finally, the service's ability to give clients the benefit of their security expertise is key. Most services have a number of levels: a basic cloud service that includes an automated application scan, and more involved services, which include meetings with the developers to explain the vulnerabilities and teach them how to avoid such mistakes in the future.
"The offering has to be based on the risk profile of the customer," Cigital's Mizelle says. "You don't want to be overpaying for something that you are not going to use."
Have a comment on this story? Please click "Add Your Comment" below. If you'd like to contact Dark Reading's editors directly, send us a message.