GHOST - stara luka w bibliotece glibc straszy linuksiarzy

29-01-2015, 11:35

Proszę bez paniki. Luka - i owszem - jest poważna (jak większość z tych, które pozwalają na zdalne wykonanie kodu), ale łatki są już dostępne.

Ubiegły rok przyzwyczaił nas do odkryć podatności zagrażających użytkownikom wielu platform. W tym roku nie ujawniono jeszcze nic na miarę Heartbleeda czy Shellshocka, chociaż dziura w bibliotece glibc narobiła już sporo zamieszania. Firma Qualys, która uważa się za odkrywcę tego błędu, nadała mu nazwę GHOST i... stworzyła widoczne poniżej logo, bo zgodnie z ostatnią modą każda luka musi mieć własne (warto przeczytać prześmiewczy komentarz lcamtufa na ten temat).

GHOST

Odłóżmy jednak żarty na bok, bo luka jest naprawdę poważna. Występuje w standardowej bibliotece języka C używanej w systemach GNU/Linux i pozwala na wykonanie dowolnego kodu w wyniku przepełnienia bufora w funkcji __nss_hostname_digits_dots(). Na atak podatne są usługi, które przekształcają nazwy DNS na adresy IP (i na odwrót) za pomocą funkcji z rodziny gethostbyname*().

Chociaż funkcje te mają status „deprecated” (nie zaleca się ich stosować), bez problemu znajdziemy aplikacje, które nadal ich używają. Pracownicy firmy Qualys przygotowali kod proof-of-concept wykorzystujący omawiany błąd w serwerze pocztowym Exim. Lista podatnych aplikacji jest oczywiście dłuższa, znajdują się na niej m.in. clockdiff, procmail i pppd. Eksperci podkreślają, że wykorzystanie luki wymaga często odpowiedniej konfiguracji atakowanej usługi.

Oficjalnym identyfikatorem GHOST-a jest CVE-2015-0235, pełny opis techniczny błędu można znaleźć w archiwum listy dyskusyjnej oss-sec. Na uwagę zasługuje kod programu, napisanego oczywiście w C, który po skompilowaniu i uruchomieniu informuje użytkownika, czy wykorzystywana przez niego wersja Linuksa jest podatna na atak (jeżeli nie macie ochoty przekopywać się przez szczegóły techniczne, możecie skopiować ten kod z Niebezpiecznika).

Najkrócej mówiąc, jeżeli Wasz system używa biblioteki glibc od wersji 2.2 do 2.17, czas pomyśleć o łataniu. Odpowiednie aktualizacje są już dostępne dla systemów: Ubuntu, Debian, Red Hat Enterprise i CentOS. Na blogu Matasano Security można znaleźć listę zagrożonych dystrybucji i dostępnych poprawek. Po ich zainstalowaniu nie zapomnijcie o zrestartowaniu wszystkich usług, które wykorzystują glibc.

Jak łatwo zauważyć, błąd w kodzie biblioteki pojawił się w roku 2000 i przetrwał - nie, nie do teraz - do roku 2013, kiedy to został załatany. Wydanej wówczas aktualizacji nie zakwalifikowano jako związanej z bezpieczeństwem, dlatego większość dystrybucji o długim okresie wsparcia nadal jest podatna na atak.

Mało tego, jak informuje Zaufana Trzecia Strona, w sierpniu 2014 roku lukę w glibc zauważyli programiści Google'a pracujący przy Chromium i ChromeOS. Teraz mamy więc do czynienia z trzecim odkryciem wciąż tej samej luki. Miejmy nadzieję, że doprowadzi to w końcu do skutecznego jej usunięcia.

Czytaj także: Zdobyć flagę... i to nie jedną - wywiad z drużyną Dragon Sector, zwycięzcą międzynarodowych zawodów CTF


Tematy pokrewne:  

tag Qualystag luki krytycznetag lukitag Linuxtag glibctag GHOSTtag exploittag DNS
  
znajdź w serwisie

RSS - Wywiad
Wywiad  
RSS - Interwencje
RSS - Porady
Porady  
RSS - Listy
Listy  
« Wrzesień 2019»
PoWtŚrCzwPtSbNd
 1
2345678
9101112131415
16171819202122
23242526272829
30