2013-07-15 35 views
5

Jestem zaznajomiony z ustawianiem ciasteczek do czytania (przy użyciu php), ale wędrowałem, czy istnieje sposób, w jaki można ustawić pliki cookie przeglądarki użytkownika przez inną witrynę innej firmy (np. .)Czy można odczytać pliki cookie innych podmiotów?

Czy coś takiego można napisać, aby wyświetlić wszystkich użytkowników, którzy ustawili pliki cookie?

print_r($_COOKIE);

Odpowiedz

6

Nie, to niemożliwe.

Możesz czytać tylko pliki cookie pochodzące z własnej domeny. Inne pliki cookie nie są nawet wysyłane na twój serwer.

Jeżeli można odczytać co ciasteczka, użytkownik musi, byłbyś w stanie uzyskać informacji osobistych, takich jak ich hasło Facebook, podłączenie do swojego banku itp

Byłoby to poważne naruszenie prywatności, i jako takie przeglądarki nie wysyłają plików cookie, z wyjątkiem tych z tej samej domeny.

+0

Co się stanie, jeśli mam dostęp do komputera klienta? Czy pliki cookie są szyfrowane lub chronione w jakikolwiek sposób, który uniemożliwia odczytanie ich przez wirusa? – noderman

+0

Strona decyduje, czy szyfruje pliki cookie, czy nie. –

1

Nie, nie jest to możliwe, ponieważ przeglądarka wysyła tylko plik cookie ustawiony przez twoją domenę, zwykle jest dołączony do nagłówka żądania HTTP, jeśli wcześniej był ustawiony przez domenę.

Pliki cookie stron trzecich to pliki cookie ustawiane przez inną domenę w kontekście domeny docelowej, na przykład: podczas otwierania pliku example.com może on mieć baner z innej witryny (example2.com), w tym przypadku, jeśli example2.com ustaw plik cookie, którego nie można odczytać za pomocą example.com, ponieważ pochodzą one z różnych źródeł, ponieważ przeglądarka uniemożliwia dostęp do nich nawet skryptom.

0

Nie, oczywiście, że nie. W przeciwnym razie witryna użytkownika będzie znała mój plik cookie mojego konta bankowego i będziesz mógł ukraść wszystkie moje pieniądze. Pliki cookie są dostępne tylko dla domeny, która je ustawiła.

+0

@Sven: Not true. Domena (np. "Domena.com") może ustawić tylko pliki cookie dla siebie. Może również zawierać ** treść ** z domeny innej firmy, na przykład baner reklamowy z 'ads.com'. Ta zawartość stron trzecich może również ustawiać pliki cookie, tylko dla * swojej * domeny 'ads.com'. Możesz więc skończyć z plikami cookie zarówno z "domeny.com", jak i "reklam".com', ale każdy plik cookie został ustawiony przez odpowiedź HTTP z własnej domeny. 'domain.com' nie może ustawić ciasteczek dla' ads.com' ani na odwrót. – RichieHindle

+1

Masz rację. Właściwie byłbym w stanie wysłać taki plik cookie, ale przeglądarka go nie zaakceptuje. – Sven

2

Nie

Gdy użytkownik odwiedza witrynę, Twoja przeglądarka żąda informacji z tej dziedziny (somedomain.com), i że domena innej firmy może ustawić cookie. Każda domena może tylko odczytać utworzony przez siebie plik cookie, więc nie ma możliwości, aby anotherdomain.com mógł uzyskać dostęp do pliku cookie utworzonego przez somedomain.com.

1

Aby odczytać plik cookie, należy dopasować domenę, w której plik cookie został pierwotnie utworzony. Przeglądarki uważają to za zasadę bezpieczeństwa i nie pozwalają stronie uzyskać dostępu do plików cookie, które nie zostały utworzone.

Należy pamiętać, że istnieje kilka innych względów bezpieczeństwa, które mogą potencjalnie omijać tę regułę, na przykład DNSMasq w połączeniu z fałszywymi certyfikatami przeglądarki. Właśnie dlatego DNSSec (i SOPA) były tak gorącym problemem; dziura w bezpieczeństwie Wtyczki DNSSec będą również chronić twoje pliki cookie przed kradzieżą z pliku cookie.

Istnieją rzeczywiste przykłady luk w zabezpieczeniach, które wyciekły w przeszłości. Zobacz here, aby zobaczyć przykład innej luki w zabezpieczeniach z 2008 roku.

Powiązane problemy