There’s a whole lot of trouble simmering under the surface of the latest trends in open source software use. Below, we discuss how cyber security solutions can help you manage open source library (OSL) security risk in your development processes, as well as how often you should check open source code?
An Explosion of OSL Use and Its Consequences
Myths of open source code safety and pressure for ever-shorter time to market have led to exponential growth of OSL use in commercial software development. However, more efficient development comes with strings attached: problems of data security and quality.
Several trends drive this software explosion:
OSLs, development pressure valves. Once regarded with skepticism at best, open source code now saves the day by providing developers with functional modules of pre-built code. Pre-built is the magic word. OSLs deliver specific functionality with no need to build software from scratch. Developers choose third-party OSLs, pull them into their code bases, and, voila! OSL use expands because the development process yields a host of benefits, which include:
- Shorter development cycles.
- Faster time to market.
- Lower labor costs.
All of these benefits arise from customizable, reusable code modules, which reduce development time and expensive labor costs.
OSL mythmaking, expensive misunderstandings. Many open source project communities have bought into the myth that open source software is inherently safer than the commercial kind. After all, OSLs are community made, so it has many people keeping an eye on quality, right?
Hmmm… maybe, but that doesn’t translate into software quality. The convenience and revenue-pumping benefits of OSLs encourage developers to use the software and project managers to accept its use. But hackers use OSLs more often, too, encouraged by the vulnerabilities that make them easy exploit targets.
OSL vulnerabilities, an “open, sesame!” for hackers. The convenience, cost savings, and perceived safety of OSLs have their own costs, however.
In its 2020 Market Guide for Software Composition Analysis, Gartner estimates that 90 percent of organizations use open source code in their applications, but 70 percent of applications include flaws that arise from use of open source code.
Open source code is riddled with security vulnerabilities. So everybody should check open source code regularly basis. When hackers plan their exploits, they take the easiest course and choose routes that offer the juiciest attack surfaces. These opportunities are usually created by outdated software.
Blind-Sided by Unknown Code Vulnerabilities
And that’s the heart of the matter—vulnerabilities are the biggest security risk of using OSLs, and outdated software comprises most of known vulnerabilities. Good OSL housekeeping requires massive amounts of time and attention. So, for the most part, IT organizations deal with the problem in a straightforward way. They ignore the problem and use the software, often without knowing about the vulnerabilities in the code.
This leaves software open to attacks, enabled by problems that developers don’t know exist.
Ideally, organizations would track and update OSLs that they use to ensure that vulnerabilities are identified, prioritized, and fixed. But constantly changing technology and attack landscape make these tasks time-consuming and expensive. As a result, most third-party OSLs are never updated. Worse yet. most of the flaws discovered in OSLs could be fixed by simply updating to the latest version.
Managing the Risks of Unpatched Libraries
This dilemma leaves developers and project managers with several paths forward:
- Continue ignoring the problem. Take a chance that attackers won’t discover your OSL vulnerabilities. This is a very risky choice, especially if you recall that cyberattackers often revisit sites of successful exploits.
- Find, prioritize, and fix vulnerabilities where you find them. As we mentioned, this is a time- and money-hungry process and provides only partial protection.
- Block exploitation of unpatched vulnerabilities with software tools. You might try introducing a rule in a web app firewall (WAF), changing parts of your app that accepts related user input, or blocking a port. These tactics might work for individual vulnerabilities, but what about blanket protection from your unknown unknowns?
That’s when a vulnerability management solution can help you reduce the risk of rampant out-of-date OSL software and the costs of tending it. Here are two software alternatives to find-and-fix vulnerability protection:
#1. Web Application Firewalls: Protection for App-Layer Traffic
WAFs are software barriers installed at the edge of your IT infrastructure. They monitor, filter, and block suspicious internet traffic and keep it out of your web applications, a favorite target for cyberattackers.
Typically, WAFs protect web applications from many types of cyberattacks such as SQL injection, cross-site-scripting, and cross-site forgery, among others. A WAF runs with a set of pre-defined rules (policies). These policies specify the detection, monitoring, and neutralization steps of blocking attacks.
However, WAFs don’t block all exploits, only those located in the network application layer. For other types of protection, you need a different tool.
#2. RASP: Software that Protects Apps Against Attack
Runtime application self-protection (RASP) technology: the name says it all. This cyberattack protection software:
- Monitors an application’s behavior and environment continuously whenever and as long as an application runs.
- Protects apps from malicious software or hacker behavior in real time.
- Identifies and mitigates an attack immediately, automatically, and without human intervention.
RASP software can neutralize most attacks after they penetrate an IT system’s edge defenses. Since RASP is familiar with relevant configuration, application logic, and data event flows, it can distinguish between attack indicators and legitimate users asking for information. This capability reduces false positives (a big nuisance for online customers) and helps network defenders spend more of their time fighting real problems and less time chasing false alarms.
So, you can keep track of vulnerabilities by taking loads of time, human effort, and costs in find-and-fix campaigns. Or you can use real-time response software to focus your security efforts by blocking attacks when they occur. This way you can check open source code regularly and have the minimum risk of vulnerabilities.