In modern software development organizations, however, no such system exists. Almost every commercial software application makes use of open source and proprietary components sold by third-party firms, but software firms may have a cursory notion of the quality and origin of all that code. Often, the reach and impact of vulnerabilities become known only after disaster strikes.
In the case of Shellshock, for example, the code in question dated back to 1989 and impacted a wide range of applications — from CGI-based Web servers to Qmail email servers to certain DHCP clients. Attacks against the vulnerability began within hours of its disclosure.
Following the leaders
Orphan projects and lax inspection should not obscure that some leading lights in the industry are well along the virtuous path to secure code.
Commercial Linux firms like Canonical, Red Hat, and Google already invest heavily in the security and integrity of open source. Wealthy, open-source-friendly firms such as Netflix and Facebook have directed considerable resources to projects that improve open source quality as well.
At Mozilla, responsibility for security is split among three teams, according to Engineering Manager Jason Duell. One team triages security issues as they're discovered. A second does "fuzzing" (black box testing of compiled code) to find vulnerabilities, and a third team develops such security and privacy features as Mozilla's Content Security Policy.
Duell says that fuzzing and rigorous testing of developed code has been a mainstay of Mozilla's development culture since before he arrived six years ago. But Mozilla has changed other development practices as awareness of the threat to open source has grown.
"We've changed various practices to be inline with the fact that adversaries are watching our public source repository for commits," Duell says. For one, security fixes to Mozilla code are coordinated to land prior to release to give attackers a smaller window to work with. Large new features get security team audits prior to release.
At Canonical, which makes Ubuntu Linux, a fast-growing security team audits Canonical's code — a total of 35,000 software packages that are released as part of Ubuntu through a variety of channels, according to Dustin Kirkland, Canonical's Cloud Solutions Product Manager.
As with Mozilla, Canonical's security operations span a number of different initiatives, from feature development to code audits. To Corman's point, Kirkland says that supply chain risk is a major concern. Canonical devotes considerable resources to assessing the viability of open source components that are bundled with its core operating system.
"With open source technology, we're looking at whether it's better to adopt it or to fork it, then develop and extend it," said Kirkland, who is a 20-year open source veteran and distribution maintainer of more than 20 open source projects. The company has come under fire from within the open source community when it opts to fork existing open source code, but Kirkland cites the ability to fork as one of open source's strengths.
Sign up for CIO Asia eNewsletters.