Linux powers up to 90% of the internet so keeping on top of vulnerabilities should be a priority for every developer.
SHARE
back to BLOG

Linux vulnerability scanner: How to get started

James Harrison

Every year we’re seeing more vulnerabilities that affect Linux. Many consumers aren’t familiar with Linux although they use it every day without knowing it - W3Techs estimates that Linux powers up to 90% of the internet. Given these numbers, how popular Linux is in the server world, and the number of mission-critical cloud applications it’s powering – it’s not surprising it’s a target for cyber criminals.  

Simply put, a vulnerability in Linux offers attackers a high-value payoff, meaning they can maximize their reward with minimum effort, using the same exploit to breach multiple organizations’ infrastructure. In this article we’ll look at some recent vulnerabilities, and how you can protect your internal systems with a Linux vulnerability scanner.

Top types of Linux attacks

As with all platforms, Linux attacks vary, but ransomware and cryptojacking top the list. They’re often delivered through fileless malware, software that uses legitimate programs to infect a system or device. It doesn’t rely on files and leaves minimal footprint, making it difficult to detect by endpoint protection such as antivirus, and so prevention is better than cure. High-profile fileless attacks include the hack of the Democratic National Committee and the Equifax breach.

Top 3 Linux vulnerabilities

Linux kernel CVE-2021-41073  

As the main component of Linux, the Linux kernel – the interface between the computer’s hardware and its processes – is a particularly attractive access point. Essentially, it represents the “brains” of any Linux distribution, meaning it is ubiquitous and any vulnerability can have far-reaching implications.

This vulnerability allows attackers to take advantage of a weakness in a kernel interface known as io_uring, to achieve local privilege execution (LPE). This means that an attacker must have some access to the local machine to exploit this vulnerability. Sometimes, this is accomplished by means of social engineering, tricking the user into running a small program themselves. To mitigate risk, upgrade the Linux kernel to version 5.14.7 or higher.

Baron Samedit Sudo CVE-2021-3156

Sudo is an almost universal and powerful Linux utility that allows users to run processes using the security privileges of another user, primarily the system administrator. It was created so that users would not have to log on as the more privileged user to perform commands that require higher security privileges than the user currently has.

This vulnerability takes its name from “Baron Samedi,” the Haitiain Vodou spirit of death. Because of the ubiquity of sudo, almost any Linux system could have this vulnerability. It’s a local privilege escalation attack, so the attacker must have access to the system already.  

Successful exploitation allows any unprivileged user to gain root privileges on the vulnerable host. This means it can read and write any files on the system, perform operations as any user, change system configuration, install and remove software, and upgrade the operating system and/or firmware. Essentially, it can do pretty much anything on the system.

Dirty Pipe CVE-2022-0847

The name ‘Dirty Pipe’ is both a reference to Dirty Cow – an earlier high-severity and easy-to-exploit Linux flaw – and a clue about the new vulnerability’s origins. “Pipe” refers to a pipeline, a Linux mechanism for one OS process to send data to another process. In essence, a pipeline is two or more processes chained together so that the output text of one process (stdout) is passed directly as input (stdin) to the next one.  

Dirty Pipe makes it easy for untrusted users to execute code that can carry out a host of malicious actions, including installing backdoors, creating unauthorized user accounts, and modifying scripts or binaries used by privileged services or apps. The vulnerability first appeared in kernel version 5.8, which was released in August 2020, but wasn’t discovered until 2022. The vulnerability is fixed with the release of versions 5.16.11, 5.15.25, and 5.10.102.

Linux vulnerability scanner

Attacks on Linux are on the rise and becoming increasingly sophisticated and powerful, and hackers are spending more time and money than ever on the business of creating malware. Research shows that new Linux malware threats hit record numbers in 2022, increasing by 50% to 1.9 million.

That’s the bad news. The good news is that there are still steps you can take to stay safe. Together, these are the core of a robust vulnerability and risk management policy:

Try our interactive demo to see how easy vulnerability scanning is with Intruder.

How to install Intruder for Linux

Intruder’s internal vulnerability scanner for Linux finds weaknesses in your internal network, even if they’re behind a firewall and only accessible to employees or trusted partners.

As an agent-based vulnerability scanner for Linux, it needs to be installed on every device, but this is easy to do manually or using the installation wizard.  

Keeping up with emerging vulnerabilities, scanning your internal network and protecting all your internal devices is easy with Intruder. It’s easy to install and use, providing continuous monitoring so you can find and fix issues in your Linux devices quickly. Start your free trial today or get in touch for more information.

Release Date
Level of Ideal
Comments
Before CVE details are published
🥳
Limited public information is available about the vulnerability.

Red teamers, security researchers, detection engineers, threat actors have to actively research type of vulnerability, location in vulnerable software and build an associated exploit.

Tenable release checks for 47.43% of the CVEs they cover in this window, and Greenbone release 32.96%.
Day of CVE publish
😊
Vulnerability information is publicly accessible.

Red teamers, security researchers, detection engineers and threat actors now have access to some of the information they were previously having to hunt themselves, speeding up potential exploit creation.

Tenable release checks for 17.12% of the CVEs they cover in this window, and Greenbone release 17.69%.
First week since CVE publish
😐
Vulnerability information has been publicly available for up to 1 week.

The likelihood that exploitation in the wild is going to be happening is steadily increasing.

Tenable release checks for 10.9% of the CVEs they cover in this window, and Greenbone release 20.69%.
Between 1 week and 1 month since CVE publish
🥺
Vulnerability information has been publicly available for up to 1 month, and some very clever people have had time to craft an exploit.

We’re starting to lose some of the benefit of rapid, automated vulnerability detection.

Tenable release checks for 9.58% of the CVEs they cover in this window, and Greenbone release 12.43%.
After 1 month since CVE publish
😨
Information has been publicly available for more than 31 days.

Any detection released a month after the details are publicly available is decreasing in value for me.

Tenable release checks for 14.97% of the CVEs they cover over a month after the CVE details have been published, and Greenbone release 16.23%.

With this information in mind, I wanted to check what is the delay for both Tenable and Greenbone to release a detection for their scanners. The following section will focus on vulnerabilities which:

These are the ones where an attacker can point their exploit code at your vulnerable system and gain unauthorised access.

We’ve seen previously that Tenable have remote checks for 643 critical vulnerabilities, and OpenVAS have remote checks for 450 critical vulnerabilities. Tenable release remote checks for critical vulnerabilities within 1 month of the details being made public 58.4% of the time, but Greenbone release their checks within 1 month 76.8% of the time. So, even though OpenVAS has fewer checks for those critical vulnerabilities, you are more likely to get them within 1 month of the details being made public. Let’s break that down further.

In Figure 10 we can see the absolute number of remote checks released on a given day after a CVE for a critical vulnerability has been published. What you can immediately see is that both Tenable and OpenVAS release the majority of their checks on or before the CVE details are made public; Tenable have released checks for 247 CVEs, and OpenVAS have released checks for 144 CVEs. Then since 2010 Tenable have remote released checks for 147 critical CVEs and OpenVAS 79 critical CVEs on the same day as the vulnerability details were published. The number of vulnerabilities then drops off across the first week and drops further after 1 week, as we would hope for in an efficient time-to-release scenario.

Figure 10: Absolute numbers of critical CVEs with a remote check release date from the date a CVE is published

While raw numbers are good, Tenable have a larger number of checks available so it could be unfair to go on raw numbers alone. It’s potentially more important to understand the likelihood that OpenVAS or Tenable will release a check of a vulnerability on any given day after a CVE for a critical vulnerability is released. In Figure 11 we can see that Tenable release 61% their checks on or before the date that a CVE is published, and OpenVAS release a shade under 50% of their checks on or before the day that a CVE is published.

Figure 11: Percentage chance of delay for critical vulnerabilities

So, since 2010 Tenable has more frequently released their checks before or on the same day as the CVE details have been published for critical vulnerabilities. While Tenable is leading at this point, Greenbone’s community feed still gets a considerable percentage of their checks out on or before day 0.

I thought I’d go another step further and try and see if I could identify any trend in each organisations release delay, are they getting better year-on-year or are their releases getting later? In Figure 12 I’ve taken the mean delay for critical vulnerabilities per year and plotted them. The mean as a metric is particularly influenced by outliers in a data set, so I expected some wackiness and limited the mean to only checks released 180 days prior to a CVE being published and 31 days after a CVE being published. These seem to me like reasonable limits, as anything greater than 6 months prior to CVE details being released is potentially a quirk of the check details and anything after a 1-month delay is less important for us.

What can we take away from Figure 12?

Figure 12: Release delay year-on-year (lower is better)

With the larger number of checks, and still being able to release a greater percentage of their remote checks for critical vulnerabilities Tenable could win this category. However, the delay time from 2019 and 2020 going to OpenVAS, and the trend lines being so close, I am going to declare this one a tie. It’s a tie.

The takeaway from this is that both vendors are getting their checks out the majority of the time either before the CVE details are published or on the day the details are published. This is overwhelmingly positive for both scanning solutions. Over time both also appear to be releasing remote checks for critical vulnerabilities more quickly.

Written by

James Harrison

Recommended articles

Ready to get started with your 14-day trial?
try for free