2012-12-16 12 views
77

Przeczytałem to pytanie: How Do Internet Advertisers Use Third-Party Cookies? o tym, jak działają pliki cookie śledzące strony trzecie, ale nadal jestem bardzo zdezorientowany. Nie rozumiem, jak mogę odwiedzić witrynę A (zwykłą stronę internetową z reklamami), w jaki sposób witryna B (witryna reklamowa) może przypisać mój komputer identyfikator, a następnie dowiedzieć się, że znajdowałem się na stronie A i innych stronach internetowych po niej które mają swoje reklamy.Jak działają "śledzące pliki cookie" firm zewnętrznych?

Odpowiedz

163

Najpierw pliki cookie są ustawiane i pobierane za pośrednictwem nagłówków HTTP. Jeśli przeglądarka wysyła żądanie do http://example.com, odpowiedź może zostać zwrócona z nagłówkiem o następującej treści: Set-Cookie: foo=bar. Twoja przeglądarka przechowuje to ciasteczko, a na kolejnych prośbach do http://example.com Twoja przeglądarka wyśle ​​foo=bar w nagłówku Cookie. (A przynajmniej do momentu wygaśnięcia lub usunięcia pliku cookie.) Przeglądarka wysyła plik cookie foo=bar z dowolnym żądaniem do http://example.com, niezależnie od tego, kto zainicjował żądanie lub jaki jest kontekst. Jeśli http://example2.com zawiera tag <img src="http://example.com/img.jpg">, przeglądarka wyśle ​​plik cookie foo=bar po pobraniu http://example.com/img.jpg, mimo że za wysłanie żądania odpowiada http://example2.com.

Jeśli witryna internetowa A zawiera reklamę wyświetlaną przez witrynę B, witryna B może ustawić plik cookie w przeglądarce. Na przykład, strona A może użyć <iframe src="http://websiteB.com/ad.html></iframe> do wyświetlenia reklamy z witryny B. Następnie, gdy przeglądarka przejdzie do pobierania http://websiteB.com/ad.html, odpowiedź powróci z nagłówkiem Set-Cookie, który ustawia plik cookie z pewnym unikatowym losowym ciągiem. Jeżeli strona C zawiera również reklamę z witryny B, to ten unikalny plik cookie zostanie wysłany, gdy reklama na stronie C zostanie pobrana ze strony internetowej B.

Jeśli chodzi o sposób, w jaki strona B wie, którą stronę odwiedza, są różne sposoby. W niektórych przypadkach, gdy przeglądarka wysyła żądanie do jednej witryny, informuje stronę, z której strony pochodzi. Więc kiedy przeglądarka przejdzie do pobierania http://websiteB.com/ad.html, może zawierać nagłówek HTTP Referer: http://websiteA.com, który mówi stronie B, że żądanie zostało zainicjowane przez witrynę A. Za każdym razem, gdy strona B widzi unikalny losowy ciąg, który ci przypisał, może sprawdzić nagłówek Referer aby dodać do swojego logu, gdzie byłeś. Jeśli strona A współpracuje z witryną B, A może bezpośrednio powiedzieć B, że pochodzi z witryny A. Na przykład strona A może zawierać reklamę z witryny B przy użyciu adresu <iframe src="http://websiteB.com/ad.html?referer=websiteA.com">, a następnie strona B wyświetli odnośnik ciąg zapytania.

Czy to pomaga? Czy istnieją konkretne części odpowiedzi, które łączysz, które nie mają dla ciebie żadnego sensu?

+2

Cześć Emily :) Dziękuję bardzo za szczegółową odpowiedź !! Mam tylko kilka pytań: po pierwsze, strona A nie współpracuje z witryną B, czy istnieje alternatywny mechanizm, który pozwala stronie B, z której pochodzę? Po drugie, czy oprócz plików cookie istnieją inne narzędzia do śledzenia stron trzecich? – mounaim

+4

@mounaim: Na twoje pierwsze pytanie: Jeśli A nie współpracuje z B, to nie zawiera żadnego kodu śledzenia B na swojej stronie internetowej. Śledzenie jest logicznie niemożliwe. Do twojego drugiego pytania: Tak, istnieje wiele metod śledzenia oprócz plików cookie. Dobrym początkiem dla badań może być EverCookie http://samy.pl/evercookie/. Na przykład localStorage HTML5 może być również używany do przechowywania i pobierania identyfikatorów. Co więcej, można to zrobić w ukryciu za pomocą odcisków palców przeglądarki https://panopticlick.eff.org/. Jeśli chcesz wiedzieć więcej, możesz zostawić mi wiadomość, aby uzyskać mnóstwo materiałów. – Thorben

+1

@ Thorben, chyba że twoja przeglądarka używa nagłówka HTTP Referrer. – nhooyr

Powiązane problemy