Teraz jednak przejdziemy do tego, co potrafią robić prawdziwe rekiny. Ich bronią jest między innymi spoofing. Jak można sprawdzić, angielski termin spoof oznacza naciąganie, szachrajstwo. Spoofing polega więc na tym, że haker usiłuje "naciągnąć" komputer atakowanego użytkownika, żeby ten sam podał mu tajne informacje. Najczęściej polega to na wpuszczeniu do sieci przez hakera sfałszowanego komunikatu, który dla ludzi jest niewidoczny, ale komputery skłania do różnych działań - oczywiście takich, które są zgodne z przestępczymi planami hakera.
Przykładem takiego działania może być tak zwany ARP-spoofing. Żeby zrozumieć, na czym ten atak polega, wyjaśnijmy najpierw, skąd komputery wiedzą, do kogo wysłać albo od kogo odebrać informację w sieci? Do tego celu służą adresy. Każda wiadomość przekazywana w sieci jest zaadresowana. Wspominałem już o tym opisując w zeszłym tygodniu wysyłanie i odbieranie informacji w sieci Ethernet. Każdy komputer ma kartę sieciową, a ta karta jest wyposażona przez producenta w unikatowy (jedyny na świecie!) adres MAC. Jednak prowadzenie korespondencji email (czy jakiejkolwiek innej wymiany informacji między komputerami) na podstawie adresów MAC byłoby z różnych względów niewygodne, więc komputery w sieci mają przydzielone dodatkowo tak zwane adresy IP (od słów Internet Protocol), na podstawie których komunikacja odbywa się szybciej i sprawniej. Można to porównać do systemu identyfikacji ludzi: adresy MAC są jak kod genetyczny ukryty w naszych tkankach. Każdy ma jakiś zestaw genów, zapewne nie ma (poza bliźniętami jednojajowymi) dwóch ludzi mających taki sam kod genetyczny, ale na co dzień trudno byłoby legitymować się próbkami krwi, z których można by było odczytywać geny. Więc ludzie mają różne dokumenty tożsamości - dowody osobiste, paszporty, legitymacje itp., które pozwalają sprawdzić, kto jest kim. Właśnie adres IP jest takim "dowodem osobistym" nadawanym konkretnemu komputerowi - najczęściej przez administratora sieci.
Numer dowodu osobistego nie jest jednak związany z konkretną osobą raz na zawsze (w odróżnieniu od zestawu genów, który nie zmienia się od urodzin aż do śmierci). Przyporządkowanie między dokumentem a człowiekiem funkcjonuje na zasadzie umowy, a nie na zasadzie "zaszycia" identyfikatora w ciele człowieka. Może się więc zdarzyć, że ta sama osoba będzie miała paszporty o różnych numerach (na skutek ich wymiany lub wielokrotnego obywatelstwa), a może się też zdarzyć, że taki sam numer dowodu osobistego będzie użyty do oznaczenia różnych osób (na przykład w różnych okresach czasu lub w różnych krajach).
Mając dwa adresy: adres MAC, który jednoznacznie identyfikuje konkretny komputer oraz adres IP, który jest używany przy komunikacji, musimy mieć w sieci coś w rodzaju książki telefonicznej, pozwalającej znaleźć właściwy adres MAC gdy mamy adres IP. Taka tabela powiązań jednych i drugich adresów nazywa się ARP (od Address Resolution Protocol) i jest używana przy adresowaniu wszelkich wiadomości przesyłanych w sieci. Co więcej, komputer wysyłający informacje nie dopytuje się o adres MAC odbiorcy przy przesyłaniu każdego kolejnego pakietu, tylko zapisuje sobie we własnej pamięci powiązanie szukanego adresu IP z adresem MAC i stale go używa.
Świadomość, że tak to działa, pozwala spooferowi na dokonanie następującego zabiegu: Otóż odpowiedź na pytanie o właściwy adres MAC, gdy mamy adres IP, ma w sieci postać specjalnego pakietu zwanego ARP Reply. W ten sposób komputerom znajdującym się w sieci przekazywane są informacje o odwzorowaniach adresów IP na adresy MAC. Haker fałszuje pakiet ARP Reply i przejmuje kontrolę nad komunikacją.
Dzieje się to tak: komputer chcący nadać jakąś wiadomość wysyła do sieci zapytanie o adres komputera odbiorcy, zaś odpowiedź - zamiast serwera obsługującego sieć - wysyła atakujący komputer, podając swój adres fizyczny MAC. Komputer wysyłający dokonuje wpisu w swojej tablicy ARP, że od tej pory ma wysyłać swoje informacje do tego właśnie komputera, a tymczasem jest to komputer, który jest napastnikiem. Takie rozwiązanie prowadzi do tego, że od tej pory wszelka komunikacja odbywa się z komputerem atakującym, a nie z prawdziwym odbiorcą. Na dodatek komputer atakujący jest w stanie przekazywać odbiorcy różne nieprawdziwe informacje, które pokazują się legalnemu użytkownikowi jako wiarygodne informacje pochodzące z zaufanego źródła! W efekcie fakt ataku jest niewidoczny dla zaatakowanego, a atakujący może nie tylko przeglądać, ale i modyfikować wszelkie jego dane, czyli całkowicie przejmuje kontrolę nad sytuacją.