W jaki sposób Googlebot znajduje adresy URL widoczne tylko dla uwierzytelnionych użytkowników?

12

Oto jeden z moich klientów, który wykonuje pewne czynności po zalogowaniu się na swoje konto. Unikalny token to po prostu zaszyfrowany identyfikator użytkownika + znacznik czasu.

94.254.xxx.xxx - - [02 / lip / 2011: 22: 25: 46 +0200] „GET / some-action / unique-token-123abc HTTP / 1.1„ 200 410 ”-„ ”Mozilla / 5.0 (kompatybilny; MSIE 9.0; Windows NT 6.1; Trident / 5.0) ”

Teraz Googlebot w jakiś sposób dowiedział się o tym unikalnym linku i próbował uzyskać dostęp do tego samego adresu URL tydzień później.

66.249.71.179 - - [10 / lip / 2011: 09: 56: 01 +0200] „GET / some-action / unique-token-123abc HTTP / 1.1” 302 - ”-” „Mozilla / 5.0 (kompatybilny; Googlebot / 2.1; + http: //www.google.com/bot.html) „

(kod stanu to 302, ponieważ token wygasł)


Podkreślę, że jest to unikalny adres URL, który był widoczny dokładnie raz, tylko przez 2 sekundy, zanim użytkownik kliknął go i zaczął odwiedzać tę stronę. Nie został wysłany w wiadomości e-mail ani opublikowany nigdzie publicznie.

Co się tutaj dzieje, jak to możliwe, że Google znalazł ten unikalny adres URL?

Jaskółka oknówka
źródło

Odpowiedzi:

6

Trudno powiedzieć na pewno, ale oto prawdopodobne scenariusze:

  • Użytkownik ma zainstalowany pasek narzędzi lub rozszerzenie przeglądarki, który raportuje odwiedzane adresy URL do Google.

  • Ktoś link do tego adresu URL i Google znalazł go, indeksując stronę z tym linkiem.

John Conde
źródło
Jeśli mówisz o Google Toolbar, wysyła tylko adresy URL do Google na wypadek, gdy włączysz funkcję „PageRank”, ale nigdy nie wykorzystaliśmy tych danych do wykrycia nowych adresów URL. Jeśli chodzi o inny pasek narzędzi, który został przez nas wydany, daj mi znać.
metoda
5

Właśnie zdałem sobie sprawę, że użytkownik musiał znaleźć link wychodzący na tej uwierzytelnionej stronie, a następnie wyciekł z prywatnego adresu URL, tak jak Refererpodczas klikania innej witryny. To jedyne możliwe wytłumaczenie i powinno być naprawdę oczywiste od samego początku.

Po wycieku prywatny adres URL mógł zostać ujawniony Google na wiele sposobów, np. Witryna docelowa mogła opublikować swoje dzienniki dostępu publicznie. Uwaga: żaden z linków wychodzących nie korzystał z Google Analytics, więc nie oznacza to, że Googlebot używa adresów URL stron odsyłających z Analytics.

Ponowna lekcja: nigdy nie umieszczaj poufnych danych w adresach URL, chyba że użyjesz protokołu https, w którym to przypadku przeglądarka pozostanie Refererpusta.

Jaskółka oknówka
źródło
1
Masz rację: umieszczanie poufnych danych w adresach URL może być niebezpieczne. W miarę możliwości należy przekazywać unikalne identyfikatory użytkowników między stronami przy użyciu żądań POST (które nie wysyłają zmiennych jako części adresu URL, takich jak żądania GET) lub zmiennych cookie / sesji.
Nick