When a website is attacked, the results can be devastating to an organization -- both financially and from a brand perspective. Given modern society's ever-increasing reliance on the Web, the impact of a breach and the associated costs are going up, and fast. Adding more "robust" firewalls or allocating more budget to anti-virus protection is not the answer. It's still an important step, sure, but these controls provide nearly zero protection against today's web-based attacks.
Today's focus, and what many IT and security professionals are recognizing, is that there is a much bigger software security problem at play here. Therefore, what is needed is more secure software, NOT more security software.
In a recent survey of some of these forward-thinking security professionals at a cross section of industries -- spanning banking and financial, to retail and entertainment, to healthcare and media organizations and more -- we discovered that achieving the right balance between best practices and accountability, can make a huge difference in moving the needle at their own organizations toward more secure software, rather than strictly focusing on buying more security software.
Let's take a look at best practices first. If the goal is to create more secure software, reason dictates that developer training and testing early in the software development lifecycle would be a natural approach to the problem. Looking at our data, we found:
- 57 percent of organizations said they provide some amount of instructor-led or computer-based software security training for their programmers. These organizations experienced 40 percent fewer vulnerabilities, resolved them 59 percent faster, but exhibited a 12 percent lower remediation rate.
This appears to prove our theory at least partially correct. However, taking this one level deeper beyond training, when we looked into measures taken to test applications prior to putting them into production, we found that while many organizations (85 percent of those surveyed, in fact) said they perform some amount of application security testing in pre- production website environments (i.e. staging, QA or other pre-prod systems), only 39 percent perform testing earlier in the life cycle of the development process and perform any Static Code Analysis. Surprisingly, these organizations experienced 15 percent more vulnerabilities, resolved them 26 percent slower, and had a 4 percent lower remediation rate.
So why is it that those performing SCA early in the process are seeing an increase in vulnerabilities? This is certainly counter to our theory. Why is it that for some customers, there is absolutely a measureable, positive impact, yet for others there is no discernible benefit? Perhaps it is such that developers do not understand the issues well enough and as such would require additional training in order to understand what needs fixing and how. Or it could be that developers are often reassigned to other tasks (building product features, etc.) rather than fix vulnerabilities. There are a number of possible reasons; however, we believe that the reason for this difference is that there are in fact few, if any, truly universal application best-practices.
We also wanted to know which parts of the organization are held accountable in the event of a website data or system breach. By analyzing our survey data, we see evidence of a direct correlation between increased accountability and decreased breaches, and of the efficacy of "best-practices" and security controls.
For example, if developers are required by compliance to attend security training -- both of which are 'best practices' -- they'll view it as something they "have to do" and not internalize much of anything they've learned in training. However, if the organization places accountability on developers should a breach occur, all of(a sudden training effectiveness increases, because now there is an obvious incentive to learn. For security to really improve, some part of the organization must be held accountable, and this seems to be proven by our data. When asked specifically about accountability within their departments and how it relates to breach occurrence, we found:
In software development, if some team or member within the organization was held accountable, 71 percnet had no breach, while only 24 percent said there was.
Each part of the organization, including the executive management and board of directors, showed similar results. This leads one to believe that accountability matters a great deal and furthermore, when you empower those who are also accountable, whatever best-practices are then put into place have a higher likelihood of being effective. The hope is that more organizations will start recognizing the critical need to find this balance between accountability and best practices, and in turn this will lead to the creation of more secure software, earlier in the lifecycle of the business so IT staff is not waiting until a breach or other catastrophic event occurs.
Jeremiah Grossman founded WhiteHat Security in August 2001 and currently serves as Chief Technology Officer. A more detailed version of this piece will be presented at AppSec USA, Nov. 18-21, NYC. Tickets are going fast.
This story, "Web app security best practices and the people who love them" was originally published by CSO.