Od pewnego czasu - nie wiadomo dokładnie jak długiego, bo sprawa wyszła na jaw dopiero niedawno - z różnych miejsc w Internecie wysyłane są pod różnymi adresami dziwne, nie wiedzieć czemu służące pakiety danych. Wyglądają na pozór przypadkowo, ale gdy zestawić wiele takich przypadków naraz, zaczynają wyglądać na celową, skoordynowaną działalność. Sprawa ta, znana pod hasłem "RST+ACK", od kilku miesięcy zaprząta uwagę kilkunastu przynajmniej administratorów sieci komputerowych w Polsce. Łamią sobie oni głowę nad tą zagadką, nie mogąc dociec, kto i w jakim celu wysyła owe pakiety.
Na trop dziwnych pakietów wpadł jako pierwszy administrator sieci w firmie tp.internet, Michał Zalewski, znany bardziej w środowisku internetowym pod pseudonimem "lcamtuf". Oddajmy mu głos; jest piątek, 30 czerwca 2000 r.:
"Wczoraj po południu uruchomiłem w firmie nowy segment sieci - w nowo przyznanej klasie adresowej. Nie miał wpisów DNS/rDNS, nie stała w nim żadna maszyna. Na routerze ruch był całkowicie wycięty. Z ciekawości - aby sprawdzić, czy któryś z pracowników nie będzie próbował czegoś podłączać w tej sieci - uruchomiłem na noc logowanie pakietów. Ot, taki pomysł.
Gdy przyszedłem rano, zerknąłem do logów. Oprócz kilku moich testowych prób połączeń do tej sieci, zauważyłem coś dziwnego. Około drugiej w nocy dotarł do nas pakiet wyglądający na wysłany od usługi IRC na serwerze shell-1.enteract.com na jeden z adresów w tej nowej sieci, mówiący, że połączenie zostało odrzucone - miał ustawiony bit RST. I jeszcze jeden - ACK. W normalnych warunkach taki pakiet powinien stanowić odpowiedź na próbę połączenia z naszej sieci z nieistniejącą usługą IRC na tamtym serwerze.
Coś było nie w porządku. Nikt nigdy nie zainicjował żadnego połączenia na świat z tej sieci. W przeciągu pięciu godzin przed i po nadejściu tego pakietu nie działo się nic. Co więcej, maszyna, do której adresowany był pakiet, nawet nie istniała.
Podejrzewałem, że ktoś inny próbował połączyć się z tamtym serwerem, podszywając się zupełnie losowo pod jakiś host w sieci, i wypadło na nas. Tylko po co? I po co chciał nawiązać połączenie z nieistniejącą usługą? Tylko jeden raz? Atak DoS? Bez sensu. Pomyłka? Mało prawdopodobne.
Nie miałem pomysłu. Z ciekawości zajrzałem do logów na innym routerze - obsługującym zupełnie inne fizyczne i logiczne łącze, operującego na innej klasie adresów. Wiedząc już czego szukać, udało mi się wyłowić szukany pakiet z kilkunastu megabajtów danych. Był! Tym razem z serwera shell-3.enteract.com, tego samego dnia, o tej samej godzinie. Pojedynczy pakiet na nieistniejący adres, znów z portu IRC w podsieci EnterAct'a, choć z innej maszyny. Nie zauważyłem żadnych innych pakietów pod adresem żadnego z pozostałych komputerów w tej klasie."
Tak się zaczęło... Michał wysłał list z informacją o tym zdarzeniu na kilka grup dyskusyjnych i poprosił administratorów innych sieci, którzy logują ruch na swoich routerach, aby poszukali podobnych pakietów. Okazało się, że te dwa zdarzenia nie były bynajmniej odosobnionym przypadkiem:
"Dwudziestego ósmego, dwa dni temu, od godziny 7:00 (północ w USA) do północy naszego czasu trwał powolny, systematyczny i właściwie niezauważalny skaning z tajemniczej maszyny. Pakiety przychodziły w dużych, losowych odstępach czasu, od pięciu minut do godziny, co gwarantowało, że nie wykryłyby ich jakiekolwiek systemy Intrusion Detection ani analizujące ruch. Takie same pakiety, jak dziś w nocy. Wszystkie z portu IRC, niemal wszystkie trafiające w nieistniejące adresy. Jedyna różnica: ta maszyna, z której nadeszły pakiety, ma otwarty port IRC.
Maszyna miała adres 216.32.132.250, w odwrotnym DNSie wpis: vip-testing.sntc04.exodus.net. Wpis ten nie rozwijał się w drugą stronę."
Bliższa analiza adresów, na które wysyłane były pakiety, wykazała, że tajemniczy skaning "trafiał" głównie w takie adresy IP, które powinny znajdować się na granicach niewielkich, liczących po 16 adresów, podsieci (maska 255.255.255.240), jakie zwykle providerzy Internetu przydzielają swoim klientom. Testowano adres sieci (np. x.x.x.0, x.x.x.16, x.x.x.32 ...) oraz pierwszy i ostatni adres w danej podsieci. Próby nigdy nie trafiły dwa razy w ten sam adres. Co ważne, z większości adresów, które skanowano, nigdy nie został wysłany żaden pakiet, gdyż pod tymi adresami nie było po prostu podłączonych żadnych komputerów.
Taki wybór adresów do skanowania umożliwiałby intruzowi, na podstawie odpowiedzi na wysyłane pakiety, stosunkowo łatwe określenie struktury skanowanej sieci. Co ważne, taki pakiet, wyglądający jak "normalne" odrzucenie połączenia TCP, przedostanie się przez większość firewalli, wyjąwszy tylko te najbardziej zaawansowane, uwzględniające logiczne zależności między kolejnymi wysyłanymi pakietami.
Tylko czy na taki pakiet w ogóle powinna być jakakolwiek odpowiedź? Przestudiowanie specyfikacji protokołu TCP/IP, zawartej w dokumencie RFC 793, prowadzi do wniosku, że komputer, do którego adresowany jest pakiet z ustawionymi bitami RST i ACK, nie powinien w ogóle na niego odpowiedzieć! Całe działanie wydaje się zatem być bez sensu...
Jednak przypomnijmy sobie, że większość pakietów wysyłana była na nieistniejące adresy! Jaki będzie efekt, jeżeli skanujący "spudłuje" z takim pakietem? Z prawdopodobieństwem dużo większym niż przy innych metodach skanowania, ostatni router na drodze do docelowego adresu, nie mogąc dostarczyć pakietu, odeśle nadawcy pakiet ICMP "host/network unreachable", standardowo używany w protokole TCP/IP do sygnalizowania takich sytuacji. Chodzi zatem nie o trafianie, tylko właśnie o pudłowanie - wtedy bowiem atakujący otrzymuje odpowiedź! Michał postanowił napisać program, który pozwoli sprawdzić, co intruz może wywnioskować z takiej odpowiedzi.
Okazało się, że bardzo wiele: adres ostatniego routera przed atakowaną siecią, "odległość" (liczbę routerów) pomiędzy intruzem i owym routerem, sposób filtrowania pakietów w ewentualnym firewallu, a nawet z dużym prawdopodobieństwem typ systemu operacyjnego, używanego w routerze!
Ktoś wymyślił zatem bardzo skuteczną, a przy tym bardzo trudno wykrywalną technikę analizy struktury sieci. Pytanie, kto i po co to robi? Jak szeroki jest zasięg skanowania? Czy obejmuje ono tylko (taka była pierwotna hipoteza, obecnie wiadomo już, że fałszywa) klasy adresowe należące do TPSA i jej klientów, czy też całą Polskę, a może cały świat? Nie wiadomo, jak długo już trwa skanowanie (na pewno przynajmniej od 28 lutego - pod tą datą został znaleziony w logach jednej z sieci najstarszy jak dotąd wpis świadczący o tego typu pakiecie) i co ewentualnie po nim nastąpi (jeśli nastąpi), ale jedno wydaje się oczywiste. Dla pojedynczej osoby wartość informacji uzyskanych z takiego skanowania jest znikoma. Znaczą one wiele dopiero wtedy, gdy obejmują duże obszary sieci. Ktoś, kto za tym stoi, wkłada bardzo wiele pracy w to, aby pozostać niewykryty. Wszystko wskazuje zatem na działania jakiejś dużej firmy lub organizacji, która chce całą sprawę utrzymać w tajemnicy. W innym przypadku stosunek wartości informacji do nakładów pracy jest zbyt niski.
Na działania dużej organizacji wskazuje też fakt, że znalezione początkowo serwery nie są bynajmniej jedynymi, które wysyłają dziwne pakiety z ustawionymi bitami RST i ACK. W chwili obecnej na liście "podejrzanych" maszyn, prowadzonej przez Michała Zalewskiego, znajduje się około 30 adresów nadesłanych przez administratorów sieci z całej Polski. Komputery te rozproszone są po całym Internecie, w sieciach różnych operatorów - głównie w USA i Brazylii, ale także w innych krajach, np. Austrii czy Szwecji.
Osoby zajmujące się tą zagadką początkowo skierowały na fałszywy trop inne anormalne sekwencje pakietów, które również odkryto w analizowanych logach. Znaleziono otóż grupę serwerów, wysyłających do różnych sieci całe serie pakietów typu ping oraz usiłujących nawiązać połączenie z usługą DNS (w razie powodzenia połączenie to było od razu zrywane). Przynajmniej tę tajemnicę udało się jednak dość szybko wyjaśnić. Wszystkie problematyczne adresy okazały się być urządzeniami do równoważenia ruchu w sieci pomiędzy wiele serwerów (tzw. load balancerami), należącymi do domeny starmedia.com. Oczywiście otwartym pozostaje pytanie, dlaczego urządzenia te "bombardują" tego rodzaju pakietami obce sieci - przy normalnej pracy nie powinny się tak zachowywać - jednak dość uzasadnione może tu być przypuszczenie, że jest to po prostu efektem błędu w ich konfiguracji, bądź wręcz w samym oprogramowaniu. W każdym razie aktywność ta nie wydaje się mieć wiele wspólnego z zauważonymi wcześniej podejrzanymi pakietami RST+ACK.
Co do tych ostatnich, nadal nie wiadomo, kto lub co się za nimi kryje. Można tylko formułować pewne hipotezy, które postaram się poniżej przedstawić.
Być może z tajemniczym skanowaniem ma pewien związek informacja, która zamieszczona została 7 lipca br. w serwisie informacyjnym SecurityFocus (http://www.securityfocus.com/news/56). Mowa w niej o nieznanej firmie z Doliny Krzemowej - Quova Inc. - która od kilku miesięcy prowadzi systematyczne skanowanie całego Internetu, wywołując zaniepokojenie administratorów sieci na całym świecie. Firma nie chce ujawnić, w jakim celu przeprowadza skanowanie, trzyma też w tajemnicy informacje, czym właściwie się zajmuje.
Firma Quova podłączona jest do sieci operatora Exodus. Komputery, z których pierwotnie stwierdzono wysyłanie pakietów RST+ACK, również należały do tej samej sieci. Nie musi to jednak świadczyć o jakimkolwiek związku, gdyż Exodus jest wielkim providerem Internetu, z którego usług korzystają tysiące firm w USA. Firma opisana w artykule dokonywała ponadto skanowania wykorzystując zwykłe, stosowane powszechnie przez użytkowników sieci, techniki typu ping i traceroute. Skanowanie takie jest wyraźnie widoczne, i - jak wspomniano w informacji SecurityFocus - odnotowywane było przez systemy wykrywania ataków w szeregu skanowanych sieci. Nie pasuje to do bardzo dyskretnego, niemal niewykrywalnego sposobu przeprowadzania skanowania za pomocą tajemniczych pakietów. Niemniej jednak, w wiadomości z SecurityFocus wspomina się, że wobec protestów administratorów firma Quova postanowiła... nie, wcale nie zaprzestać skanowania, lecz zmienić jego technikę na znacznie trudniej wykrywalną, tak aby "przelatywać niezauważenie przez radary firewalli i systemów wykrywania ataków". Więc może jednak...?
Wedle innej hipotezy, związek z tajemniczym skanowaniem może mieć Lance Spitzner, znany ekspert od bezpieczeństwa sieci, pracujący obecnie w firmie Sun Microsystems. Jego strona prywatna, zawierająca skądinąd mnóstwo ciekawych informacji na temat skanowania sieci i technik jego wykrywania, znajduje się pod adresem http://www.enteract.com/~lspitz/, tymczasem pierwsze zaobserwowane pakiety RST+ACK pochodziły właśnie z serwerów w domenie enteract.com! Co ciekawe, po e-mailu wysłanym przez Michała Zalewskiego do Lance Spitznera z pytaniem o pakiety RST+ACK skanowania z domeny enteract.com nagle ustały! (Jednak nie całkowicie; pakiety z tej domeny pojawiły się ponownie mniej więcej w miesiąc później). Przypadek, czy...?
Niezależnie od tego, kto stoi za tym skanowaniem, pozostaje jeszcze druga zagadka: po co to robi? Najprostszą hipotezę - iż ktoś robi np. badania statystyczne popularności różnych typów routerów w sieci (przypomnijmy sobie, że z odpowiedzi routera na pakiet RST+ACK można odczytać m.in. typ używanego przez router systemu operacyjnego) - można chyba odrzucić. Przydatność uzyskanych w ten sposób wyników nie byłaby warta nakładu pracy potrzebnego do zrealizowania takiego skanowania. Poza tym, dlaczego ktoś prowadzący badania statystyczne tak bardzo starałby się ukryć swoją aktywność?
Pozostaje zatem druga możliwość - tworzenie mapy Internetu, odwzorowującej dokładny układ połączeń między poszczególnymi sieciami i routerami. Mapy Internetu sporządzano oczywiście już niejednokrotnie w celach badawczych: przykładem może być np. The Internet Mapping Project, prowadzony przez laboratoria Bella i Carnegie-Mellon University w latach 1998-1999 (http://cm.bell-labs.com/who/ches/map/), czy obecny projekt organizacji CAIDA (http://www.caida.org/analysis/topology/as_core_network/). Jednak sposób przeprowadzania interesującego nas skanowania nie pasuje do tego, co wiadomo o jakichkolwiek ogólnie znanych projektach map Internetu, co prowadzi do wniosku, że chodzi tu o mapę tajną, i być może znacznie dokładniejszą niż mapy wykonywane w ramach dotychczasowych jawnych projektów.
Kto i po co mógłby potrzebować takiej mapy? Pierwszą nasuwającą się odpowiedzią jest - oczywiście wojsko! Strategiczne znaczenie sieci rośnie w ogromnym tempie. Nie od dziś mówi się, że wojna przyszłości będzie przede wszystkim wojną elektroniczną. Wyobraźmy sobie, że ktoś z ekspertów będących na usługach armii USA znalazł jakiś poważny błąd w kodzie systemu operacyjnego pewnego typu routerów (np. firmy Cisco, które stanowią znakomitą większość routerów używanych w Internecie). Nie musi to być zresztą błąd - może to być celowo wprowadzony przez producenta, za namową np. NSA, backdoor, umożliwiający unieruchomienie systemu odpowiednim tajnym kodem przysłanym z zewnątrz. Dysponując odpowiednio szczegółową mapą Internetu, wojskowi będą wiedzieć, które routery należy zaatakować w razie wojny, aby pozbawić określony fragment Sieci - np. terytorium określonego państwa, bądź jego część - łączności ze światem. Dlaczego Pentagon ma np. narażać się na ataki hackerów z państw, przeciwko którym USA prowadzi wojnę - tak jak w czasie niedawnej wojny na Bałkanach? Nie prościej ich odciąć od Internetu...?
Może być też inaczej. Być może mapę sporządza ktoś związany z amerykańskimi korporacjami zaangażowanymi w projekt Internet 2. Jak wiadomo, Internet 2, oprócz tego, że będzie znacznie szybszy, ma zawierać mechanizmy autoryzacji użytkownika oraz cenzurowania "niepożądanych" treści. Wyobraźmy sobie teraz, że ktoś skutecznie zaatakował główne routery światowego szkieletu. Internet praktycznie rozpada się na setki niezależnych od siebie małych sieci. Scenariusz taki wcale nie jest nierealny - jak pokazuje studium zamieszczone w czasopiśmie "Nature" z 27 lipca br. (http://www.nature.com/nature/fow/000727.html) do pozbawienia Internetu funkcjonalności wystarczy zaatakowanie 4% najważniejszych routerów. I co wtedy? Amerykańskie korporacje stwierdzają, iż stało się tak dlatego, iż ten "stary" Internet był zbyt mało bezpieczny, i kiedyś w końcu musiało się coś takiego zdarzyć. Proponują zatem rządom wprowadzenie lepszego i bezpieczniejszego Internetu 2. A rządy na to ochoczo przystają - no bo jakże by nie, skoro przy okazji będą mogły wyeliminować z sieci tych wszystkich paskudnych hackerów, piratów, pornografów, terrorystów i przeciwników politycznych?
A może to nie Internet 2, może to właśnie terroryści? Gospodarka wielu krajów już w tej chwili zależy od Internetu w sposób krytyczny - czy w takim razie zamiast podkładania bomb, nie jest skuteczniejszą formą terrorystycznych ataków unieruchamianie wybranych kluczowych routerów?
Jedno jest pewne. Tajemnicze skanowania są faktem. Ktoś, kto ich dokonuje, najprawdopodobniej nie robi tego w niewinnym celu. Dlatego istotne jest zgromadzenie na ten temat jak największej liczby informacji. Stąd też chcielibyśmy tym artykułem przyłączyć się do prośby Michała Zalewskiego do wszystkich polskich administratorów sieci o pomoc w śledzeniu źródeł tajemniczych pakietów. Główna strona WWW z informacjami na ten temat (na których w znacznym stopniu oparłem się w tym tekście) znajduje się pod adresem: http://lcamtuf.hack.pl/wtf/. Strona ta jest stale aktualizowana i pojawiają się tam wszelkie nowe wiadomości, które mogą rzucić światło na sprawę. Utworzona została lista dyskusyjna i kanał IRC poświęcony wspomnianemu zagadnieniu - o tym, jak przyłączyć się do dyskusji, można również dowiedzieć się na wspomnianej stronie. Wreszcie, można stamtąd pobrać narzędzie, służące do monitorowania ruchu w sieci i zbierania danych o podejrzanych pakietach.
Jeszcze raz zachęcamy do udziału w projekcie - być może dzięki wspólnym wysiłkom zagadka pakietów RST+ACK za jakiś czas przestanie być zagadką...
Powrót do wykazu artykułów o Internecie | Statystyka |