Zidentyfikowali lukę w bibliotece GNU C

wrażliwość

Jeśli zostaną wykorzystane, te luki mogą umożliwić atakującym uzyskanie nieautoryzowanego dostępu do poufnych informacji lub ogólnie spowodować problemy

Niedawno stał się znany informacja o luce w bibliotece C standardu Glibc, skatalogowany pod numerem „CVE-2023-6246” i posiadający wynik 8.4 w skali CVSS, został zidentyfikowany przez badaczy Qualys.

Słaby punkt CVE-2023-6246 umożliwia manipulowanie uruchamianiem aplikacji SUID w celu wykonania uprzywilejowanego kodu i pochodzi z przepełnienia bufora w funkcjach vsyslog_internal() używanych podczas wywoływania funkcji syslog() i vsyslog().

Informacje o CVE-2023-6246

Ten problem jeste występuje z powodu błędu podczas próby wygenerowania zbyt długiej nazwy aplikacji poprzez makro SYSLOG_HEADER. Podczas próby rozszerzenia bufora na podstawie długiej nazwy następuje przepełnienie, w wyniku czego dane są zapisywane w oryginalnym buforze o mniejszym rozmiarze.

Luki zidentyfikowane w funkcjach syslog i qsort glibc podkreślają krytyczny aspekt bezpieczeństwa oprogramowania: nawet najbardziej podstawowe i zaufane komponenty nie są odporne na awarie. Konsekwencje tych luk wykraczają daleko poza pojedyncze systemy i wpływają na wiele aplikacji i potencjalnie miliony użytkowników na całym świecie. Celem tego artykułu jest rzucenie światła na specyfikę tych luk, ich potencjalne skutki oraz środki podjęte w celu ich ograniczenia.

Organizując atak za pośrednictwem narzędzia SU, Osoba atakująca może zmienić nazwę procesu podczas uruchamiania aplikacji, zastępując wartość argv[0]., który służy do uzyskania informacji o nazwie programu podczas wysyłania do rejestru i uzyskania kontroli nad zapisem danych z przydzielonego bufora. Można następnie użyć funkcji Overflow do nadpisania struktury nss_module w bibliotece nss w celu utworzenia biblioteki współdzielonej i załadowania jej jako root

Problem występuje od wydania glibc 2.37, wydany w sierpniu 2022 r., który zawierał zmianę mającą na celu obsługę sytuacji polegającej na próbie pisania zbyt dużych wiadomości. Poprawka została zaktualizowana do glibc 2.36 i pakietów dystrybucyjnych z wcześniejszymi wersjami glibc, ponieważ usuwała lukę, jednocześnie zajmując się inną, mniej poważną luką. Okazało się, że załatanie niegroźnej luki spowodowało pojawienie się krytycznego problemu. Warto wspomnieć, że podobną lukę zgłoszono w 1997 roku w funkcji vsyslog() biblioteki libc 5.4.3.

Odkrycie luk w funkcjach syslog i qsort biblioteki GNU C budzi poważne obawy dotyczące bezpieczeństwa. 

Badacze Qualys, którzy odkryli tę lukę, przetestowali kilka popularnych systemów instalacyjnych opartych na Linuksie i potwierdzili, że kilka z nich było podatnych, w tym Debian 12/13, Ubuntu 23.04/23.10 i Fedora 37-39.

do wykazać lukę, badacze opracowali działający exploit co pozwala uzyskać prawa roota poprzez manipulację argumentami wiersza poleceń podczas uruchamiania narzędzia SU. Exploit wykazał możliwość uzyskania praw roota przez nieuprzywilejowanego użytkownika i został wykonany w całkowicie zaktualizowanym środowisku Fedory 38 ze wszystkimi mechanizmami ochrony włączonymi w domyślnej konfiguracji. Lukę można wykorzystać wyłącznie lokalnie, ponieważ wymaga ona przekazania więcej niż 1024 bajtów przez parametr argv[0] lub argument ident do funkcji openlog().

Ze strony naprawienie luki, wspomina się, że została ona już uwzględniona w bazie kodu Glibc i będzie częścią aktualizacji Glibc 2.39 wraz z poprawkami dwóch kolejnych luk (CVE-2023-6779, CVE-2023-6780), które również wpływają na kod __vsyslog_internal() i powodują przepełnienie bufora.

Ponadto Qualys ostrzegł o wykryciu przepełnienia bufora w implementacji funkcji qsort(), co nie zostało zaklasyfikowane przez twórców Glibc jako podatność, gdyż wykorzystanie polega na wykorzystaniu nietypowej funkcji porównawczej jako argumentu poprzez wywołanie funkcji qsort , która zwraca różnicę porównywanych parametrów.

Na koniec, jeśli chcesz dowiedzieć się więcej na ten temat, możesz sprawdzić status luki na następujących stronach: DebianUbuntuSUSERHELFedoraArch LinuxGentooSlackware

źródło: https://blog.qualys.com


Bądź pierwszym który skomentuje

Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: AB Internet Networks 2008 SL
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.