Time to dismount the hamster security wheel of pain
Quit patching, build a library
If you're tired of the application security scan-and-patch hamster-wheel-of-pain, then it's time establish just such a library. But what of the classic pain point of actually getting people to use the library, rather than falling back on established practices and techniques? Once you show that using this "secure" approach is the fastest and easiest way to get applications built, you'll see dramatically increased levels of interest in the library.
So how do you create your enterprise security library?
Most organizations need roughly 100 methods across all the different security controls, organized into a simple library. Every organization's library will be a little different, as they each use different platforms, systems, directories, databases and infrastructure.
While many organizations have standardized approaches for authentication, access control, and perhaps logging, most have not created common solutions for critical areas like input validation, encoding, encryption and error handling.
You may be able to search your best applications for these mechanisms and institutionalize them. The best approach is to spend some time designing the API for your organization's security needs, and then implementing the mechanisms.
Assuming your library is critical, you'll want to spend time on design reviews, code reviews, and security testing. Borrowing the "test-first" technique from agile methodologies is a great way to develop a test suite that you can use for regression testing.
Faster, shorter, simpler
Organizations that create a standard security library for developers will experience significant cost savings across the entire software development lifecycle. By simplifying application security, many activities across the lifecycle will take less time and yield better results. For example, security training will be shorter and more focused, security requirements reduced to half their former size, and security design and implementation will be easier. Security testing will become more effective and remediation much simpler.
Application security is getting more complicated every day with increasing connectivity, more mixing of code and data, more parsers, more interpreters, more assets, and more functionality available.
We have to take steps now to simplify the problem. So if you're tired of securing one application at a time, and wrestling with the same vulnerabilities again and again, establishing your organization's standard security library is one of the best things you can do.®
Jeff Williams is the founder and CEO of Aspect Security and the volunteer chair of the Open Web Application Security Project. His latest project is the Enterprise Security API, a free and open set of foundational security building blocks for developers.