Dark Reading is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them.Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.


10:30 AM
 Tim Mackey
Tim Mackey
Connect Directly
E-Mail vvv

Secure Code: You Are the Solution to Open Source’s Biggest Problem

Seventy-eight percent of open source codebases examined in a recent study contain at least one unpatched vulnerability, with an average of 64 known vulnerabilities per codebase.

"Unpatched Vulnerabilities Will Likely Cause Your Next Breach."

"Unpatched Applications Are #1 Cyber Security Risk."

"Unpatched Software Vulnerabilities a Growing Problem."

"Outdated, Unpatched Software Rampant in Businesses."

If those headlines seem familiar, it's because you've read them all over the past decade, dating from March 2018 all the way back to 2008. But the story remains the same: Unpatched software vulnerabilities are the biggest cyberthreat organizations face. The problem is that no one is listening, or, worse, they don't know what software they have and how to patch it.

According to Black Duck by Synopsys' recently released annual report, "Open Source Security and Risk Analysis (OSSRA)," unpatched, vulnerable open source components are the leading security risk across multiple industries. Business sectors represented in the report include automotive, big data, cyber security, enterprise software, financial services, health care, Internet of things (IoT), manufacturing, and mobile apps.

In all, open source components were found in 96% of the codebases scanned last year, with an average of 257 open source components per codebase, the report states. That's no surprise: Open source components and libraries form the backbone of nearly every application in every industry. And use of open source lowers costs and speeds development – both critical in today's agile software world.

But the vulnerabilities found in the over 1,100 codebases scanned for the report are as pervasive as open source itself. Seventy-eight percent of the codebases examined contained at least one unpatched vulnerability, with an average of 64 known vulnerabilities per codebase. Seventeen percent of the audited codebases contained a named vulnerability, such as Heartbleed, Freak, Drown, or Poodle. Poodle was found in 8% of the codebases scanned, Freak and Drown were found in 5%, and Heartbleed was found in 4% of the scanned codebases – a full four years after its disclosure and several well-publicized exploits.

In addition, 8% of the codebases audited for the 2018 OSSRA report were found to contain Apache Struts. Of those, a third contained the Struts vulnerability that resulted in the 2017 Equifax breach, which compromised the personal information of over 148 million consumers. Clearly, neither the vulnerability disclosure nor the resulting breach was enough to prompt these organizations to investigate their applications for this critical vulnerability.

'Houston, We Have a Problem'
Yes, we do, but it's not just about open source. The National Vulnerability Database (NVD) alone listed a record-setting 14,700 vulnerabilities in 2017 versus only 6,400 in 2016. Other reports placed 2017 vulnerability disclosure counts at over 20,000, with nearly 5,000 of those flying under the NVD radar. More than 4,800 of those disclosures were related to open source components.

The open source community does an exemplary job of issuing patches, often at a much faster pace than their proprietary counterparts. But whether it's for proprietary or open source software, an alarming number of companies simply aren’t applying them.

Following are three steps you can take to help you get better at patching:

Step 1. Take inventory: Can you say with confidence that the open source components used in your public and internal applications are up-to-date with all crucial patches applied? If you can't answer that question and can’t produce a full and accurate inventory (bill of materials) of the open source used in your applications, it's time to inventory your open source software. After all, you can’t patch when you don't know what you have.

Step 2. Monitor for threats: Unlike commercial software, where fixes, patches, and updates are (or at least should be) automatically pushed to users, open source has a pull support model – you are responsible for keeping track of both vulnerabilities and fixes for what you use. Mind you, that's a task far beyond spreadsheets and manual tracking. An automated solution for identifying and patching known vulnerabilities in open source components can help you manage vulnerability risks much more effectively.

Step 3. Focus on what is most likely to be exploited: Nearly 5,000 open source vulnerabilities were reported last year, but only a handful – such as Apache Struts or OpenSSL vulnerabilities – are likely to be widely exploited. Further, if a vulnerability isn't present in a dependency you have, it can't be exploited. Triaging prioritization of remediation and mitigation activity based on CVSS (Common Vulnerability Scoring System) scores is essential and also must incorporate information covering the availability of exploits. Exploits might not exist on day zero of a vulnerability disclosure, but they could appear days later. Patch priorities should effectively be dictated by business importance of the system, criticality of the asset, and risk of exploitation.

I can guarantee we'll see more headlines about unpatched software vulnerabilities in the days ahead. Just don't let your organization be part of one of them.

Related Content:

Why Cybercriminals Attack: A DARK READING VIRTUAL EVENT Wednesday, June 27. Industry experts will offer a range of information and insight on who the bad guys are – and why they might be targeting your enterprise. Go here for more information on this free event.

Tim Mackey is Principal Security Strategist, CyRC, at Synopsys. Within this role, he engages with various technical communities to understand how to best solve application security problems. He specializes in container security, virtualization, cloud technologies, distributed ... View Full Bio

Recommended Reading:

Comment  | 
Print  | 
More Insights
Newest First  |  Oldest First  |  Threaded View
User Rank: Author
6/27/2018 | 10:24:43 AM
Re: “…use of open source lowers costs and speeds development – both critical in today's agile software world.…”
Fair points on the cost spectrum and development budgets, but I recall a time when performing even basic security assessments like static tests and BVT operations were considered expensive activities. We collectively learned that security needed to be part of software development process, and course corrected. With open source components making up a significant portion of modern codebases, understanding the risks present in those components/libraries needs to be part of the overall budget. After all, software shouldn't go out the door without a clear understanding of any latent vulnerabilities, regardless of source!

Personally, I'd like to see more companies taking continuous security monitoring to the next level and being proactive about security commnication and patch delivery for all software they produce. We can't wait for an attack to patch, but should be ensuring beachheads can't be created through inattention.



Jon M. Kelley
Jon M. Kelley,
User Rank: Moderator
6/26/2018 | 10:26:31 AM
“…use of open source lowers costs and speeds development – both critical in today's agile software world.…”
There are many tools available that will look for and report on open source vulnerabilities in your code base.  Features among the tools differ, as does cost (e.g. free from OWASP[.]org, or for fee at BlackDuck).  The problem for many SW developers is that they have no budget for making old existing developed code secure, and a tight budget for securing newly developed addons.  Many of these companies don't see "Unpatched software vulnerabilities" as a threat, but instead see the researchers that find the vulnerabilities to be the threat, and promote laws that resrict even looking for vulnerabilities.  I guess that for Wall Street, it's still true that successful companies never look ahead more than a quarter. 
Cyberattacks Are Tailored to Employees ... Why Isn't Security Training?
Tim Sadler, CEO and co-founder of Tessian,  6/17/2021
7 Powerful Cybersecurity Skills the Energy Sector Needs Most
Pam Baker, Contributing Writer,  6/22/2021
Microsoft Disrupts Large-Scale BEC Campaign Across Web Services
Kelly Sheridan, Staff Editor, Dark Reading,  6/15/2021
Register for Dark Reading Newsletters
White Papers
Current Issue
The State of Cybersecurity Incident Response
In this report learn how enterprises are building their incident response teams and processes, how they research potential compromises, how they respond to new breaches, and what tools and processes they use to remediate problems and improve their cyber defenses for the future.
Flash Poll
How Enterprises are Developing Secure Applications
How Enterprises are Developing Secure Applications
Recent breaches of third-party apps are driving many organizations to think harder about the security of their off-the-shelf software as they continue to move left in secure software development practices.
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
PUBLISHED: 2021-06-22
Trusty TLK contains a vulnerability in the NVIDIA TLK kernel function where a lack of checks allows the exploitation of an integer overflow on the size parameter of the tz_map_shared_mem function.
PUBLISHED: 2021-06-22
Trusty TLK contains a vulnerability in the NVIDIA TLK kernel�s tz_handle_trusted_app_smc function where a lack of integer overflow checks on the req_off and param_ofs variables leads to memory corruption of critical kernel structures.
PUBLISHED: 2021-06-22
Trusty TLK contains a vulnerability in the NVIDIA TLK kernel where an integer overflow in the tz_map_shared_mem function can bypass boundary checks, which might lead to denial of service.
PUBLISHED: 2021-06-22
Trusty contains a vulnerability in TSEC TA which deserializes the incoming messages even though the TSEC TA does not expose any command. This vulnerability might allow an attacker to exploit the deserializer to impact code execution, causing information disclosure.
PUBLISHED: 2021-06-22
Trusty contains a vulnerability in all TAs whose deserializer does not reject messages with multiple occurrences of the same parameter. The deserialization of untrusted data might allow an attacker to exploit the deserializer to impact code execution.