19:06
16/3/2015

Brian Krebs w najnowszym wpisie przybliża narzędzia służące do zmiany fingerprintu przeglądarki. Po co przestępcy chcą zmieniać swój figerprint i jak wyglądają narzędzia ułatwiające kradzież pieniędzy w internecie? O tym poniżej…

FraudFox - jedno z narzędzi wykorzystywane w internetowych fraudach

FraudFox – jedno z narzędzi wykorzystywane w internetowych fraudach przez oszustów

Fingerprint — co to jest i do czego służy?

Fingerprint to hash, jaki wyliczają skrypty na danej stronie w oparciu o szereg informacji, które uda się im pozyskać od przeglądarki. Pod uwagę brane są np. User-Agent, rozdzielczość ekranu, lista systemowych czcionek. Przykładowy fingerprint możecie sobie wyliczyć tutaj …i zapewne okaże się, że jest on całkiem unikatowy.

Panopticlick

Za pomocą fingerprintu można całkiem nieźle rozpoznać danego internautę (nawet jeśli zmieni on adres IP). Korzystają z tego sieci reklamowe i banki. W przypadku sieci reklamowych, wejście na daną stronę z grupy, powiedzmy serwis informacyjny, powoduje wyliczenie fingerprintu i odłożenie w bazie informacji, że jego właściciel oglądał np. tylko i wyłącznie podstrony dotyczące sportów wodnych, a dokładnie kajakarstwu. Serwis informacyjny nie zna tożsamości właściciela przeglądarki, ale poznał jego zainteresowania. Kiedy ta sama osoba wejdzie (np. za tydzień) na stronę serwisu aukcyjnego, ten sam skrypt do fingerprintingu ponownie wyliczy fingerprint przeglądarki, ale zauważy, że znajduje się on już we współdzielonej z serwisem informacyjnym bazie danych i jego właściciel interesuje się sportami wodnymi. Serwis aukcyjny, zamiast więc promować na pierwszej stronie wiosenne kurtki, temu akurat internaucie pokaże promocyjne ceny na kajaki. Dopasowana reklama podnosi sprzedaż.

Należy tu podkreślić, że serwis aukcyjny dalej nie zna tożsamości internauty — ale jeśli promocyjna oferta (dobrana na podstawie wcześniejszych zainteresowań internauty) przekona go do zakupu, to z fingerprintem powiązane zostaną dodatkowe dane (pochodzące z konta internauty w serwisie aukcyjnym). Dane takie jak imię, nazwisko, adres i historia poprzednich zakupów mogą teraz powędrować do wspólnej bazy, dzięki czemu powrót internauty na serwis informacyjny spowoduje, że zobaczy on informacje głównie ze swojego miasta oraz reklamy pasujące do jego poprzednich zakupów na internetowych aukcjach.

Przypomina wam to mechanizm ciasteczek? I bardzo dobrze, bo efekty są takie same. Ale wiecie co? Ta technika trackingu wcale nie wymaga wyświetlania durnowatych ostrzeżeń przed ciasteczkami, bo nic nie jest przechowywane na komputerze internauty

Jak z fingerprintingu korzystają sklepy i banki?

Fingerprinting urządzenia użytkownika można też wykorzystać do zwiększenia bezpieczeństwa transakcji. Według Krebsa robią tak amerykańskie sklepy i pośrednicy w płatnościach w USA (ale my potwierdzamy, że nie tylko tam). Jeśli do ich kont dostęp uzyskuje urządzenie, którego fingerprint nie był wcześniej odnotowany przez system, to akcje urządzenia są flagowane i np. wymagają bardziej szczegółowej weryfikacji.

Przykładowo, Chińczyk, który wykradł dane dostępowe do konta Polaka, a który korzysta z przeglądarki Firefox z chińskimi “localami”, będzie miał po zalogowaniu do banku Polaka inny fingerprint niż Polak, standardowo korzystający z Chrome w j. polskim. Kiedy system to wykryje, lewy przelew (albo zakup kartą) nie dojdzie do skutku.

Warto podkreślić, że tzw. powiązanie sesji użytkownika z fingerprintem jego urządzenia (przegladarki) nie jest idealnym zabezpieczeniem. Atakujący (phisher) może zaprosić ofiarę na swoją stronę i samodzielnie wykonać fingerprinting urządzenia ofiary, a następnie dostosować parametry swojego urządzenia do parametrów odczytanych z urządzenia ofiary. Z tego powodu niektóre serwisy wiążą sesje klienta z adresem IP — ale i to nie jest metodą pozbawioną wad — niektórzy korzystają z kilku łącz, którymi rozdzielany jest ruch wychodzący. Tacy internauci będą “niespodziewanie” wylogowywani, jeśli kolejny klik w serwisie zostanie przesłany innym łączem niż to, z którego nawiązana była pierwotna sesja.

Niektóre ze sklepów działają więc także na zasadzie odwrotnej. Po wykryciu fałszywej transakcji “blacklistują” fingerprint przeglądarki użytkownika, który jej dokonał. Jeśli ponownie będzie chciał wykonać transakcję, nie dojdzie ona do skutku. Blacklistować można także te fingerprinty, które wykonują masowe, bardzo podobne transakcje (np. zaloguj się na konto X, zmień hasło na Y, wyloguj się i zaloguj na konto X+1).

Wiele fingerprintów na wyciągnięcie ręki

Aby uniknąć opisanych wyżej problemów, przestępcom z pomocą przychodzą specjalne narzędzia: AntiDetect lub FraudFox, to tylko 2 z nich. Programy pozwalają szybko zmodyfikować parametry odczytywane przez fingerprintingowe skrypty sklepów i banków tak, aby za każdym razem uzyskiwać inny fingerprint i ten sam oszust był widziany przez system jako “inna osoba” dla każdej z wykonywanych transakcji.

AntiDetect - narzędzie do zmiany parametrów przegladarki i połączenia

AntiDetect – narzędzie do zmiany parametrów przegladarki i połączenia

Pracę narzędzia możecie zobaczyć na tym videoklipie udostępnionym przez Briana:

Złodziej ustawia wirtualną maszynę do pracy z narzędziem AntiDetect i kanadyjskim proxy, a następnie na carderskim forum za 5 dolarów kupuje kradzioną kartę kredytową należącą do Kanadyjczyka. W kolejnym kroku sprawdza, czy karta dalej jest ważna (i zdolna do transakcji). Później następuje synchronizacja ustawień strefy czasowej (lokalnej z maszyny wirtualnej i tej, z której korzysta serwer proxy) i zakupy. Po doknaniu pierwszej transakcji, cały proces powtarzany jest od nowa na innych parametrach maszyny wirtualnej (MAC) i przelgądarki (m.in. składowe User-Agent).

Jeśli interesuje Was tematyka “śledzenia” i identyfikowania internautów, polecamy nasze archiwalne artykuły — Internet Cię śledzi i namierza, Nadużycia sieci reklamowych i kradzież ciasteczek 3rd party, Groźne ciasteczka flashowe, Poznaj imię i nazwisko internauty, który odwiedza twoją stronę WWW.

Przeczytaj także:

44 komentarzy

Dodaj komentarz
  1. Czyli ogólnie wystarczy że zmienię wielkość okna przeglądarki o 1px i mam inny fingerprint nawet bez używania programu? Czy niekoniecznie zawsze brana jest rozdzielczość?

    • Rozmiar okna – nie – rozdzielczość ekranu – tak ;)

    • Na moim Firefoksie nie, ale na TOR browserze (o dziwo) owszem.

    • Sprawdzałem na TORze i stąd te nieporozumienie, a faktycznie przy pomocy zwykłej przeglądarki już się tak nie da oszukać :)

    • TOR jest domyślnie tak skonfigurowany by po uruchomieniu każdy miał nierozpoznawalny fingrerprint (albo celowo takiego fingerprintu używają wszystkie instalacje TORa, albo jest on za każdym razem inny). Stąd np po uruchomieniu TORa jego okno ma określone wymiary.

    • Jak chcesz pod Linuksem by zwykła przeglądarka zwracała inną rozdzielczość ekranu niż rzeczywiście masz, możesz uruchomić przeglądarkę pod Xephyrem. Przy okazji będziesz miał izolację (słabą, bo słabą ale jakaś jest) przeglądarki jeśli chodzi o wprowadzane dane, ogólnie GUI.

  2. A to dla Chromium :)
    https://github.com/ghostwords/chameleon

  3. Booooyaaaah!!! Kto mnie przebije!?
    http://imgur.com/QqYXV6Q

    • chodzi wlasnie o to ze jest unikalny dla wiekszosci

    • Raczej GIMBUS.

  4. Jak się bawiłem panopticlick to pobierało mi rozmiary okna :) I teraz pytanie, to normalne czy tam jest to jakoś dziwnie zrobione.

  5. “Your browser fingerprint appears to be unique among the 5,114,013 tested so far.” :P

    • To fatalnie, unikatowy == nie da się zmieszać z tłumem == prostszy na namierzenia/wyizolowania.

    • “only one in 3,760 browsers have the same fingerprint as yours.” – u mnie już trochę lepiej

  6. Your browser fingerprint appears to be unique among the 5,114,074 tested so far.
    Z defaulta, bez dłubania z user agentem etc. Co robić, jak żyć?
    ;]

    • Dla firefoxa- FireGloves w trybie random, albo przynajmniej z ukrytymi informacjami o pluginach i rozszerzeniach.

    • Dzięki za te rękawiczki. Okazuje się ze HTTP UserAgent cleaner niewiele się zdał na te algorytmy. Dopiero firegloves zaczęło mieć wpływ na testy panopticlick’a.
      Co ciekawe tabelka którą wyświetla panopticlick tez nie miała wpływu na wynik, niby nic w niej nie było a nadal unikalny. Użyłem tez Cookie Controller i wyłączenie ciach nadal nic nie dawało. NoScript uwala test ale nie blokuje fingerprintu bo tu nadal widać sporo:
      http://pet-portal.eu/fingerprint/
      Jakimś cudem fingerprinting test potrafi wydobyć moje czcionki a to plus rozdzielczość, lokalizacja i time zone wystarcza. Panopticlick nie pokazuje czcionek ale chyba nie mówi o wszystkim bo i tak mnie rozpoznaje. Nie podoba mi się ta niepełna informacja. Ten test:
      http://fingerprint.pet-portal.eu/?menu=1
      wygląda mi o wiele bardziej wiarygodnie.

    • ciekawy i niewielki dodatek: w moim przypadki spadło z ~5kk do 0.5kk, także rząd wielkości mniej; całkiem nieźle

    • FireGloves, spoko dodatek, ukrywa też informacje o obsługiwanych plikach i używanych pluginach – może być konieczne jego wyłącznie na niektórych stronach z multimediami z tego co zauważyłem. Ciekawsze jest to, że FireGloves jest sprawcą resetu mojego mobilnego routerka (Huawei e5220 lan) – straciłem połączenie a routerek stał zbyt daleko aby chciało mi się wstawać z kanapy, wklepałem więc w Firefox-ie 192.168.1.1 żeby sprawdzić zasięg a tam zong, ledwie kawałek strony konfiguracji, wstałem jednak, wyłączyłem i włączyłem, dalej to samo. Zresetowałem urządzenie, to samo. Już zacząłem w duchu złorzeczyć producentowi gdy wpadło mi do głowy sprawdzić w IE – działa bez zarzutu. Patrzę w Firefox, nie działa. Pomyślałem co ostatnio mieszałem w przeglądarce, wyłączyłem FireGloves i działa…. Gdyby ktoś miał podobny problem to sprawca wykryty :)

  7. No ale po każdej aktualizacji przeglądarki zmieni się jej fingerprint!

    • Niekoniecznie, zmiana jednej z danych np. wersji browsera wcale nie znaczy ze juz jestesmy calkowicie nowi algorytmy potrafia takie rzeczy wylapac imho

    • Niestety Adam ma rację, używam HTTP UserAgent Cleanera i to nic nie daje. Mało tego – mogę opróżnić sandbox i przeglądarka wraca do czystej instalacyjnej wersji (z dodatkami) i nadal jestem rozpoznawalny. Czyli widać ze nie tylko evercookie jest brane pod uwagę bo ono nie przetrwało by takiej operacji.
      Jak widać obrona jest bardzo trudna i nie można ulegać złudzeniu że UserAgent wystarczy. Mało tego sądzę ze te testy wiedzą że to ludzie zmieniają i ten parametr jako ostatni ma wpływ na odcisk. Możliwe że wystarczyłby na jakieś prostsze serwisy w których autor nie wysilił się i uznał że wystarczy mu śledzić 90% użytkowników a na pozostałe 10% szkoda mu energii ale ktoś kiedyś napisze jakiegoś plugina łatwo połączalnego pod CMSy i się zacznie – nawet Kaziu sprzedający skarpety w sieci będzie Cię śledził

  8. Poważnie, zacząłem się zastanawiać na ile realnym problemem jest na codzieć przedstawianie się takim unikalnym fingerprintem; jeżeli mam w domu 5 takich unikalnych kompów i z każdego wchodzę kilka razy dziennie na \b\, to gdybym mieszkał w usa, kiedy mógłbym się spodziewać wjazdu na chatę? :>

  9. Czy to bierze pod uwagę, że pluginy i przeglądarka mogą się aktualizować i zmieniać wersje? Czyli de facto grupa X fingerprintów zmienia się w czasie i mamy X1, X2, X3… suma to np. 5,114,013 ale Xn może być znacznie mniejsze.

  10. Ta, tylko po zmianie wersji tak przegądarki, jak i używanych w niej pluginów/addonów te wersje nie będą miały randomowego numerka, tylko kolejny, a w każdym razie dobrze zanany. Jak się uprzeć, w sensie chcieć mocno rozróżniać użytkownika w ten sposób, to można sprawdzać czy jest aktualizacja dla danego komponentu, z którego liczy się fingerprina i priori wyliczyć hasza jaki będzie z nowymi wersjami i wiedzieć, że Ty to wciąż Ty już przy pierwszym logowaniu. Zwłaszcza, jeżeli śledzić historię i wiedzieć, że zawsze aktualizujesz dany komponent bezpośrednio po wydaniu aktualizacji przez producenta.
    Paranoje można mnożyć w nieskończoność

  11. A czy TAILS-y za każdym razem dają inny odcisk ?

  12. “(…) niektórzy korzystają z kilku łącz, którymi rozdzielany jest ruch wychodzący. Tacy internauci będą “niespodziewanie” wylogowywani, jeśli kolejny klik w serwisie zostanie przesłany innym łączem niż to, z którego nawiązana była pierwotna sesja. (…)”

    To oczywiście prawda, jeśli wyjście przez dane łącze powoduje SNAT na inny publiczny adres IP, niż wyjście drugim łączem. Natomiast trzeba pamiętać, że jeśli mamy wdrożone BGP, to taka sytuacja nie ma miejsca. Taka mała uwaga. ;)

  13. A czy ktos moze mi wyjasnic po co koles zmienia MAC adres? Czy ja o czyms nie wiem czy tez jest jakis sposob zeby przegladarka mogla po niego siegnac? Ani Panopticlick ani spybrowwser nie pokazuje mi mojego MAC adresu. Wiadomo (choc moze nie wszyscy o tym wiedza :-P), ze sieciowo to MAC adres nie wychodzi poza pierwszy router (w tym przypadku w zaleznosci od konfiguracji sieci w virtualce moze nawet nie wychodzic z hosta). Wiec albo ja jestem gupi albo ten koles. Moze mi to ktos rozjasnic?

    • Poczytaj do czego są używane to narzędzia, np do oszukiwania przy odpalaniu aplikacji do grania w kasynach w sieci. Z poziomu aplikacji można już odczytać MAC czy numer seryjny dysku twardego.

    • @e no ok… ale tutaj tego gosciu nie robi, z tego co mi sie zdaje korzysta wylacznie z przegladarki… wiec albo o czyms nie wiem, albo koles ma taki nawyk/odruch, albo nie bardzo kuma co robi… mniejsza o kolesia… chodzi mi o to czy ja o czyms nie wiem :-) ???

  14. Jeszcze zabawniej jest, jeżeli strona na podstawie fingerprintu limituje ile razy można na nią wejść…

  15. A na koniec wysyłanie oferty o pracę w region delikwenta i dopasowaną do jego kryteriów aby poznać wszystkie jego dane. Tak się śwat dziś kręci.

    • w wersji polskiej “prosimy załączyć kopię obu stron dowodu osobistego”.

  16. Używam HTTP UserAgent cleaner’a i jak na razie zauważyłem że tylko Multibank mnie wypluwa przez zmianę agenta

  17. Przepraszam ale sądzę że panopticlick ściemę wali i coś tam jest nie tak.
    Zawsze pokazuje:
    “Currently, we estimate that your browser has a fingerprint that conveys at least 22.29 bits of identifying information.”

    Pomimo tego że zmieniam wszystko w tabeli poniżej. Chyba im się skrypty pozajączkowały bo jak na mnie to nie działa.
    A i jeszcze z moich przemyśleń wynika że najlepiej byłoby używać ustawień takich których używa jak najwięcej osób – byłoby tzw wmieszanie się w tłum

    • ““Currently, we estimate that your browser has a fingerprint that conveys at least 22.29 bits of identifying information.”
      Pomimo tego że zmieniam wszystko w tabeli poniżej. Chyba im się skrypty pozajączkowały bo jak na mnie to nie działa.”

      No, jakoś dziwnie to działa. Wyłączyłem cookiesy, a w dalszym ciągu stronka pokzuje identyczny wynik.

      “A i jeszcze z moich przemyśleń wynika że najlepiej byłoby używać ustawień takich których używa jak najwięcej osób – byłoby tzw wmieszanie się w tłum”
      I dokładnie o to chodzi ;). Im mniej “punktow” dostajesz tym trudniej cie jednoznacznie zidentyfikowac.

  18. @e no ok… ale tutaj tego gosciu nie robi, z tego co mi sie zdaje korzysta wylacznie z przegladarki… wiec albo o czyms nie wiem, albo koles ma taki nawyk/odruch, albo nie bardzo kuma co robi… mniejsza o kolesia… chodzi mi o to czy ja o czyms nie wiem :-) ???

  19. jakoś temu nie wierzę… Wszedłem na uczelni:
    “Your browser fingerprint appears to be unique among the 5,117,277 tested so far.”

  20. A tak z ciekawości. Jak ręcznie w pliku zmienić HTTP HEADERS? Nie za pomocą wtyczki. Szukam i szukam i nie mogę znaleźć pliku…

    • raczej nie tak prosto jeżeli masz źródła to tam, jeżeli nie w operze 12 chyba była możliwość
      poprzez about:config

    • Ręcznie trudno ale możesz uruchomić burpsuite proxy i ustawić regułę na nagłówek z useragentem, wtedy wpiszesz sobie co chcesz nawet “gopher” ;)

  21. Mam dwa monitory o różnych rozdzielczościach. Jak przesunę okno przeglądarki z jednego na drugi to fingerprint mam już inny :)

  22. http://pet-portal.eu/fingerprint/ ta strona to bzdura, fingerprint jest geberowany tylko na podstawie rozdzielczosci.

  23. a mnie cieszy ta informacja: “Currently, we estimate that your browser has a fingerprint that conveys 14.88 bits of identifying information”. przeglądarka nie tak znów unikalna, ale ten numer bitów ;)

Twój komentarz

Zamieszczając komentarz akceptujesz regulamin dodawania komentarzy. Przez moderację nie przejdą: wycieczki osobiste, komentarze nie na temat, wulgaryzmy.