the new "9.9" Severity Linux Vunlerability

Eric Parker
27 Sept 202411:56

Summary

TLDRIn this video, Eric discusses a severe 9.9 CVSs vulnerability in the Common Unix Printing System (CUPS), affecting Linux and Unix systems. The flaw allows remote attackers to execute arbitrary code by adding a malicious printer. Despite being less severe than Eternal Blue, it's still concerning due to its broad impact and the challenges faced in disclosing it. Eric also touches on the developer's initial response, the potential risks of default configurations, and the importance of patches and firewalls.

Takeaways

  • 🐧 The CVSS 9.9 vulnerability affects all Unix/Linux systems, including macOS, due to its use of the Common Unix Printing System (CUPS).
  • 🔍 CUPS, developed by Apple, is intended to simplify printing on Unix-based systems but has been found to have security flaws.
  • 💡 The vulnerability allows remote unauthenticated attackers to replace existing printers or install new malicious ones, leading to arbitrary command execution.
  • 🚧 The issue is considered less severe than Eternal Blue but still poses a significant security risk.
  • 🔒 The vulnerability can be exploited via the internet if the affected port is exposed or through local network spoofing.
  • 🛡️ Proper firewall configuration can mitigate the risk, but many systems may still be exposed due to misconfigurations.
  • 🔎 Security researchers have discovered that hundreds of thousands of devices have the vulnerable service enabled on the public internet.
  • 🛠️ The vulnerability exists in CUPS versions from 2.6 to the latest, indicating a long-standing issue.
  • 📢 The developer's initial response to the vulnerability was slow and dismissive, causing frustration among security researchers.
  • 🌐 The vulnerability was eventually disclosed, but not before it was leaked on breach forums, highlighting issues with the disclosure process.

Q & A

  • What is the CVSS 9.9 vulnerability discussed in the script?

    -The script discusses a vulnerability in the Common Unix Printing System (CUPS) that affects all Unix/Linux systems, allowing remote code execution without authentication.

  • What does CUPS stand for and what is its purpose?

    -CUPS stands for Common Unix Printing System, developed by Apple to make printing on Unix-based systems easier.

  • How does the vulnerability allow an attacker to execute commands?

    -The vulnerability allows an attacker to inject a command line parameter into a printer addition process, which can then be triggered when a print job is started.

  • Is this vulnerability as severe as Eternal Blue?

    -While severe, the CUPS vulnerability is considered less bad than Eternal Blue because it does not allow for system takeover with zero authentication or interaction.

  • How can this vulnerability be exploited on the public internet?

    -An attacker can exploit this vulnerability by sending a UDP packet to trigger a get printer attributes request, or by spoofing a zeroconf mDNS advertisement.

  • What is the potential impact of this vulnerability on systems with the CUPS browsed enabled?

    -Systems with CUPS browsed enabled can have their printers replaced or new malicious printers installed, leading to arbitrary command execution.

  • How can users protect themselves from this vulnerability?

    -Users can protect themselves by updating CUPS, disabling the CUPS browsed feature if not needed, or blocking the necessary ports with a firewall.

  • What was the initial developer response to the discovery of this vulnerability?

    -The initial developer response was slow and dismissive, with the vulnerability being initially downplayed and not taken seriously.

  • How was the vulnerability discovered and reported?

    -The vulnerability was discovered through port scanning and analysis of CUPS. The researcher submitted a report to a vulnerability database, which unfortunately got leaked before disclosure.

  • What are the potential long-term implications of this vulnerability?

    -The vulnerability could lead to a long tail of issues as it affects a broad range of systems and may not be quickly patched, especially on older or less maintained systems.

  • What is the significance of the vulnerability having a CVSS score of 9.9?

    -A CVSS score of 9.9 indicates a critical vulnerability with a high severity level, suggesting that it can be easily exploited and has a significant impact.

Outlines

00:00

🖨️ Exploiting CVE-9.9 Vulnerability in Unix Printing Systems

In this paragraph, Eric discusses the CVSs 9.9 vulnerability affecting Unix and Linux systems, particularly those using the Common Unix Printing System (CUPS) developed by Apple. The vulnerability allows an attacker to execute arbitrary code on a vulnerable system by adding a printer without authentication. Eric explains that while this is a severe security incident, it is less dangerous than other attacks like 'Eternal Blue'. He also discusses how the vulnerability can be exploited over the internet or through local network spoofing and emphasizes the importance of updating CUPS or blocking the necessary ports with a firewall to mitigate the risk.

05:02

🔍 The Challenges of Disclosing the CUPS Vulnerability

The second paragraph delves into the difficulties faced by a security researcher in disclosing the CUPS vulnerability. It highlights the researcher's analysis that while the vulnerability is embarrassing and concerning, it is unlikely to result in severe consequences due to the nature of the exploit on various architectures. The paragraph also touches upon the challenges of getting developers to acknowledge the issue and the unfortunate leak of the vulnerability report on breach forums before it could be responsibly disclosed. The summary also points out the broader implications for open-source systems and the potential for such vulnerabilities to be exploited before they are publicly known.

10:02

🌐 The Impact and Mitigation of the CUPS Vulnerability

In the final paragraph, Eric addresses the potential impact of the CUPS vulnerability, arguing that despite it being less severe than some other exploits, it still poses a significant risk, especially given the common misconfiguration of firewalls. He mentions the long tail of such vulnerabilities due to outdated server images and the ongoing exploitation of Eternal Blue. Eric concludes by encouraging viewers to share their thoughts in the comments and provides a brief overview of the number of services exposed to the internet on Port 631, indicating the scale of potential exposure.

Mindmap

Keywords

💡CVSS

CVSS stands for Common Vulnerability Scoring System, which is a standardized scoring system used to convey the severity of a computer system security vulnerability. In the video, CVSS is mentioned in the context of a 9.9 vulnerability score, which indicates a critical vulnerability. The score is used to assess the potential impact of the vulnerability that affects all Unix/Linux systems.

💡Linux systems

Linux systems refer to computer systems that use the Linux operating system. The video discusses a vulnerability that affects all Linux systems, emphasizing the widespread nature of the security issue. The mention of Linux systems is crucial as it sets the stage for the discussion on the severity and potential impact of the vulnerability.

💡CUPS

CUPS stands for Common Unix Printing System, a modular printing system for Unix-like computer operating systems that allows a computer to act as a print server. In the video, the vulnerability is discussed in relation to CUPS, as it is exploited through this system to potentially allow remote code execution.

💡Remote code execution

Remote code execution is a type of cybersecurity threat where an attacker can execute malicious code on a remote system. The video explains how the CUPS vulnerability can lead to remote code execution, which is a severe security risk because it allows attackers to take control of the affected system.

💡Vulnerability

A vulnerability is a weakness in a system that can be exploited by a threat actor. The video script revolves around a specific vulnerability in CUPS that can be exploited to gain unauthorized access to Unix/Linux systems. The term is central to the discussion as it defines the nature of the security issue being addressed.

💡Exploit

An exploit is a piece of software, a chunk of data, or a sequence of commands that takes advantage of a bug or vulnerability in order to cause unintended behavior in a computer system. The video discusses how an exploit was designed to take advantage of the CUPS vulnerability, demonstrating the practical implications of the security flaw.

💡Firewall

A firewall is a network security system that monitors and controls incoming and outgoing network traffic based on predetermined security rules. The video mentions the importance of having a properly configured firewall to prevent the exploitation of the CUPS vulnerability by blocking the necessary port.

💡Port 631

Port 631 is the Internet Assigned Numbers Authority (IANA) assigned port number for the Internet Printing Protocol (IPP), which is used by CUPS. The video discusses how this port, if exposed to the internet, can be exploited to gain access to systems vulnerable to the CUPS flaw.

💡Zero-day

A zero-day vulnerability is a security flaw that is unknown to the software developer or vendor, and hence, no patch or fix is available. The video touches on the concept of zero-day vulnerabilities, suggesting that the CUPS vulnerability could be exploited before a patch is widely implemented.

💡Disclosure

Disclosure in cybersecurity refers to the process of revealing the details of a vulnerability to the public or to the affected parties. The video script discusses the challenges faced by the security researcher in disclosing the CUPS vulnerability, including the frustration of dealing with the vendor and the leak of the vulnerability details.

💡Shodan

Shodan is a search engine for Internet-connected devices, often used by security researchers to find vulnerable systems. The video mentions using Shodan to find systems with Port 631 exposed, illustrating how researchers can identify potential targets for exploitation.

Highlights

CVSs 9.9 vulnerability affects all Unix/Linux systems.

CUPS (Common Unix Printing System) is the target of the vulnerability.

CUPS was developed by Apple to simplify printing on Unix systems.

Linux security, especially on the desktop, is not as robust as assumed.

Vulnerability allows remote code execution without authentication.

Attackers can add malicious printers to a system without user interaction.

The vulnerability is less severe than Eternal Blue but still significant.

Firewalls can mitigate the risk if the port is not exposed.

Local network attacks can exploit the vulnerability via mDNS spoofing.

CUPS is used on almost every modern Unix system, including Mac OS.

Hundreds of thousands of devices are exposed to the public internet with this vulnerability.

Kernel information is leaked when sending requests, exposing systems to further attacks.

Updating CUPS or configuring firewalls can mitigate the vulnerability.

Memory unsafe C code is a contributing factor to the vulnerability.

The vulnerability was initially ignored by developers.

A security researcher was able to create a file as part of the exploiting process.

The vulnerability disclosure process was difficult and discouraging for the researcher.

The vulnerability was leaked on breach forums before formal disclosure.

Shodan search reveals over a million services with Port 631 exposed to the internet.

The CVSs score of 9.9 may be justified despite the vulnerability not requiring internet exposure.

The vulnerability will have a long tail due to outdated server images used by hosting providers.

Transcripts

play00:00

hello buddy my name is Eric and today

play00:01

we're going to be looking at the CVSs

play00:04

9.9 vulnerability that affects all g/

play00:08

Linux systems so well that's sort of how

play00:10

it was initially spread and we'll go

play00:12

through the reality of it is it

play00:14

overblown and what does it actually do

play00:17

so what we have here is attacking Unix

play00:20

systems via cups now cups is the common

play00:23

Unix printing system it's actually

play00:24

developed by Apple and was intended to

play00:27

make printing on Unix spaced systems

play00:30

easier so we'll read the preface so this

play00:32

quote is interesting from a generic

play00:34

security point of view a whole Linux

play00:36

system as it is nowadays is just an

play00:38

endless and hopeless mess of security

play00:40

holes waiting to be exploited I wouldn't

play00:43

go that far but Linux security

play00:44

definitely especially on the desktop is

play00:46

not as good as many people assume it is

play00:49

and uh this security incident is

play00:52

relatively

play00:54

severe so what's happened here is a

play00:57

combination of vulnerabilities leads to

play00:59

OTE code execution so first of all we

play01:02

have this one cups browsed binds on this

play01:06

IP address trusting any packet from any

play01:08

source to trigger a get printer

play01:10

attributes request which then goes to an

play01:12

attacker controlled URL so this gets the

play01:16

vulnerable system so this gets the

play01:19

vulnerable system to connect

play01:22

back then this does not validate or

play01:25

sanitize those attributes so and and

play01:28

this is how uh the

play01:30

actual execution happens is you can

play01:33

inject a command line parameter into

play01:36

this so you can add a printer to

play01:39

someone's computer without

play01:42

authentication and if they ever try and

play01:44

print through that printer that's how

play01:46

the actual vulnerability

play01:47

works so this is substantially less bad

play01:51

than something like Eternal blue which

play01:52

allows you to take over a system with

play01:55

zero authentication or interaction if

play01:57

you want to see that you can go see my

play01:58

Windows XP or ser 2003 videos where

play02:01

malware just installs itself it's not

play02:03

that bad but it's still pretty severe so

play02:05

a remote unauthenticated attacker can

play02:08

silently replace existing printers or

play02:10

install new ones with a malicious one

play02:13

resulting in arbitrary command execution

play02:15

when a print job is started now on the

play02:17

public internet you just send a UDP

play02:20

packet now there is a problem this

play02:22

course which is much like why the

play02:24

Eternal blue isn't a huge issue these

play02:26

days unless you're running a server your

play02:29

computer is probably not directly

play02:30

exposed to the internet and if you have

play02:33

a properly configured firewall this port

play02:34

should not be exposed the other way this

play02:36

can be triggered is overl you can spoof

play02:39

a zero comp mdns advertisement and

play02:43

achieve a similar code path and then you

play02:45

get a very very bad uh security takech I

play02:47

actually saw this one on a a few month a

play02:49

month ago and I thought oh yikes yeah I

play02:53

mean any uh Network worm is only a

play02:57

problem if the port is exposed to the

play02:59

internet or the network but yeah that's

play03:02

that's not quite right now of course

play03:03

this vulnerability is going to be very

play03:05

broad because cops is used on

play03:07

essentially every modern Unix system and

play03:10

of course Mac OS is also on the list

play03:12

because I mean it was Apple who

play03:14

developed it although I don't know if

play03:16

they Shi the browsed extension now here

play03:19

as a result of Port scanning he's

play03:21

discovered that hundreds of thousands of

play03:24

devices do have this enabled on the

play03:27

public internet and this file contains a

play03:29

list of of systems that have cooled now

play03:33

this works because the kernel

play03:34

information is actually cooled back when

play03:36

you when you send this request so wow

play03:39

all the way back to 2.6 where you could

play03:41

probably find a myriad of other problems

play03:44

uh two going down oh wow yeah all the

play03:47

way to the very latest version across a

play03:49

wide variety someone exposed a gentu

play03:51

system you can find out some of these

play03:53

actually cuz xan mod Licor these are

play03:57

usually installed by Gamers so some

play03:59

people are definitely exposing their

play04:00

Linux PCS to the entire internet so you

play04:02

can get rid of the cups browsed so this

play04:05

update

play04:06

cups and if you can't update it just put

play04:09

that on the firewall you can also do

play04:11

that I think that's a bit far I mean

play04:14

it's not like Windows hasn't had uh

play04:16

vulnerabilities with printing but what

play04:18

is a bit concerning here was how the

play04:19

developers of this initially responded

play04:21

now here they discover how this was

play04:23

initially discovered this is something

play04:26

that's always interesting to do is see

play04:28

what ports are open by default and in

play04:29

terms of network vulnerabilities an open

play04:31

p can be a

play04:33

vulnerability now I checked and my Arch

play04:36

desktop system does not have this

play04:37

vulnerability because I I never

play04:39

installed cups browsed and none of my

play04:41

servers have it but if you installed a

play04:44

desktop Dro on a server you may be at

play04:46

risk and here is the code that binds it

play04:50

and of course we've got the joy of

play04:53

memory unsafe C where any number of

play04:55

things can potentially get

play04:57

in we've got some paing code that of

play05:01

course the Allowed by default will just

play05:03

always return

play05:04

true and here is the paing so first of

play05:09

all me check that of course what you can

play05:12

then do is fuzz this and this is where

play05:15

as several things were discovered but

play05:17

this vulnerability or potential

play05:19

vulnerability is not even the main

play05:21

problem now here is where the main

play05:24

problem comes I just thought I would

play05:25

provide a somewhat happy update to this

play05:27

so This security researcher has done

play05:30

some analysis of this function it's

play05:34

unlikely to result in any interesting

play05:36

information which is very good news

play05:40

still a problem still embarrassing uh

play05:43

but the good news is that nothing

play05:45

terrible is going to come

play05:48

because on every relevant architecture

play05:52

it's just going to get a null

play05:56

bite you could maybe get a timing attack

play06:00

but this is unlikely to result in

play06:03

anything drastic especially because it

play06:05

is going to be

play06:07

patched still important to check because

play06:11

that wasn't immediately knowable Now by

play06:13

using uh and slightly modifying this IP

play06:16

server package they were able to quickly

play06:19

enough design an exploit and an

play06:22

execution path is found with

play06:26

this fumatic rip filter which apparently

play06:30

has been exploited many times before and

play06:32

this security problem was apparently

play06:34

just kind of ignored and this is fmatic

play06:38

Rip so okay so it does some sort of

play06:42

print translation and because of how

play06:44

that works it seems to just kind of rely

play06:47

on what are essentially arbitrary

play06:49

scripts that's a bit scary and there's

play06:52

even a video of this exploiting process

play07:22

successfully created a

play07:25

file so that was kind of according to

play07:28

this person that was the easy part now

play07:30

what wasn't so easy was going through

play07:32

and trying to report this

play07:34

vulnerability first of all the

play07:36

difficulty was getting the developers to

play07:38

accept that there was a vulnerability so

play07:40

they submitted a Vince report and then

play07:43

the worst thing that happened

play07:46

was it got

play07:49

leaked from Vince uh it got leaked over

play07:54

onto breach

play07:56

forms not even for money someone just

play07:59

copy and pasted it I would almost wonder

play08:02

given this is a new user on breach

play08:03

forums if this was uh someone who was

play08:05

just upset about the whole so that's the

play08:08

conclusion of this article so how bad is

play08:11

this vulnerability well it's definitely

play08:14

less bad than Eternal blue or any of the

play08:18

windows netw worm vulnerabilities but

play08:20

it's still very bad and of course the

play08:22

worst thing was the amount of pain that

play08:24

this person went through trying to

play08:27

disclose it they've said they're not

play08:29

going to do any more uh of this with

play08:32

because it was such a pain which is a

play08:34

terrible terrible situation and it is

play08:36

the trouble is with an open Soul system

play08:39

or or more of a modular system rather

play08:42

than an open Soul system is sometimes

play08:44

there are pieces of the system that are

play08:46

not wellmaintained or documented where

play08:49

these things can come through and of

play08:50

course the most alarming thing is that

play08:54

this Vince system had a leak so this was

play08:57

actually able to escape

play09:00

and be sold on breach forms before it

play09:02

was disclosed or worse yet uh it could

play09:05

have actually made its way into being

play09:07

exploited before it was disclosed cuz

play09:08

the exploit here is very simple now

play09:10

heading on over to Shodan we can

play09:12

actually get a list of all of the

play09:14

different services that have an open uh

play09:16

Port 631 exposed to the internet and we

play09:19

get over a Million results with 700,000

play09:22

in the United States followed by China

play09:24

followed by Israel followed by Korea and

play09:27

all sorts of different ISP with Google

play09:30

having a staggering number most of these

play09:32

are in fact CS but then there are

play09:35

other things some people seem to be

play09:38

running HTTP servers on that

play09:41

poort and most of the operating systems

play09:43

are unidentified I'm going to assume

play09:45

that the windows uh reports are going to

play09:48

be mostly false positives now for

play09:50

reference another insecure Port that has

play09:54

caused trouble uh SMB uh well that's got

play09:57

1.7 million and hopefully all of these

play10:00

are patched against Eternal

play10:02

blue maybe not all of them I mean we

play10:04

just got an lce notice here but

play10:07

hopefully a lot of them are so is it

play10:09

worthy of a 9.9 well I think the only

play10:12

real I I don't buy into the argument

play10:14

that it would have to be exposed to the

play10:15

internet or that a firewall could stop

play10:17

it because that is a common

play10:18

misconfiguration just like with eternal

play10:20

blue which is still being exploited by

play10:22

the way I saw a Windows Server host

play10:25

selling a server that came with an image

play10:27

that was vulnerable to Eternal blue out

play10:29

of the box and would probably get taken

play10:31

over by a an internal blow exploit

play10:34

before you would even be able to log

play10:35

into it so that is absolutely still a

play10:37

problem but the main benefit for servers

play10:41

and basically anything exposed to the

play10:43

internet these days is a server because

play10:45

it costs too much like IP addresses are

play10:47

now valuable so you're not going to have

play10:49

your home computer exposed to the

play10:51

Internet so given that the fact that A

play10:54

online servers may not have this

play10:56

installed and B they're probably not

play10:57

printing anything means that known

play10:59

exploit is probably not a going to cause

play11:02

a massive amount of disruption but the

play11:06

good thing is hopefully this entire

play11:08

category of vulnerabilities will be

play11:10

fixed before it becomes widely used but

play11:14

as we often see with hosting providers

play11:18

using out-of-date uh server

play11:21

images this vulnerability is going to

play11:23

have a long tail so that's going to be

play11:25

all for me for now let me know what you

play11:27

think in the comments

play11:29

bye

Rate This

5.0 / 5 (0 votes)

Related Tags
CVSS 9.9Linux SecurityUnix SystemsCUPS VulnerabilityCVE DisclosureNetwork WormSecurity HolesExploit AnalysisFirewall ProtectionPatch Management