Posts Tagged ‘DoS’

Luki w implementacjach TCP – dotyczy większości producentów

9 September 2009

TCP DoSFiński zespół CERT-FI opublikował informacje na temat luk w implementacjach stosu TCP zgodnych z RFC793. O problemie informowaliśmy w czerwcu tego roku w artykule Podatność w implementacjach TCP – nowa technika ataków DoS.

Problem jest poważny, ponieważ dotyczy produktów wielu producentów – w praktyce może się okazać, że nawet wszystkich systemów i aplikacji, które korzystając z protokołu TCP! Mogą być to zarówno serwery, inne urządzenia sieciowe, jak i komputery desktopowe, czy nawet urządzenia mobilne. Właściwie podatności wynikają bardziej z winy projektantów protokołu, niż z winy producentów, którzy zastosowali się do specyfikacji. Po szczegóły odsyłamy do wyżej wymienionego artykułu.

Póki co efektem wykorzystania luk może być destabilizacja systemu (atak Denial-of-Service), choć to zależy od poszczególnych implementacji stosu (czasami proces ten może zająć minuty, innym razem nawet godziny). Jednakże badania cały czas trwają i niewykluczone jest inne użycie błędów.

Dzięki współpracy między kilkudziesięcioma producentami oraz zespołami Computer Emergency Response Team z Finlandii (CERT-FI) oraz Japonii (JPCERT/CC) możliwe było zdiagnozowanie problemu i opracowanie rozwiązań. W rezultacie wielu producentów wypuściło poprawki, m.in.:

(more…)

Nowa luka w Windows Vista

9 September 2009

Microsoft Vista B.S.O.D.
W dniu 7 września 2009, Laurent Gaffié opublikował szczegóły nowej podatności systemu operacyjnego Windows Vista. Wykorzystana jest w tym przypadku wadliwa obsługa protokołu SMB2.0, która może być wykorzystana nie tylko do ataku typu denial-of-service (jak początkowo zaklasyfikowano tę podatność), ale również do zdalnego wykonania kodu na maszynie ofiary.

Rubén Santamarta przeprowadził analizę podatności, obecną w module SRV2.SYS. Wartość pola Process ID High w nagłówku SMB jest tam wykorzystywana bez jakiejkolwiek kontroli jako indeks tablicy funkcji. Można w ten sposób łatwo wskazać obszar pamięci, znajdujący się poza tą tablicą i doprowadzić do zawieszenia systemu (w najprostszym przypadku) lub do wykonania niepożądanego kodu.

W chwili pisania tego artykułu, poprawka likwidująca to zagrożenie nie była jeszcze dostępna. Opublikowane zostało natomiast Microsoft Security Advisory opisujące kroki, które należy podjąć w celu zminimalizowania ryzyka związanego z tą luką. Warto nadmienić, że system Windows 7 jest podatny na tego typu atak jedynie w wersji Release Candidate. Użytkownicy finalnej wersji tego systemu nie są dotknięci tym zagrożeniem. Aby zabezpieczyć się przed atakami w przypadku systemu Windows Vista, wystarczy aby profil sieci ustawiony był jako ‘Publiczny’ – spowoduje to blokowanie połączeń TCP przychodzących na port 445, który jest wykorzystywany do tego ataku.
(more…)

0-day exploit na Microsoft IIS, a łaty brak

4 September 2009

IIS FTP exploit - NLSTOd ostatniego dnia sierpnia dostępny jest w Internecie exploit wykorzystujący nieznaną wcześniej lukę w usłudze FTP popularnego oprogramowania serwerowego Microsoft Internet Information Services (IIS). Firma z Redmond do tej pory nie wydała łaty usuwającej niebezpieczeństwo, ale – jak zapewnia – cały czas nad tym pracuje.

Problem tkwi w parserze nazw katalogów – użycie komendy NLST (NAME LIST) ze specyficznym ciągiem znaków powoduje przepełnienie bufora stosu (stack-based buffer overflow). W wyniku tego możliwe jest wykonanie dowolnego kodu na atakowanym systemie, lub ewentualnie zawieszenie aplikacji (atak Denial-of-Service).

Aby tak się stało, atakujący musi mieć dostęp do konta użytkownika na serwerze FTP, który ma prawo do zapisu (by utworzyć katalog o ’specjalnej’ nazwie). Upubliczniony pierwotnie exploit (jak i te późniejsze) wykorzystują użytkownika anonymous. Oczywiście istnieje także możliwość włamania się na inne konto, np. łamiąc hasło.

Podatne na atak są wersje IIS 5.0 (Windows 2000), IIS 5.1 (Windows XP) oraz IIS 6.0 (Windows Server 2003). IIS 7.0 (Windows Vista, Windows Server 2008) nie jest zagrożony. Tymczasowym rozwiązaniem (tzw. workaround), a właściwie oddaleniem problemu, jest odebranie praw zapisu dla konta typu anonymous i innych bezhasłowych. Ewentualnie wyłączenie w usłudze FTP tych kont. Należy jednak pamiętać, że to rozwiązanie nie gwarantuje bezpieczeństwa – działa tylko na upublicznione do tej pory exploity. Dalej istnieje możliwość ataku z poziomu innych użytkowników. Istnieje jeszcze rozwiązanie blokowania z poziomu systemu plików NTFS możliwości tworzenia katalogów przez użytkowników z grupy FTP, ale to dotknie wszystkie konta FTP oraz zabezpieczy przed wstrzyknięciem kodu, ale nie przed atakiem DoS. Kroki pokazujące jak wykonać te wszystkie operacje znajdują się w opisie luki na stronach Microsoft.

(more…)

BIND: luka remote DoS powszechnie wykorzystywana

30 July 2009

BIND9_exploitW dniu 28 lipca 2009 Micha Krause zgłosił błąd dotyczący popularnego serwera DNS — BIND9, który okazał się być podatny na zdalny atak typu DoS (Denial-of-Service).

Wykorzystanie luki umożliwia wyłączenie serwera BIND9 za pomocą pojedynczego pakietu UDP, o ile atakowany serwer DNS jest serwerem typu master przynajmniej dla jednej ze stref. Należy przy tym pamiętać, że zgodnie z RFC 1912 Common DNS Operational and Configuration Errors każdy serwer DNS powinien być podstawowym serwerem dla stref specjalnych, typu localhost, 0.0.127.in-addr.arpa, 255.in-addr.arpa, 0.in-addr.arpa.

Atak polega na wykorzystaniu mechanizmu aktualizacji DNS opisanego w RFC 2136 Dynamic Updates in the Domain Name System (DNS UPDATE). Atakujący wysyła spreparowane zapytanie do serwera DNS z ustawioną wartością opcode na 5 (UPDATE) oraz rekordem ANY w sekcji Prerequisite. Przetworzenie takiego pakietu skutkuje niespełnioną asercją w funkcji dns_db_findrdataset(), i w efekcie kończy się wyjściem serwera BIND.

Warto w tym miejscu dodać, że w sieci pojawiły się rady, jak zablokować tego typu ataki przy pomocy prostej reguły w iptables. Niestety, są one nieskuteczne ponieważ RFC 2136 2.1 stanowi, że tego typu złośliwe zapytanie może zostać wysłane również przy użyciu protokołu TCP. Zalecanym rozwiązaniem jest aktualizacja serwera BIND do najnowszej wersji. Ostatecznie można zdecydować się również na blokowanie komunikacji do serwera master, zostawiając dostępne jedynie serwery slave. Warto tutaj nadmienić, że wyłączenie funkcji dynamicznej aktualizacji (np. poprzez opcję allow-update) – nie chroni przed opisywanym atakiem. (more…)

Podatność w implementacjach TCP – nowa technika ataków DoS

23 June 2009

tcpprobetimerW październiku 2008 roku fiński zespół CERT (FICORA/CERT-FI) został poinformowany przez firmę Outpost24 zajmującą się wdrażaniem rozwiązań bezpieczeństwa sieciowego o obecności krytycznych luk w implementacjach protokołu TCP. Szczegóły odkrytych podatności nie zostały upublicznione – CERT-FI, we współpracy z firmą Outpost24 oraz kilkudziesięcioma producentami sprzętu i oprogramowania, pracują nad oszacowaniem skali problemu i opracowaniem stosownych poprawek. Dokładna charakterystyka odkrytych podatności ma zostać ujawniona, gdy producenci i deweloperzy wyeliminują je ze swoich produktów. Wiadomo jedynie, że problem dotyczy kolejkowania połączeń w protokole TCP i pozwala na przeprowadzenie ataku DoS (ang. Denial of Service). Atak wymaga ustanowienia pełnych połączeń TCP ze zdalnym hostem (ang. three-way handshake), jednak ilość ruchu konieczna do wygenerowania przez atakującego jest stosunkowo mała. Zgodnie z informacjami udostępnionymi przez fiński CERT, prace mające na celu wyeliminowanie tej podatności są na zaawansowanym etapie i najprawdopodobniej jeszcze w 2009 roku producenci wydadzą odpowiednie aktualizacje.

11 czerwca 2009 roku, w magazynie Phrack ukazał się artykuł opisujący nowy mechanizm ataku DoS . Artykuł „Exploiting TCP Persist Timer Infiniteness” autorstwa ithilgore poświęcony jest podatności związanej z mechanizmem czasu oczekiwania (ang. persist timer) wykorzystywanym w protokole TCP do kontroli przepływu (a dokładnie do eliminowania zakleszczeń przy wstrzymaniu transmisji za pomocą zerowej szerokości okna). Spekulowano, że opisany atak jest jednym z ataków zgłoszonych do Fińskiego CERT. Jednakże zespół CERT-FI stwierdził, że chociaż metoda opisana w Phrack’u dotyczy podobnych zagadnień, to nie wykorzystuje słabości protokołu TCP, których dotyczył ich komunikat, a jej upublicznienie w żaden sposób nie wpłynie na koordynowane przez ten zespół prace.

Na czym więc polega nowa metoda ataków DoS ?

Implementacja czasu oczekiwania wyspecyfikowana w dokumentach RFC powstała 20 lat temu i nie była opracowywana pod kątem ochrony przed wysublimowanymi atakami. W ciągu ostatnich lat systemy operacyjne ewoluowały stosując rozwiązania chroniące przez rozmaitymi formami złośliwej aktywności takimi jak ataki DoS, nawet kosztem częściowej niezgodności ze standardami RFC. Jednak implementacja mechanizmu persist timer w jądrach systemu Linux i *BSD (autor artykułu z Phrack’a przeprowadził testy na systemie z jądrem Linux 2.6.18, jak również na systemach *BSD) ściśle stosuje się do RFC i w rezultacie umożliwia przeprowadzenie ataku DoS poprzez wyczerpanie pamięci jądra lub limitów aplikacji sieciowej przy minimalnym wykorzystaniu łącza.

(more…)