Operations

6/25/2018
10:30 AM
 Tim Mackey
Tim Mackey
Commentary
Connect Directly
Twitter
LinkedIn
RSS
E-Mail vvv
50%
50%

Secure Code: You Are the Solution to Open Sources 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 a technical evangelist for Black Duck by 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, ... View Full Bio
Comment  | 
Print  | 
More Insights
Comments
Newest First  |  Oldest First  |  Threaded View
timintech
50%
50%
timintech,
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.

-tim

 

 
Jon M. Kelley
50%
50%
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. 
Google Engineering Lead on Lessons Learned From Chrome's HTTPS Push
Kelly Sheridan, Staff Editor, Dark Reading,  8/8/2018
White Hat to Black Hat: What Motivates the Switch to Cybercrime
Kelly Sheridan, Staff Editor, Dark Reading,  8/8/2018
PGA of America Struck By Ransomware
Dark Reading Staff 8/9/2018
Register for Dark Reading Newsletters
White Papers
Video
Cartoon Contest
Write a Caption, Win a Starbucks Card! Click Here
Latest Comment: This comment is waiting for review by our moderators.
Current Issue
Flash Poll
The State of IT and Cybersecurity
The State of IT and Cybersecurity
IT and security are often viewed as different disciplines - and different departments. Find out what our survey data revealed, read the report today!
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2018-3937
PUBLISHED: 2018-08-14
An exploitable command injection vulnerability exists in the measurementBitrateExec functionality of Sony IPELA E Series Network Camera G5 firmware 1.87.00. A specially crafted GET request can cause arbitrary commands to be executed. An attacker can send an HTTP request to trigger this vulnerability...
CVE-2018-3938
PUBLISHED: 2018-08-14
An exploitable stack-based buffer overflow vulnerability exists in the 802dot1xclientcert.cgi functionality of Sony IPELA E Series Camera G5 firmware 1.87.00. A specially crafted POST can cause a stack-based buffer overflow, resulting in remote code execution. An attacker can send a malicious POST r...
CVE-2018-12537
PUBLISHED: 2018-08-14
In Eclipse Vert.x version 3.0 to 3.5.1, the HttpServer response headers and HttpClient request headers do not filter carriage return and line feed characters from the header value. This allow unfiltered values to inject a new header in the client request or server response.
CVE-2018-12539
PUBLISHED: 2018-08-14
In Eclipse OpenJ9 version 0.8, users other than the process owner may be able to use Java Attach API to connect to an Eclipse OpenJ9 or IBM JVM on the same machine and use Attach API operations, which includes the ability to execute untrusted native code. Attach API is enabled by default on Windows,...
CVE-2018-3615
PUBLISHED: 2018-08-14
Systems with microprocessors utilizing speculative execution and Intel software guard extensions (Intel SGX) may allow unauthorized disclosure of information residing in the L1 data cache from an enclave to an attacker with local user access via a side-channel analysis.