Nowo odkryta seria czterech niebezpiecznych błędów w Wspólny system drukowania Unix (Cups), który jest używany między innymi w praktycznie wszystkich dystrybucjach GNU/Linux, w tym w Debianie, Red Hat i SUSE, a także w Apple macOS i Google Chrome/Chromium, wywołuje alarm wśród specjalistów ds. bezpieczeństwa w związku z potencjalnym zakresem problem.
Cztery luki odkryła badaczka Simone Margaritelli, znana również jako evilsocket, która opublikował swój wstępny opis i ocenę po opublikowaniu ograniczonych szczegółów za pośrednictwem GitHuba, co wydawało się być wyciekiem przed skoordynowanym ujawnieniem – coś, co według Computer Weekly nie miało mieć miejsca do niedzieli 6 października.
W swoim tekście Margaritelli stwierdził, iż próbując przestrzegać odpowiedzialnego procesu ujawniania informacji, musiał walczyć z lekceważącymi programistami, którzy nie chcieli traktować problemu poważnie.
Luki są śledzone jako CVE-2024-47176, CVE-2024-47076, CVE-2024-47175 i CVE-2024-47177 i uważa się, iż łącznie ponad 76 000 urządzeń – z czego 42 000 akceptuje publicznie dostępne połączenia – może być zagrożony. W swoim poście Margaritelli zasugerował, iż liczba ta może być znacznie wyższa i prawdopodobnie dotyczy to od 200 000 do 300 000 urządzeń. Namawiał użytkowników do wyłączania i usuwania usług Cups, jeżeli ich nie potrzebują.
Stan nietrzeźwy skutecznie służy jako standardowy system drukowania dla systemów operacyjnych typu Unix, który zasadniczo pozwala komputerom działać jako serwery druku, a maszyna z systemem Cups działa jako host, który przyjmuje zadania drukowania od klientów, przetwarza je i przypisuje do drukarki. W niektórych przypadkach – ale w innych nie – jest domyślnie włączona – jest szeroko stosowana w środowisku naturalnym.
Połączone razem luki umożliwiają nieuwierzytelnionemu atakującemu osiągnięcie celu zdalne wykonanie kodu (RCE) przed wrażliwymi systemami, jeżeli uda im się dodać do komputera „duchową” drukarkę ze złośliwym adresem URL protokołu IPP (Internet Printing Protocol), a następnie rozpocząć na niej zadanie drukowania. Nie pozwala jednak osobie atakującej na samodzielne rozpoczęcie zadania drukowania na serwerze ofiary – co oznacza, iż jeśli maszyny nie otrzymają zadań drukowania, atak nie będzie mógł zostać uruchomiony.
Saeed Abbasi, menedżer produktu ds Jednostka Badań nad Zagrożeniami Qualyspowiedział: „Te luki umożliwiają zdalnemu, nieuwierzytelnionemu atakującemu po cichu zamienić adresy URL IPP istniejących drukarek na złośliwe. W związku z tym po zainicjowaniu zadania drukowania na komputerze, którego dotyczy problem, może nastąpić wykonanie dowolnego polecenia. Osoba atakująca może wysłać specjalnie spreparowany pakiet UDP na port 631 za pośrednictwem publicznego Internetu, wykorzystując luki w zabezpieczeniach bez konieczności uwierzytelniania.
„Ponieważ systemy GNU/Linux są szeroko stosowane w serwerach przedsiębiorstw, infrastrukturze chmurowej i aplikacjach krytycznych, luka ma szeroką powierzchnię ataku i potencjalnie wpływa na ogromną liczbę serwerów, komputerów stacjonarnych i urządzeń wbudowanych na całym świecie.
„Atakujący nie potrzebują ważnych danych uwierzytelniających, aby wykorzystać tę lukę. Luka umożliwia atakującym wykonanie dowolnego kodu, potencjalnie uzyskanie pełnej kontroli nad systemami, których dotyczy luka. Jego wynik CVSS wynosi 9,9, co oznacza, iż luka jest krytyczna” – powiedział Abbasi.
„Przedsiębiorstwa powinny ocenić ryzyko narażenia na systemy kubków. Ogranicz dostęp do sieci, dezaktywuj niepotrzebne usługi i wdrażaj ścisłą kontrolę dostępu. Przygotuj się do szybkiego wprowadzenia poprawek, gdy tylko łatka będzie dostępna, i dokładnie przetestuj poprawki, aby zapobiec przerwom w świadczeniu usług”.
Porównania do Log4j?
Fakt, iż łańcuch luk w zabezpieczeniach ma tak wysoką ocenę CVSS, może wskazywać, iż wykorzystanie go będzie stosunkowo proste, a według Briana Foxa, członka zarządu firmy Fundacja bezpieczeństwa otwartego oprogramowania (OSSF) i dyrektor ds. technicznych firmy Sonatyprysując porównania do Log4Shell – luka w bibliotece rejestrowania Java Apache Log4j2 odkryte w 2021 r., które przez cały czas stanowi problem – może być trafne.
„Udane wykorzystanie może być druzgocące – wszystko, od routera Wi-Fi po sieć zasilającą, działa na systemie Linux” – powiedział Fox. „To połączenie niskiej złożoności i wysokiego wykorzystania przypomina Log4Shell, chociaż skala wykorzystania jest tutaj znacznie większa.
„Rozumiem logikę stopniowego wycofywania ujawniania, ponieważ znalezienie i naprawienie tej luki zajmie trochę czasu, jednak powinniśmy się również spodziewać, iż ugrupowania zagrażające będą analizować historię błędów i szukać wskazówek do wykorzystania.
Fox dodał: „W oczekiwaniu na ujawnienie większej liczby szczegółów zespoły ds. bezpieczeństwa przedsiębiorstw muszą przeszukać swoje środowiska i SBOM, aby dowiedzieć się, gdzie mogą być podatne na ataki i przygotować się na wprowadzenie poprawek. Anuluj wakacje… to może być wyścig z napastnikami”.
Zespół badawczy przy JŻabajednak zajął odmienne stanowisko i wstrzymywał się od scharakteryzowania luk w zabezpieczeniach Cups jako zdarzenia w stylu Log4Shell, twierdząc, iż ich zdaniem warunki wstępne wykorzystania luki nie są tak powszechne.
„Chociaż nie opublikowano żadnych poprawionych wersji ani w projektach nadrzędnych, ani w żadnej dystrybucji Linuksa, osoby, których to dotyczy, mogą złagodzić te luki bez aktualizacji, wyłączając i usuwając usługę przeglądaną przez Cups, blokując cały ruch do portu UDP 63 i cały ruch DNS-SD ”- powiedział Shachar Menashe, starszy dyrektor JFrog Security Research.