Anonimowość w internecie to mit. Każdego można zidentyfikować, problem sprowadza się tylko do dwóch kwestii: ile ty chcesz zapłacić za znalezienie kogoś w sieci oraz ile ktoś jest w stanie zapłacić za to, żebyś go nie znalazł.
Powszechna informatyzacja sprawiła, że dane osobowe oraz informacje o przyzwyczajeniach, poglądach i potrzebach ludzi stanowiących cyberspołeczność stały się łakomym kąskiem dla biznesu, firm konsultingowych, marketingowców, analityków oraz spamerów. Na obraz internauty składają się nie tylko informacje o tym, jakie witryny przegląda, ale również jakie ma poglądy, zainteresowania, przyjaciół i przeciwników. Takie dossier może być potencjalnie dość niebezpieczne dla zainteresowanego, jeśli znajdzie się w niepowołanych rękach.
Z drugiej strony internet jest (a raczej wydaje się być) rajem dla ludzi, którzy chcą upubliczniać swoje nie zawsze poprawne politycznie oraz moralnie poglądy, licząc na brak możliwości identyfikacji i wyciągnięcia konsekwencji. Podobnie rzecz ma się z przestępcami, którzy już dawno odkryli, że \”cyferkowe\” pieniądze i dane są tak samo wartościowe jak te papierowe, a często znacznie łatwiej je zdobyć.
Pośrednio odpowiedzialność za działania użytkowników spoczywa na dostawcy internetu oraz administratorach sieci lokalnych. Pomimo regulaminu, do przestrzegania którego zwykle użytkownicy są zobowiązani, dobrze jest wiedzieć, jak \”namierzyć\” ich aktywność w internecie. Czasami może to nam oszczędzić wielu problemów.
Dlaczego chcemy być anonimowi?
\”Wyobraź sobie świat, w którym wszelkie dane na twój temat trafiają do akt. Świat, w którym każdy ślad twojej egzystencji zapisano w pamięci komputera. Świat, który łatwo można wykasować…\” Tak zaczyna się film \”System\” z 1995 roku z Sandrą Bullock w roli głównej. Już wtedy powszechna digitalizacja informacji zaczynała budzić obawy. Jak to wygląda dziś?
W teorii gromadzenie danych o tym, jakie strony i w jakim celu odwiedzają internauci ma pomóc lepiej dopasować i spersonalizować dla nich oferty sklepów internetowych, portali, serwisów informacyjnych itd. W praktyce często okazuje się, że sprowadza się do prób zręcznej manipulacji i wywierania wpływu na użytkownika, którego \”profil\” został zarejestrowany w bazie danych. W skrajnych przypadkach może się to sprowadzić do gromadzenia \”haków\” na inną osobę.
Wiedząc, że np. ktoś bardzo wysoko postawiony często i systematycznie odwiedza witryny bukmacherskie lub płatne wirtualne kasyna, można łatwo stwierdzić, że osoba ta może mieć problem z hazardem. Informacja taka może się okazać bardzo cenna i umożliwić wywieranie wpływu na delikwenta. W związku z tym, w trosce o swoją prywatność ludzie zwykle starają się, aby ich nie do końca nadające się do upublicznienia zainteresowania pozostały anonimowe.
O ileż bezpieczniej napisać na forum dyskusyjnym \”mocną\”, często kontrowersyjną opinię, podpisując się wymyśloną na poczekaniu ksywką (ang. nickiem), niż sygnować ją swoim imieniem i nazwiskiem. Podobnie rzecz ma się z mailem wysłanym ze świeżo założonego konta na portalu z darmowymi kontami e-mail. Gdyby okazało się, że zwierzchnik, rodzic lub ktoś z instytucji państwowej, o której się zwykle nie mówi głośno, postanowili nie podzielać poglądów autora, jest szansa, że pozostanie on nieustalony. Czy aby na pewno?
ABC gromadzenia \”wirtualnych teczek\”
Pozostawmy udowadnianie i ściganie przestępstw komputerowych zawodowcom i spróbujmy się przyjrzeć, jak w dość prosty sposób, przy wykorzystaniu powszechnie dostępnych metod i oprogramowania, można zidentyfikować ślady na internetowych ścieżkach. Raczej nie będziemy w ten sposób ustalać, kto włamał się do NASA, natomiast pozwoli nam to stwierdzić, kto i skąd odwiedza nasz serwer WWW albo pisze do nas maile.
Analiza nagłówków e-mail
Mechanizm działania poczty elektronicznej jest bardzo podobny do dostarczania tradycyjnych listów. W jej obsługę może być zaangażowanych od kilku do kilkunastu serwerów, nieraz rozsianych po całym świecie, ponieważ standardy poczty elektronicznej definiują tylko pewną część tego, co powinno znaleźć się w dodanych do listu nagłówkach. Każde oprogramowanie pocztowe, czy to klient czy serwer, dodaje do nagłówka wiadomości własne, specyficzne dla siebie pola. Ich ilość sprawia, że nagłówek może być mało zrozumiały.
Umiejętność prawidłowego przeanalizowania nagłówka wiadomości umożliwi określenie rzeczywistego nadawcy listu, programu pocztowego i serwera, z którego skorzystał nadawca oraz drogi jaką wiadomość przebyła od nadawcy do adresata.
Większość programów-klientów do obsługi poczty wyświetla tylko podstawowe dane o przychodzącym mailu, takie jak nadawcę, temat i datę otrzymania wiadomości. Aby uzyskać więcej szczegółów, musimy poprosić program pocztowy o pokazanie nam źródła wiadomości lub wszystkich nagłówków. W przypadku programu Thunderbird procedura ta wygląda następująco: zaznaczamy interesującą nas wiadomość, klikamy menu Widok, wybieramy opcję Pokaż nagłówki, a następnie wybieramy opcję Wszystkie. W ten sposób w oknie podglądu wiadomości zobaczymy wszystkie nagłówki badanej wiadomości (rys. 1).
Alternatywnie możemy wyświetlić całe źródło wiadomości w osobnym oknie. W tym celu zaznaczamy interesującą nas wiadomość i klikamy menu Widok, a następnie wybieramy opcję Źródło wiadomości (lub wciskamy kombinację klawiszy {stala}Ctrl+U{/stala}) (rys. 2).
Jako królika doświadczalnego do analizy wybrałem typowy spam. Źródło wiadomości po usunięciu z niej adresu hosta docelowego i zastąpienia go przez […] wygląda tak:
Przykład nagłówka typowego spamu
Return-Path: {html2}
X-Original-To: {html2} webmaster@[…]{/html2}
Delivered-To: {html2}admin _ www@[…]{/html2}
Received: {html2}from localhost (localhost [127.0.0.1]){/html2}
{html2}By […].com.pl (Postfix) with ESMTP id 13A801500DA{/html2}
{html2}for
X-Virus-Scanned: {html2}Debian amavisd-new at[…].com.pl{/html2}
{html2}Received: from[…].com.pl ([127.0.0.1]){/html2}
{html2}by localhost ([…].com.pl [127.0.0.1]) (amavisd-new, port 10024){/html2}
{html2}with ESMTP id gSA3-2mUcNQL for
{html2}Mon, 24 Dec 2007 12:05:05 +0100 (CET){/html2}
Received: {html2}from travelocity.com (unknown [122.168.30.13]){/html2}
{html2}by […].com.pl (Postfix) with SMTP id 766B21500D3{/html2}
{html2}for
Received: {html2}from 193.164.156.40 (HELO smtpa1.tf1.fr){/html2}
{html2}by […].com.pl with esmtp (BOICFZVVWWW PINKOE){/html2}
{html2}id 01Dext-Nbd50A-AF{/html2}
{html2}for webmaster@[…].com.pl; Mon, 24 Dec 2007 16:35:07 +0530{/html2}
Message-ID: {html2}<121401c8461c$d7f02f90$7aa81e0d@Malcolm>{/html2}
From: {html2}\”Malcolm F. Norris\”
To: {html2}\”Simon M. Hardy\”
Subject: {html2}Make your gf happy in New Year 2008!{/html2}
Date: {html2}Mon, 24 Dec 2007 16:35:07 +0530{/html2}
X-Priority: {html2}3{/html2}
X-MSMail-Priority: {html2}Normal{/html2}
X-Mailer: {html2}Microsoft Outlook Express 6.00.2800.1158{/html2}
X-MimeOLE: {html2}Produced By Microsoft MimeOLE V6.00.2800.1158{/html2}
Rozpoczynając analizowanie nagłówka otrzymanego e-maila przyjrzymy się standardowym polom wiadomości:
- Nagłówek Return-Path – zawiera (teoretycznie) adres nadawcy, który jest używany do powiadomienia osoby wysyłającej e-maila w przypadku problemów z jego dostarczeniem. W przypadku spamu jest on zwykle fałszywy, tak samo jak nagłówek From. W przypadku innych wiadomości bywa, że wskazuje na prawdziwego nadawcę, mimo że w nagłówku From umieszczono inne dane.
- Delivered-To – nagłówek wskazuje na jaką fizyczną skrzynkę na serwerze dostarczono wiadomość. Jest to istotne w przypadku, gdy w nagłówku To umieszczono adres będący aliasem właściwej skrzynki. W badanym przypadku alias pocztowy webmaster@ jest skonfigurowany do przekazywania na fizyczne konto admin_www@.
- Nagłówek Received – każdy serwer, przez który przechodziła wiadomość zwykle zostawia tu informację o sobie (podając swój adres, rodzaj oprogramowania oraz identyfikator wiadomości). Reguła ta nie dotyczy specjalnie spreparowanych serwerów, tzw. remailerów, które służą właśnie do zachowania anonimowości przez nadawcę. Może się również zdarzyć, że lista serwerów w nagłówkach Received jest celowo zafałszowana, żeby trudniej było przeanalizować drogę przesyłki.
- Message-ID – nagłówek ten jest niepowtarzalnym identyfikatorem wiadomości e-mail lub postu na grupie dyskusyjnej. Wykorzystywany raczej w przypadku grup dyskusyjnych w celu szybkiego odnalezienia wiadomości.
- Nagłówki From, To i Subject – standardowe nagłówki każdego listu, tak naprawdę nie mające jednak większego wpływu na poprawne dostarczenie listu. Ich zawartość, zwłaszcza w przypadku spamu, jest często przypadkowa. Jak widać w powyższym przykładzie, w nagłówku From jest podana jakaś osoba (fikcyjna), natomiast w polu To została podana również fikcyjna osoba, jednak z adresem wskazującym na nasze konto.
- Nagłówek Content-Type – zawiera informację o typie przesyłki – jest to wiadomość składająca się z różnego typu danych (czysty tekst i HTML).
Dodatkowo interesujące mogą być wszelkie nagłówki X znajdujące się w wiadomości. W badanym przez nas mailu mamy następujące nagłówki X:
X-Original-To: webmaster@[...]
X-Virus-Scanned: Debian amavisd-new at[…].com.pl
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 6.00.2800.1158
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1158
Możemy z nich odczytać jaki adres był podany jako odbiorcy (X-Original-To), zanim nasz lokalny serwer pocztowy przekazał go do skrzynki fizycznej. Będzie to jeden z aliasów pocztowych skojarzonych z naszym fizycznym kontem na serwerze.
Kolejną informacją jest, jaki program antywirusowy na serwerze skanował pocztę (X-Virus-Scanned) pod kątem wirusów i na którym serwerze (nagłówek X-Virus-Scanned) znajduje się bezpośrednio. Następna informacja to priorytet wiadomości (X-Priority i X-MSMail-Priority). Ponadto dowiemy się (albo nie) jakiego programu używał nadawca (X-Mailer oraz X-MimeOLE). Pamiętać jednak należy, że często oprogramowanie do generowania spamu podszywa się pod najpopularniejsze programy pocztowe.
W naszym przypadku widzimy, że w kroku 1 wiadomość została wysłana przez serwer, który przedstawił się jako travelocity.com z adresem IP 122.168.30.13. Szybko sprawdzamy za pomocą polecenia nslookup, czy adres IP pasuje do adresu domenowego.
C:\Documents and Settings\ZM>nslookup 122.168.30.13
Name: ABTS-mp-dynamic-013.30.168.122.
airtelbroadband.in
Address: 122.168.30.13
Prawdziwy adres travelocity.com sprawdzamy identycznie:
C:\Documents and Settings\ZM>nslookup travelocity.com
Non-authoritative answer:
Name: travelocity.com
Address: 151.193.224.81
Jak widzimy, nazwa domeny nie pasuje do adresu IP. Wstępne oględziny wskazują, że adres IP należy do dostawcy internetowego, który przydziela adresy w swojej sieci dynamicznie, za pomocą DHCP. Możemy spróbować sprawdzić, kto jest odpowiedzialny za to IP. W tym celu wykorzystamy bazę RIPE, dostępną pod adresem http://www.ripe.net.
I tu czeka nas rozczarowanie. Adres, którego szukamy, nie został oficjalnie przypisany żadnemu dostawcy. Spróbujmy więc poszukać po nazwie domenowej. Niestety, baza RIPE nic nie wie o takiej domenie.
Kolejnym krokiem może być prześledzenie za pomocą programu tracert (dla Windows) lub traceroute (dla Linuksa), gdzie znajduje się host nadawcy:
Gdzie jest host nadawcy?
Wynik działania programu traceroute (lub tracert)
Tracing route to ABTS-mp-dynamic-013.30.168.122.airtelbroadband.in [122.168.30.13] over a maximum of 30 hops:
[…]
4 * 15 ms 5 ms pl-waw01a-rd1-g-2-0-0.aorta.net [213.46.178.13]
5 35 ms 38 ms 36 ms uk-lon01a-rd2-stm64-pos0-0.aorta.net [213.46.160.137]
6 108 ms 107 ms 109 ms us-nyc01b-rd1-pos-12-0.aorta.net [213.46.160.126]
7 108 ms 107 ms 107 ms 213.46.190.85
8 112 ms 113 ms 113 ms 213.46.190.50
9 113 ms 113 ms 115 ms us-was02a-ri1-10ge-1-0-0-0.aorta.net [213.46.190.194]
10 117 ms 114 ms 112 ms te-4-1.car3.Washington1.Level3.net [4.79.168.201]
11 122 ms 113 ms 122 ms vlan79.csw2.Washington1.Level3.net [4.68.17.126]
12 113 ms 124 ms 125 ms ae-71-71.ebr1.Washington1.Level3.net [4.69.134.133]
13 127 ms 127 ms 127 ms ae-2.ebr3.Atlanta2.Level3.net [4.69.132.85]
14 155 ms 147 ms 158 ms ae-7.ebr3.Dallas1.Level3.net [4.69.134.21]
15 185 ms 183 ms 194 ms ae-3.ebr2.LosAngeles1.Level3.net [4.69.132.77]
16 183 ms 184 ms 183 ms ge-9-2.core1.LosAngeles1.Level3.net [4.68.102.167]
17 433 ms 311 ms 311 ms BHARTI-INFO.c1.LosAngeles1.Level3.net [4.78.196.22]
18 313 ms 307 ms 308 ms 59.145.7.134
19 331 ms 326 ms 324 ms 125.17.96.242
20 * * * Request timed out.
21 373 ms 442 ms 372 ms ABTS-mp-dynamic-013.30.168.122.airtelbroadband.in [122.168.30.13]
Trace complete.
Tym razem dowiedzieliśmy się trochę więcej. Aktualnie komputer, na który wskazuje adres IP z wiadomości, znajduje się w USA, najprawdopodobniej gdzieś w Los Angeles. Niestety brak szczegółowych danych dostawców powoduje, że ustalenie faktycznego nadawcy będzie bardzo problematyczne. W przypadku spamerów jest to, niestety, bardzo częsty przypadek.
Sprawdźmy, co działo się z otrzymaną wiadomością po tym, jak opuściła sieć spamera.
W kroku 2 wiadomość trafiła do komputera o IP 193.164.156.40 i adresie domenowym smtpa1.tf1.fr. Tym razem IP pasuje do adresu domenowego. Po dokładnym zbadaniu tego adresu za pomocą zwykłego polecenia telnet na port 25 (SMTP) okazuje się, że jest to tzw. open relay, nie weryfikujący hasłem wprowadzanego adresu nadawcy. Wiemy już, jakim sposobem spam z USA przedstawia się jako wysłany z Francji. Spamer bez problemu mógł podać dowolną nazwę użytkownika i wysłać w jego imieniu swoją wiadomość.
Analiza nagłówków wiadomości grup dyskusyjnych
Grupy dyskusyjne (Usenet) to, mimo zwiększającej się popularności wszelkiej maści forów dyskusyjnych opartych o WWW, ciągle jedna z najpopularniejszych metod wymiany poglądów w internecie. Mają strukturę hierarchiczną, podobnie jak domeny internetowe, i rządzą się swoimi zasadami (netykietą) opisywanymi w tzw. FAQ. Szczegółowe opisywanie reguł rządzących grupami dyskusyjnymi wykracza poza tematykę tego tekstu, dlatego zainteresowanych odsyłam do innych publikacji.
Grupy dyskusyjne można podzielić na moderowane (kontrolowane przez operatora-moderatora, do którego trafia każda wiadomość wysłana na grupę i który ją dopuszcza do publikacji lub odrzuca) i niemoderowane (gdzie wiadomość wysłana na grupę pojawia się od razu, bez żadnej kontroli). Jak widać, ten pierwszy przypadek gwarantuje \”czystość wypowiedzi\”, jednak ręczna kontrola sprawia, że wiadomości pojawiają się często z dużym opóźnieniem. Nas interesować będą te drugie, z racji tego, że to właśnie na nich dochodzi do naruszania netykiety. Tak samo jak w przypadku poczty elektronicznej, problemem jest wysyłanie wiadomości niezwiązanych z treściami poruszanymi na danej grupie (spam) oraz wulgaryzmy i inne zachowania naruszające kulturę publicznej wypowiedzi.
Osoby łamiące zasady grup nazywane są trollami (a ich działalność trollingiem). Najprościej takie wiadomości ignorować, używając do tego filtrów wiadomości. Możemy się jednak pokusić o zlokalizowanie trolla i interwencję u jego dostawcy internetowego. W tym celu przyjrzyjmy się bliżej nagłówkowi usenetowego postu. Aby wyświetlić wszystkie nagłówki, postępujemy analogicznie jak w przypadku e-maila.
Trolling w Usenecie
Trolling to wysyłanie wrogich, obraźliwych lub kontrowersyjnych wiadomości na jedno z publicznych miejsc w internecie w celu wzniecenia kłótni. Nazwa trolling pochodzi od ang. trolling for fish (metoda łowienia ryb), ponieważ troll \”zarzuca haczyk\” poruszając kontrowersyjny temat, często niepotrzebnie, aby wywołać kłótnię. Poprzez wsteczną etymologię uprawiających trolling nazwano trollami (od legendarno-baśniowych stworów z mitologii nordyckich). Typowe cele ataków trolla to grupy i listy dyskusyjne, fora internetowe, czaty itp. Trolling jest złamaniem jednej z podstawowych zasad netykiety.
Najskuteczniejszą obroną przed trollingiem jest całkowite zignorowanie wszelkich zaczepek trolla, w momencie gdy się zorientujemy, że mamy z nim do czynienia. O ile istnieje taka możliwość, administratorzy lub moderatorzy powinni blokować możliwość publikowania wiadomości, które można uznać za trolling i odpowiadania na nie. Kasowanie wiadomości już opublikowanych zwykle roznieca kłótnię, gdyż dostarcza zarzutu cenzurowania wypowiedzi jako dodatkowego argumentu. W slangu internetowym często mówi się, że trolla nie należy \”karmić\” – czyli że nie należy z nim w ogóle wchodzić w jakąkolwiek polemikę.
(źródło: Wikipedia)
Nagłówki wiadomości z grup dyskusyjnych mają składnię podobną do nagłówków e-mail. Występują w nich dodatkowe pola specyficzne dla protokołu NNTP. W ramce Nagłówek przykładowego posta z grup dyskusyjnych mamy rozebraną na czynniki pierwsze wiadomość wysłaną na grupę pl.listerv.chomor-l (część danych została zastąpiona przez […] w celu ochrony prywatności autora).
Nagłówek przykładowego posta z grup dyskusyjnych
{html2}From: \”xxx\”
{html2}Newsgroups: pl.listserv.chomor-l{/html2}
{html2}Subject: =?iso-8859-2?Q?=AFarcik _ :=29?={/html2}
{html2}Date: Wed, 2 Jan 2008 16:36:21 +0100{/html2}
{html2}Organization: tp.internet – http://www.tpi.pl/{/html2}
Message-ID: {html2}<[...]@nemesis.news.tpi.pl>{/html2}
NNTP-Posting-Host: {html2}[…].internetdsl.tpnet.pl{/html2}
{html2}X-Trace: nemesis.news.tpi.pl 1199288541 6567 83.3.249.98 (2 Jan 2008 15:42:21 GMT){/html2}
{html2}X-Complaints-To: usenet@tpi.pl{/html2}
{html2}NNTP-Posting-Date: Wed, 2 Jan 2008 15:42:21 +0000 (UTC){/html2}
{html2}X-Priority: 3{/html2}
{html2}X-MSMail-Priority: Normal{/html2}
{html2}X-Newsreader: Microsoft Outlook Express 6.00.2900.3138{/html2}
{html2}X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3198{/html2}
{html2}Xref: news.onet.pl pl.listserv.chomor-l:250735{/html2}
Jak widać, nagłówek zawiera większość poprzednio omówionych pól. Dodatkowo pojawia się nagłówek NNTP-Posting-Host, który zawiera nazwę komputera, z którego została wysłana wiadomość.
Ta wiadomość była jak najbardziej poprawna i zgodna z netykietą. Przyjrzyjmy się teraz wiadomości wysłanej na tę samą grupę przez jednego z wyżej wspomnianych trolli:
Nagłówek przykładowego posta wysłanego przez trolla
{html2}From: =?ISO-8859-2?Q?=22! _ GINEK=D3LOK _ ! _ AMAT=D3R _ !=22?={/html2}
{html2}
{html2}Newsgroups: pl.listserv.chomor-l{/html2}
{html2}Subject: =?ISO-8859-2?Q?Spu=BCnione _ Novoroczne _ =BFyczenia _ !?={/html2}
{html2}Date: Thu, 03 Jan 2008 22:12:08 +0100{/html2}
{html2}Organization: albasani.net{/html2}
{html2}Message-ID:
X-Trace: news.albasani.net +yNbi0zRT6acE9p18LVQIMfkNvRStGKC6JMUTiQjOhwbHwh76l
+dH3sb9TIIRE7D7VmbN8bjxvdnWohTMeW4KJu+jnlqaNz+BRkvCvh0SJonUuh7dMuWmrq
BpVQWcnc6
{html2}X-Complaints-To: abuse@albasani.net{/html2}
{html2}NNTP-Posting-Date: Thu, 3 Jan 2008 21:12:07 +0000 (UTC){/html2}
X-User-ID: 3PFXuUV9MJF356xuzHfQmcXY+NnHFlV7l0Del4w5fJc=
{html2}Cancel-Lock: sha1:pB9iATN0ZgbW/Eq2MRupIrf5wFY={/html2}
{html2}User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; PL; rv:1.8.1.2pre) Gecko/20070111 SeaMonkey/1.1{/html2}
X-NNTP-Posting-Host: oIhNcqAAjBz0gb1RKpm3r67PM8itDM1TWk2wQWzTm4Q=
{html2}Xref: news.onet.pl pl.listserv.chomor-l:250738{/html2}
Jak widać na podstawie wytłuszczonych nagłówków, troll próbuje ukrywać swoją tożsamość przed resztą świata. Wartości są zaszyfrowane. Spróbujmy teraz dowiedzieć się trochę więcej. Na początek mamy nazwę serwera NNTP, z którego została wysłana wiadomość. Przyjrzyjmy mu się bliżej.
W tym momencie mamy bardzo niewielkie pole do manewru, ponieważ aby zdekodować tożsamość użytkownika, musielibyśmy zdobyć i złamać szyfr lub zdobyć klucz szyfrujący (regularnie zmieniany). Właściciele serwera deklarują, że udostępniają dane o użytkownikach służbom porządkowym, ale do tego potrzebny jest nakaz sądowy.
Tego typu serwery są w świetle prawa legalne i nie pozostaje nic innego, jak tylko filtrować wiadomości z nich pochodzące.
Co się kryje w logach serwera WWW?
Z pewnością wielu z administratorów portali zetknęło się z problemem \”niepokornych\” użytkowników, którzy nie zawsze potrafili się zachować zgodnie z regulaminem serwisu. Dotyczy to wszelkiego rodzaju forów internetowych lub portali z możliwością komentowania artykułów. W trakcie mniej lub bardziej zażartej dyskusji użytkownicy zapominają o dobrych manierach i publikują treści, które często w rażący sposób odbiegają od powszechnie przyjętych standardów publicznych wypowiedzi. Przy powtarzających się łamiących regulamin komentarzach należałoby podjąć odpowiednie środki w postaci zablokowania takiemu delikwentowi dostępu do serwisu. Z drugiej strony z czysto komercyjnego punktu widzenia dobrze jest wiedzieć, jak wyglądają sesje użytkowników z naszym serwisem WWW, po jakich stronach się poruszają i co ich interesuje bardziej, a co mniej.
W obu przypadkach musimy zidentyfikować konkretnego użytkownika, aby następnie móc obserwować jego poczynania w naszym serwisie. Najprostszą i najczęściej mało skuteczną metodą będzie zidentyfikowanie adresu IP komputera, z którego przychodzą połączenia do naszej witryny. Może się jednak okazać, że z danego IP korzysta więcej niż jeden użytkownik. Jest to w zasadzie standardowa sytuacja w przypadku sieci stosujących translację adresów NAT. W tym przypadku namierzymy tylko adres bramki internetowej, a nie konkretnego komputera.
Dodatkowymi informacjami, jakie możemy zgromadzić, są dane z przeglądarki internetowej klienta łączącego się do naszego serwera. Oprócz pobierania dokumentów przeglądarka dostarcza wielu interesujących, z punktu widzenia tropiciela, informacji. Za pomocą odpowiednich zmiennych HTTP możemy dowiedzieć się, jakiego rodzaju przeglądarkę ma klient, jakiego systemu operacyjnego używa, z jakiej rozdzielczości korzysta i wielu innych rzeczy. Pomoże to dokładniej zidentyfikować zdalny komputer, nawet jeśli korzysta ze zbiorczego adresu IP.
W tym miejscu należy zaznaczyć, że istnieje wiele skuteczniejszych i dokładniejszych metod śledzenia jakie witryny przegląda użytkownik, jednak zwykle naruszają one jego prywatność i z tego powodu raczej nie powinny być stosowane. Mowa tu np. o tzw. śledzących ciasteczkach (ang. tracking cookies), tworzonych w systemie klienta podczas wizyty na stronie, która je generuje. My ograniczymy się do mniej inwazyjnych metod, bazując na analizie logów systemowych oraz logów pomocniczych.
Aby móc odczytywać informacje: kto, skąd i kiedy odwiedzał nasze strony, musimy przygotować odpowiednią konfigurację w pliku httpd.conf. Plik ten jest plikiem konfiguracyjnym serwera WWW. W naszym przypadku jest to bardzo popularny serwer Apache, występujący w wersji dla Linuksa i Windows. Dopisujemy do niego odpowiednie linijki:
# definiujemy format zapisu logów, kolejno czas, dostęp, skąd, przeglądarka
LogFormat \"%h %l %u %t \\"%r\\" %>s %b
\\"%{Referer}i\\" \\"%{User-Agent}i\\"\" combined
LogFormat \"%h %l %u %t \\"%r\\" %>s %b\" common
LogFormat \"%{Referer}i -> %U\" referer
LogFormat \"%{User-agent}i\"» agent
Następnie definiujemy gdzie mają być zapisywane odpowiednie informacje, czyli jak mają się nazywać pliki z logami i co zawierać:
# osobne logi dla informacji skąd przyszedł użytkownik (ang. referer) oraz przeglądarek
CustomLog logs/referer.log referer
CustomLog logs/agent.log agent
# Zbiorczy log dla wszystkich informacji
CustomLog logs/access.log combined
Szczegółowe informacje na temat logowania przez serwer Apache znajdziemy w dokumentacji serwera pod adresem http://httpd.apache.org/docs/1.3/logs.html.
Jak widać, standardowe logi serwera umożliwiają gromadzenie podstawowych danych. Jeśli nie wystarczają nam informacje o przeglądarce i stronie, z której przekazano zapytanie do naszej witryny, możemy za pomocą jednego z języków programowania WWW zwiększyć ilość zbieranych informacji.
Po nitce do kłębka, czyli trochę o inżynierii społecznej
Oprócz mechanizmów typowo technicznych istnieje wiele innych technik identyfikacji tożsamości piszącego, bazujących na metodach mających swoje korzenie w psychologii. Noszą tam zbiorczą nazwę technik inżynierii społecznej (ang. social engineering). To nic, że nie możemy ustalić nadawcy posta czy e-maila na podstawie nagłówka. Jeśli te metody zawiodły, a nam naprawdę zależy na namierzeniu spamera czy trolla, to pora sięgnąć do zasobów baz danych internetowych wyszukiwarek. Najskuteczniejsza do tego celu będzie Google, z racji tego, że archiwizuje niemal wszystko, od stron WWW do wiadomości grup dyskusyjnych.
Od razu uprzedzam, że ta metoda będzie bardzo czasochłonna, a efekty wcale nie muszą być zadowalające. Często jednak warto spróbować.
Szukając kogoś w Google kierujemy się kilkoma prostymi zasadami, które w połączeniu mogą dać niezły skutek:
- Szukamy innych wiadomości tego użytkownika, bazując na jego adresie e-mail (to nic, że nie jest prawdziwy, ale możliwe, że jest stały). Aby zwiększyć skuteczność używajmy tylko identyfikatora (części przed @).
- Analizujemy treść wysyłanych przez niego wiadomości. Istnieje szansa, że w którejś z dyskusji napisał o kilka słów za dużo, co pozwoli znaleźć jego powiązania, np. z miejscem pracy, miastem, dzielnicą, organizacją czy klubem.
- Każdą znalezioną wiadomość analizujemy pod kątem nagłówków. Mogło się zdarzyć, że nadawca zapomniał się i wysłał jedną z nich nie maskując nagłówków identyfikacyjnych (z pracy, szkoły czy z kawiarenki).
- Natrafiając na kolejne ślady systematyzujemy zdobywane informacje i szukamy między nimi powiązań. Może się okazać, że np. ktoś rzucający bluzgami na grupie o poezji udziela się również na grupie o samochodach, podając jakim autem jeździ i gdzie je serwisuje lub dyskutuje na grupach biznesowych pisząc o swojej pracy. Jeśli trafimy na wiadomość wysłaną z komputera w jakiejś firmie lub uczelni, możemy próbować dowiedzieć się więcej, analizując informacje na firmowej, szkolnej czy uczelnianej stronie WWW. Czasami jeden telefon do sekretariatu czy dziekanatu może dostarczyć bardzo ciekawych informacji.
\”Wielki Brat\” patrzy
Artykuł 54. ust.1. Konstytucji Rzeczypospolitej Polskiej mówi, że: \”Każdemu zapewnia się wolność wyrażania swoich poglądów oraz pozyskiwania i rozpowszechniania informacji.\”. Jednak ta wolność słowa oznacza również odpowiedzialność za swoje poglądy. Nikomu nie wolno wykorzystywać jej do naruszania dóbr osobistych innych osób oraz łamania podstawowych zasad prawa.
Oprócz powszechnie dostępnych serwerów pośredniczących i remailerów, w internecie można znaleźć wiele ofert płatnej anonimowości. Za kilka(dziesiąt) dolarów czy euro firmy prowadzące tego rodzaju serwisy postarają się, aby skutecznie chronić tożsamość swoich użytkowników aż do końca, czyli nakazu sądowego polecającego ją ujawnić. Większość tego typu serwisów zlokalizowana jest za granicą, w krajach mających inne niż obowiązujące w Polsce czy Unii Europejskiej przepisy prawne, co dodatkowo utrudnia i komplikuje proces identyfikacji. Wykorzystywanie dodatkowych punktów-przekaźników jeszcze bardziej utrudnia śledzenie nadawcy.
Nie oznacza to jednak, że użytkownicy tego typu serwisów mogą czuć się całkiem bezkarnie. Nawet najlepiej zamaskowana transmisja danych ma gdzieś swój fizyczny początek. Od kilku lat w prasie komputerowej pojawiają się wzmianki o tajemniczym i dość kontrowersyjnym projekcie ECHELON. Ile w tym prawdy, a ile legendy – nikt (publicznie) nie jest w stanie powiedzieć dokładnie. Ponieważ jednak w każdej plotce jest ziarenko prawdy, należy założyć, że istnienie tego rodzaju projektów to nie do końca mit.