Bug bounty programs are all the rage lately, but these vulnerability reward initiatives can cost an organization more than they bargained for if they don't have sufficient software development processes in place.
A new study published today shows the dangers of relying mainly on bug bounties to scare up vulnerabilities in software: nearly 60% of IT decision-makers say they found it's more expensive for them to fix security vulnerabilities outed in bug bounty programs than it is to secure the code during the software development cycle.
The new data, gathered by Wakefield Research and commissioned by software security firm Veracode, found that 44% of the 500 respondents have spent $1 million or more on their bug bounty programs and nearly 80% say organizations with secure application development programs fork out less money on bug bounties than those that don't.
Bug bounty programs are hot among big companies and organizations such as Facebook, Google, Microsoft, the US Department of Defense, and most recently, Apple. Some 36% of the respondents in the Veracode survey say they have invested in a bug bounty program, with 98% of them reporting that they often fix their app bugs via that program.
But three-quarters of those with bug bounties say their organizations lean too heavily on those programs to find bugs; the majority say that most vulnerabilities spotted via bug bounties could have been thwarted beforehand by secure development training and testing.
The survey underscores what many appsec experts preach about bug bounty programs: they are rarely an all-or-nothing strategy for securing applications.
Chris Wysopal, co-founder and CTO of Veracode, says it makes sense that it's cheaper to spot flaws in the development phase rather than when software is in production. "Seventy-nine percent said appsec in the software development cycle lowers bug bounty spending. I truly believe that, and it's interesting to see that [these organizations] also understand that," Wysopal says.
"You don't just want to do a bug bounty program," he says. In addition to having a development program that emphasizes secure coding, organizations also should conduct internal testing before releasing code to bug bounty hackers.
"Run a baseline test on a few apps before opening them to the bug bounty world," he says. "If you find cross-site scripting and SQL injection, those are easy issues for bug bounty researchers to find and you can find them right away" beforehand, he says. Flaws in the business logic and authorization categories, for instance, are typically found via manual testing.
Bug bounty expert Katie Moussouris, who helped launch the DoD's Hack The Pentagon program earlier last year, says launching a bug bounty program prematurely can backfire.
"Before you run a marathon on a bug bounty program, you need to do the training of vulnerability discovery," she says. "It doesn't make sense to start out with a bug bounty program."
The exception would be a small startup company with a single app that's simultaneously building a secure development program, for instance, says Moussouris, who recently founded Luta Security, a consulting firm that helps organizations work with security researchers.
She says it's not unusual for an organization to pursue a bug bounty program because they believe it's more cost-effective than penetrating testing or buying expensive vulnerability testing tools that require training as well. "If you don't have the security basics in the first place, you'll be quickly overwhelmed with low-hanging fruit [vulnerability] issues. The triage alone will easily overwhelm their resources," she says.
"If you're doing bug hunting and not trying to write secure code, you're missing the point. Everyone should be doing secure development," Moussouris says.
It's a balance between proactive testing and bug bounty programs, Veracode's Wysopal notes. With bug bounties, "Don't go into it blind," he advises.