Objavljeno: 27.9.2024
Povzetek
Veriga ranljivosti v sistemu OpenPrinting CUPS napadalcu omogoča, da ob določenih pogojih izvede poljubno programsko kodo na ranljivem sistemu s pravicami uporabnika ‘lp’.
Opis
26.9.2024 je bil objavljen članek z opisom štirih ranljivosti sistema OpenPrinting CUPS v operacijskem sistemu GNU/Linux. Ranljivosti napadalcu omogočajo, da na sistem namesti nov tiskalnik (ali nadomesti obstoječega), na sistem odloži posebej prirejeno datoteko, ki se zažene, če uporabnik uporabi novi tiskalnik za tiskanje.
Verigo ranljivosti do izvedbe programske kode je možno izkoristiti ob sledečih pogojih:
- na sistemu teče strežnik cups-browsed;
- napadalec ima omrežni dostop do sistema na vratih UDP/631, bodisi preko javnega interneta ali zasebnega omrežja;
- napadalec prepriča uporabnika ranljivega sistema, da poskuša tiskati na tiskalnik, ki ga je ustvaril napadalec.
Ranljive verzije
CVE | Ranljiva programska oprema | CVSS |
CVE-2024-47176 | cups-browsed <= 2.0.1 | 8.4 |
CVE-2024-47076 | libcupsfilters <= 2.1b1 | 8.6 |
CVE-2024-47175 | libppd <= 2.1b1 | 8.6 |
CVE-2024-47177 | cups-filters <= 2.0.1 | 9.1 |
Priporočeni ukrepi
Uporabnikom svetujemo namestitev popravkov, ko bodo ti na voljo. Predvidoma bodo popravki na voljo preko standardnih načinov posodabljanja GNU/Linux distribucij.
Do izdaje popravkov lahko uporabniki izvedejo mitigacijske ukrepe. Ukaz, s katerim se preveri, ali na sistemu teče cups-browsed strežnik:
$ sudo systemctl status cups-browsed
Če zgornji ukaz izpiše, da cups-browsed ni nameščen ali je neaktiven, sistem ni ranljiv.
V primeru, da je strežnik cups-browsed aktiven in se ga ne potrebuje, se ga lahko onemogoči s spodnjim ukazom:
$ sudo systemctl stop cups-browsed
$ sudo systemctl disable cups-browsed
Če se strežnik potrebuje, se lahko izkoriščanje ranljivosti onemogoči tako, da se v konfiguracijsko datoteko /etc/cups/cups-browsed.conf doda:
BrowseRemoteProtocols dnssd cups BrowseRemoteProtocols none
in se strežnik znova zažene:
$ sudo systemctl restart cups-browsed