Software developers use a large number of open-source components, often oblivious to the security risks they introduce or the vulnerabilities that are later discovered in them.
Sonatype, a company that helps developers manage open-source components across different applications, attempts to solve this long-standing problem with a new version of its Component Lifecycle Management (CLM) product, released Friday.
The use of third-party code components is vital to the increasingly fast-paced software development cycles that exist today, but security experts have long warned about the risks associated with this practice.
There's a reason why "using components with known vulnerabilities" is one of the top 10 most critical Web application security flaws identified by the Open Web Application Security Project (OWASP) -- the problem is pervasive.
Even large software vendors that are more security conscious than others have a hard time tracking and patching their products against vulnerabilities in open-source components.. Earlier this year it took VMware two months to identify which of its products were vulnerable to flaws found in the open-source Apache Struts framework and to issue updates for them.
The critical Heartbleed vulnerability announced in the widely used OpenSSL library in April is the poster child for the kind of security risks associated with third-party code. While many Web servers were patched relatively quickly, the vulnerability also affected mobile applications, networking gear, industrial control systems and even medical devices and some of those are still likely vulnerable.
Software developers have downloaded open-source components around 13 billion times last year, according to Sonatype
The notion of using manual audits, manual approvals and traditional governance to deal with that level of consumption is just impossible, said Wayne Jackson, Sonatype's CEO.
Rather than having developers file electronic forms to request approval for using an open-source component or a particular component version from specialists in different teams of an organization, like security, licensing, architecture or infrastructure, those experts can use the Sonatype CLM to define attributes of acceptability for different application profiles. The product can then use those policies to automatically handle the approval behind the scenes.
The CLM dashboard keeps track of all open-source components used in applications that are in development or in production. It can detect when new components with known vulnerabilities are introduced during any stage of the development cycle -- build, integration, testing or release.
If a new vulnerability is announced in an open-source component that's already being used, the product can immediately flag all applications that contain it and can notify developers and the organization's security specialists. According to Sonatype, the CLM dashboard not only flags vulnerable components, but also suggests alternative versions of those components that are safe to use.
CLM tracks security risks in Java components, but will soon be extended to .NET and NPM (Node Package Manager) components. Support for RubyGems, PyPI (Python Package Index), CPAN (Comprehensive Perl Archive Network) will be added over the coming year.
The rise of agile development and DevOps has put enormous pressure on organizations to deliver quickly, if not continuously, Jackson said. "So, the tools that are used to secure applications, to keep track of what's being used and to govern proper usage, have to also work in real time. That's the most important thing that we've done -- making sure governance and creating secure software is something that can happen at the pace of Agile and DevOps."
Based in Fulton, Maryland, Sonatype specializes in streamlining software development processes through tools that automate repository management, component monitoring, collaboration, licensing policy enforcement and other tasks. Its products are used by large software vendors, as well as banks, credit card firms, aerospace companies and IT equipment vendors.