Blog JSystems - uwalniamy wiedzę!

Szukaj

Z tego artykułu dowiesz się:

  • Czym jest Google Hacking i dlaczego zwykła wyszukiwarka bywa najskuteczniejszym narzędziem rekonesansu
  • Jak działają operatory site:, inurl:, intitle:, filetype:, intext: i jak je łączyć
  • Jakimi zapytaniami trafia się na wystawione kamery, panele administracyjne, pliki .env, logi i bazy danych
  • Czym jest Google Hacking Database (GHDB) i jak uzupełnia ją Shodan
  • Gdzie przebiega granica prawna (art. 267 Kodeksu karnego) i jak realnie zabezpieczyć własne zasoby

Najskuteczniejsze narzędzie rekonesansu w białym wywiadzie (OSINT, czyli wywiad ze źródeł otwartych) nie jest egzotycznym exploitem. To wyszukiwarka, której używasz codziennie. Google nieustannie indeksuje sieć i wciąga do swojego katalogu również to, czego właściciele woleliby tam nie widzieć: pliki konfiguracyjne z hasłami, kopie zapasowe baz danych, niezabezpieczone panele administracyjne, a nawet podglądy z kamer przemysłowych. Dotarcie do nich nie wymaga łamania zabezpieczeń. Wystarczy wiedzieć, jak zadać pytanie.

Tę technikę nazywamy Google Hacking (albo Google Dorking), a pojedyncze, sprytnie zbudowane zapytanie to dork. Pojęcie spopularyzował Johnny Long, autor książki „Google Hacking for Penetration Testers", a dziś jest to stały element pracy każdego pentestera i analityka OSINT. Zanim ktokolwiek wyśle pierwszy pakiet do testowanej infrastruktury, najpierw godzinami przepytuje Google.

Google Hacking i Google Dorks - grafika tytułowa z przykładowym dorkiem do wyszukiwania kamer AXIS
Google Dork to zwykłe zapytanie wzbogacone o operatory zaawansowane. Tu klasyk: intitle:"Live View / - AXIS", który odnajduje strony startowe kamer sieciowych AXIS.
Zasada porządkująca cały artykuł. Pokazujemy te techniki w celu świadomościowym i obronnym: żeby zrozumieć, jak łatwo dane wyciekają do indeksu, i żeby umieć to u siebie zamknąć. Wszystkie zrzuty wyników mają zamaskowane adresy, hosty i dane potencjalnych ofiar. Połączenie się z cudzym systemem bez zgody to przestępstwo, nawet gdy „Google sam pokazał" i nie było hasła. Do granic prawnych wracamy w osobnej sekcji.

Zanim zaczniesz, jedno zastrzeżenie. Najsłynniejsze dorki - te krążące w setkach poradników - dziś częściej zwracają artykuły, wątki na forach i bazy dorków o samych dorkach niż realne wycieki czy urządzenia. To skutek ich popularności: Google promuje „autorytatywne" strony treściowe nad garstką faktycznych plików i paneli. Da się to obejść: wyklucza się strony poradnikowe operatorem minus (np. -site:github.com -site:reddit.com) i celuje w charakterystyczny napis interfejsu konkretnego producenta zamiast w „memiczną" frazę. Rozwijamy to w sekcji Dlaczego popularne dorki zwracają artykuły, a nie wycieki i urządzenia.

Jak działają operatory wyszukiwania

Google Dork opiera się na operatorach, które zawężają wyniki z chirurgiczną precyzją. Każdy odpowiada za inny fragment strony: adres, tytuł, treść lub typ pliku. Prawdziwa moc pojawia się, gdy łączysz je w jedno zapytanie.

OperatorCo robiPrzykład
site:ogranicza wyniki do domeny lub subdomenysite:przyklad.pl
inurl:szuka frazy w adresie URLinurl:admin
intitle:szuka frazy w tytule strony (znacznik <title>)intitle:"index of"
intext:szuka frazy w treści stronyintext:"DB_PASSWORD"
filetype: / ext:ogranicza do typu plikufiletype:sql
"..."dopasowanie dokładnej frazy"Welcome to phpMyAdmin"
- (minus)wyklucza wynikisite:przyklad.pl -inurl:www
OR / |alternatywaext:conf OR ext:cfg

Najprostszy, a zarazem jeden z najważniejszych operatorów to site:. Połączony z filetype: pokazuje, jakie dokumenty Twojej domeny indeksuje Google. Sama liczba wyników zdradza skalę zasobu, a kombinacja z wykluczeniem -inurl:www potrafi odsłonić subdomeny deweloperskie i testowe, o których nikt już nie pamiętał.

site:przyklad.pl filetype:pdf            # dokumenty PDF z domeny
site:przyklad.pl filetype:xlsx           # arkusze kalkulacyjne
site:*.przyklad.pl -inurl:www         # subdomeny inne niz www
site:przyklad.pl intext:"poufne"      # dokumenty oznaczone jako poufne
Wyniki Google dla zapytania site:jsystems.pl filetype:pdf - lista dokumentów PDF z domeny
Operator site: połączony z filetype:pdf zwraca wszystkie zaindeksowane dokumenty PDF domeny. W realnym audycie to często prezentacje, oferty, a nawet dokumenty wewnętrzne, których metadane zdradzają imiona autorów i ścieżki na serwerze.

Indeksy katalogów: gdy serwer pokazuje wszystko

Jeśli w katalogu na serwerze brakuje pliku startowego (np. index.html), a serwer ma włączone wyświetlanie zawartości katalogów (tzw. directory listing), przeglądarka pokaże spis plików jak okno menedżera plików. Tytuł takiej strony zaczyna się od „Index of", co czyni ją trywialną do odnalezienia.

intitle:"index of" "backup"          # otwarte katalogi z kopiami zapasowymi
intitle:"index of" "parent directory"
intitle:"index of" "*.sql"            # katalogi ze zrzutami baz
Wyniki Google dla intitle:index of backup - lista otwartych katalogów z kopiami zapasowymi
Otwarte katalogi z kopiami zapasowymi. Wpis [PARENTDIR] i pliki typu .zip czy .php to klasyczna sygnatura listingu katalogu. Tu znajdują się archiwa, konfiguracje, a bywa, że całe bazy danych.

Wystawione panele administracyjne

Panel zarządzania, który miał być dostępny tylko z sieci wewnętrznej, regularnie trafia do indeksu. Sam formularz logowania nie jest jeszcze luką, ale dla atakującego to mapa: zdradza, jaki system stoi pod spodem, i staje się punktem startowym do testowania domyślnych haseł. Generyczne dorki działają najlepiej zawężone operatorem site: do badanej domeny. Jeśli zaś chcesz zobaczyć realne, żywe panele, celuj w napis interfejsu konkretnego producenta. Dobrym przykładem są routery MikroTik, których strona konfiguracyjna ma stały, charakterystyczny tytuł.

site:przyklad.pl inurl:/admin/login.php       # panele logowania w obrebie domeny
intitle:"RouterOS router configuration page"   # panele routerow MikroTik (zywe urzadzenia)
intitle:"Login" inurl:/admin -site:github.com  # bez stron z poradnikami
Wyniki Google dla intitle:RouterOS router configuration page - realne panele konfiguracyjne routerów MikroTik
Dork intitle:"RouterOS router configuration page" zwraca realne, wystawione panele routerów MikroTik. Snippety mówią same za siebie: „You have connected to a router. Administrative access only" oraz „Login: Password: WebFig". Adresy i nazwy właścicieli zamaskowaliśmy.

Pliki konfiguracyjne i sekrety (.env)

To kategoria, w której Google Hacking robi się naprawdę groźny. Pliki .env przechowują zmienne środowiskowe aplikacji: dane dostępowe do bazy, klucze API, sekrety podpisujące sesje. Gdy taki plik wyląduje w publicznym katalogu albo zostanie przez nieuwagę wgrany do repozytorium, wyszukiwarka indeksuje jego treść w całości.

filetype:env intext:"DB_PASSWORD"        # haslo do bazy w pliku .env
filetype:env "APP_KEY"                  # klucz aplikacji (Laravel itp.)
intext:"AKIA" filetype:env             # klucze dostepowe AWS
filetype:pem intext:"PRIVATE KEY"        # klucze prywatne SSH/TLS
Wyniki Google dla filetype:env DB_PASSWORD - wystawione pliki konfiguracyjne, dane w podglądach zredagowane
Wystawione pliki .env. Na potrzeby artykułu nazwy repozytoriów i zawartość podglądów zostały zredagowane, ale układ nie kłamie: w środku siedzą loginy do bazy, klucze API i sekrety aplikacji. To jeden z najczęstszych źródeł realnych wycieków.
Uwaga. Wyciek pojedynczego klucza API czy hasła do bazy potrafi otworzyć drogę do całej infrastruktury. Dlatego sekrety nigdy nie powinny trafiać do publicznych katalogów ani do repozytoriów kodu. Wracamy do tego w sekcji o obronie.

Logi systemowe

Pliki logów (.log) bywają zapisywane w publicznie dostępnych katalogach „na chwilę", podczas diagnozowania problemu, i zostają tam na lata. Problem w tym, że logi aplikacji potrafią zawierać tokeny sesji, adresy e-mail, a w gorszych przypadkach hasła przesyłane w żądaniach.

filetype:log intext:"password"           # logi zawierajace slowo 'password'
filetype:log inurl:access              # logi dostepu serwera WWW
filetype:log "Authorization: Bearer"      # logi z tokenami sesji
Wyniki Google dla filetype:log password - wystawione logi systemowe z zredagowanymi danymi
Wystawione logi. Podglądy celowo zredagowaliśmy, bo w realnych wynikach pojawiają się tu loginy, tokeny i sesje. To dane, które nigdy nie powinny być publiczne, a mimo to regularnie lądują w indeksie.

Bazy danych i zrzuty SQL

Zrzut bazy danych (plik .sql) to najgorszy możliwy wyciek: zawiera całą strukturę i dane, łącznie z tabelą użytkowników. Deweloperzy tworzą takie zrzuty do migracji albo backupu i zostawiają je w katalogu projektu, skąd Google je indeksuje. Drugą furtką są wystawione panele phpMyAdmin (webowy klient bazy MySQL/MariaDB) działające bez ograniczenia dostępu.

filetype:sql "INSERT INTO" "VALUES" "password"   # zrzuty z danymi uzytkownikow
intitle:"phpMyAdmin" "Welcome to phpMyAdmin"
filetype:sql "CREATE TABLE" intext:"@gmail.com"   # zrzuty z adresami e-mail
Wyniki Google dla filetype:sql INSERT INTO password - wystawione zrzuty baz danych, zawartość zredagowana
Wystawione zrzuty SQL. Widoczny (zredagowany) wiersz INSERT INTO `users` VALUES (...) z polem hasła w formie skrótu bcrypt pokazuje, co dokładnie wycieka: kompletne konta użytkowników gotowe do złamania offline.

A tak wygląda sam panel zarządzania bazą od środka. Poniższy zrzut pochodzi z oficjalnego, publicznego serwera demonstracyjnego phpMyAdmin (projekt udostępnia go każdemu do testów), więc mogliśmy bezpiecznie pokazać pełen interfejs: drzewo baz po lewej, zakładki zarządzania na górze i podgląd rekordów konkretnej tabeli. Dokładnie taki widok dostaje ktoś, kto trafi na panel phpMyAdmin wystawiony bez logowania, z tą różnicą, że tam w tabelach są prawdziwe dane. Nazwy obcych baz w drzewie zamaskowaliśmy.

Panel phpMyAdmin (oficjalne demo) - drzewo baz danych, zakładki i podgląd rekordów tabeli
Panel phpMyAdmin na oficjalnym serwerze demonstracyjnym projektu (demo.phpmyadmin.net). Po lewej drzewo baz (obce nazwy zamaskowane), na górze zakładki zarządzania, w środku podgląd rekordów tabeli wraz z zapytaniem SQL. Tak od środka wygląda wystawiony menedżer bazy danych.

Kamery IP: klasyka Google Hacking

Kamery sieciowe to wizytówka Google Hacking, bo ich panele podglądu mają charakterystyczne, powtarzalne tytuły stron. Producenci tacy jak AXIS od lat używają tego samego szablonu „Live View", więc jeden dork odnajduje tysiące urządzeń naraz. Wiele z nich jest wystawionych do internetu bez żadnego uwierzytelnienia, bo ktoś chciał „tylko podejrzeć z domu".

intitle:"Live View / - AXIS"             # strony startowe kamer AXIS
inurl:"view/view.shtml"                # klasyczny panel podgladu
inurl:"/axis-cgi/jpg/image.cgi"        # bezposredni strumien obrazu
Wyniki Google dla intitle:Live View AXIS - lista wystawionych kamer sieciowych, hosty zredagowane
Realne wyniki dla intitle:"Live View / - AXIS". Tytuły zdradzają konkretne modele kamer (M1124, 205, P1365), a snippety to typowe strony „Live View" wbudowane w firmware kamer AXIS - te urządzenia często działają na własnym serwerze HTTP z domyślną parą haseł. Hosty i nazwy właścicieli zamaskowaliśmy.

Cudzych kamer nie otwieramy, ale żeby pokazać, jak taki panel wygląda od środka, postawiliśmy własną kamerę w środowisku testowym i zrobiliśmy zrzut jej interfejsu „Live View". W okno podglądu podstawiliśmy nieszkodliwą grafikę zamiast realnego nagrania, za to cała reszta to typowy panel kamery sieciowej: na żywo aktualizowany strumień, menu konfiguracji, sterowanie PTZ (obrót i zoom) oraz informacja o modelu i firmware. W realnych, wystawionych kamerach w tym oknie widać po prostu obraz z pomieszczenia, bez żadnego logowania.

Interfejs Live View kamery sieciowej - strumień na żywo, sterowanie PTZ i informacje o urządzeniu (środowisko testowe)
Panel „Live View" kamery sieciowej w naszym środowisku testowym. W oknie podglądu podstawiliśmy nieszkodliwą grafikę zamiast realnego nagrania; poza tym to typowy panel kamery: nagłówek ze znacznikiem czasu, menu konfiguracji, sterowanie PTZ i dane urządzenia. Tak wygląda interfejs, który przy wystawionej kamerze pokazuje obraz bez logowania.

Kamery przemysłowe i serwery webcamXP

Obok kamer AXIS jest cała kategoria oprogramowania do obsługi kamer na komputerach z Windows, np. webcamXP. Te serwery wystawiają własny interfejs webowy, często na nietypowych portach (8080, 8090), i równie często bez logowania. Tu Google Hacking warto uzupełnić o Shodan, czyli wyszukiwarkę urządzeń podłączonych do internetu (tzw. internetu rzeczy), która zamiast treści stron indeksuje banery usług i otwarte porty.

intitle:"webcamXP" inurl:8080            # serwery webcamXP w Google
# Shodan: webcamxp                       # te same urzadzenia po stronie banerow uslug
Wyniki Google dla intitle:webcamXP inurl:8080 - serwery kamer webcamXP, hosty zredagowane
Serwery webcamXP w wynikach Google. Sam fakt, że panel webowy tego oprogramowania trafił do indeksu, pokazuje, że jest wystawiony do internetu; napis „Not logged in" to tylko domyślny status gościa (nie dowód, że sam podgląd kamery jest otwarty - to zależy od konfiguracji serwera). Tytuły to nazwa oprogramowania, więc nie identyfikują ofiary, ale hosty i tak zamaskowaliśmy.
Shodan - 89 wystawionych serwerów webcamXP z mapą krajów, adresy IP zredagowane
To samo zjawisko w Shodan: blisko 90 wystawionych serwerów webcamXP z rozbiciem na kraje, porty i organizacje sieciowe. Shodan pokazuje banery usług (nagłówek Server: webcamXP), a my zamaskowaliśmy adresy IP i podglądy.

Drukarki sieciowe

Drukarka brzmi niegroźnie, ale jej panel webowy to pełnoprawne urządzenie w sieci: zdradza model, status, nazwy wydruków, a często ma domyślne hasło administratora. W 2013 roku głośno było o tym, że Google zindeksowało dziesiątki tysięcy publicznych drukarek HP. Problem nie zniknął, ale żywe panele najłatwiej zobaczyć dziś w Shodan, po porcie 9100 (protokół druku) i nagłówkach serwerów drukarek. Sam dork drukarkowy w Google zwraca w większości artykuły o zjawisku, a nie panele, o czym piszemy w następnej sekcji.

inurl:hp/device/this.LCDispatcher       # panel webowy drukarek HP
intitle:"HP LaserJet" inurl:SSI          # strony statusu HP LaserJet
# Shodan: hp laserjet                    # banery drukarek; port 9100 = druk
Shodan - blisko 6 tysięcy wystawionych drukarek HP LaserJet, port 9100, adresy IP zredagowane
Shodan dla zapytania „hp laserjet": blisko 6 tysięcy urządzeń, z dominującym portem 9100. W banerach widać status PJL urządzenia (DISPLAY="Ready", ONLINE=TRUE) oraz model. Adresy IP zamaskowaliśmy.

Dlaczego popularne dorki zwracają artykuły, a nie wycieki i urządzenia

Efekt ten dotyka najsłynniejszych dorków niezależnie od tego, czy celują w urządzenia, czy w wycieki. Jeśli wpiszesz najbardziej znane, „memiczne" zapytania - nie tylko kamerowe czy drukarkowe, ale też klasyki na pliki .env i zrzuty baz - często zobaczysz to samo, co my podczas przygotowywania tego artykułu: zamiast paneli urządzeń i realnych wycieków wyskoczą poradniki, wątki na forach, filmy i wpisy w bazach dorków. To nie błąd, tylko skutek popularności. Te zapytania od lat krążą w setkach tutoriali, więc Google ma dla nich mnóstwo „autorytatywnych" stron treściowych i to je promuje na górze. Realnych trafień jest przy tym garstka, mają niski autorytet w wyszukiwarce, a stare zasoby znikają z sieci. Efekt: słynny dork pokazuje artykuły o samym sobie.

Najlepszy przykład to klasyczny dork na panele drukarek HP. W teorii ma odsłaniać urządzenia, w praktyce zwraca głośny artykuł „Google indexes more than 86000 HP printers", wpis w GHDB i posty na forach.

Wyniki Google dla dorka drukarek HP - głównie artykuły o zjawisku, wpis GHDB i posty na forach, a nie panele
Realny efekt słynnego dorka na drukarki HP: zamiast paneli urządzeń wyszukiwarka zwraca artykuł „Google indexes more than 86000 HP printers", wpis z GHDB i posty na forach. Tak kończy się większość najpopularniejszych zapytań.

Lista dorków, które dziś najczęściej kończą się właśnie tak (warto je znać, ale nie licz na panele):

inurl:"ViewerFrame?Mode="            # slynny dork na kamery Panasonic
inurl:"view/view.shtml"              # ogolny panel podgladu kamer
intitle:"webcamXP" inurl:8080        # serwery webcamXP
inurl:hp/device/this.LCDispatcher    # panele drukarek HP
intitle:"Live View / - AXIS"         # kamery AXIS, czesto juz przykryte artykulami

Jak to omijać, gdy naprawdę zależy Ci na urządzeniach:

  • Wykluczaj strony treściowe operatorem minus. Dopisz na koniec zapytania -site:exploit-db.com -site:github.com -site:reddit.com -inurl:github, żeby wypchnąć poradniki i bazy dorków.
  • Celuj w napis interfejsu konkretnego producenta, a nie w „memiczną" frazę. Tytuł panelu MikroTik (intitle:"RouterOS router configuration page") wciąż zwraca żywe urządzenia, bo rzadko jest cytowany w artykułach. To właśnie ten dork dał zrzut z sekcji o panelach administracyjnych.
  • Przesiądź się na Shodan, gdy zależy Ci na samych urządzeniach. Shodan indeksuje banery usług i otwarte porty, więc pokazuje sprzęt bezpośrednio, bez warstwy treści SEO. To dlatego drukarki i kamery najlepiej widać właśnie tam.

Google Hacking Database (GHDB)

Nie musisz wymyślać dorków od zera. Google Hacking Database (GHDB), prowadzona przez Exploit-DB, to katalog tysięcy gotowych zapytań posegregowanych według rodzaju ekspozycji: pliki z hasłami, wrażliwe katalogi, wykrywanie wersji serwerów, urządzenia online. Każdy wpis ma dork, opis i kategorię.

Google Hacking Database na Exploit-DB - tabela dorków z kategoriami i autorami
Google Hacking Database na Exploit-DB. Kategorie takie jak „Files Containing Passwords" czy „Vulnerable Servers" pozwalają od razu sięgnąć po sprawdzone zapytania zamiast budować je ręcznie.

Automatyzacja dorków: pagodo i sitedorks

Gdy od kilku ręcznych zapytań przechodzisz do audytu całej domeny, sięgasz po automaty. Dwa narzędzia zdominowały ten temat i oba są darmowe oraz otwartoźródłowe: pagodo systematycznie przepuszcza przez jedną domenę całą listę GHDB, a sitedorks sprawdza, gdzie dany podmiot pojawia się na setkach platform. To dwa różne zadania, więc warto znać oba.

pagodo - cała baza GHDB na jednej domenie

pagodo (projekt opsdisk, Python 3.6+) to para skryptów. Najpierw ghdb_scraper.py pobiera aktualną listę dorków z GHDB i zapisuje je do katalogu dorks/ (cała lista, JSON oraz osobne pliki na każdą kategorię). Potem pagodo.py uruchamia te dorki dla wskazanej domeny przez bibliotekę yagooglesearch, z wbudowanymi mechanizmami zmniejszającymi ryzyko blokady: losowymi opóźnieniami, rotacją proxy i losowaniem nagłówka User-Agent.

# instalacja
git clone https://github.com/opsdisk/pagodo
cd pagodo && python3 -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt

# 1) pobierz aktualne dorki z GHDB (all_google_dorks.txt + JSON + pliki kategorii)
python3 ghdb_scraper.py -s -j -i

# 2) odpal je na SWOJEJ domenie, z losowym opoznieniem 37-60 s
python3 pagodo.py -g dorks/all_google_dorks.txt -d przyklad.pl -m 25 -i 37 -x 60 -s

Najważniejsze flagi pagodo.py:

  • -g - plik z dorkami (wymagany), np. wygenerowany przez ghdb_scraper.py
  • -d - domena celu; zawęża każdy dork operatorem site:
  • -m - maksymalna liczba wyników na pojedynczy dork (domyślnie 100)
  • -i oraz -x - minimalne i maksymalne losowe opóźnienie w sekundach między zapytaniami (domyślnie 37 i 60)
  • -p - lista proxy używanych rotacyjnie (round-robin)
  • -o / -s - zapis wyników do pliku JSON / tekstowego (z automatycznym znacznikiem czasu, jeśli nie podasz nazwy)

Na wyjściu dostajesz raport (JSON i/lub TXT) z adresami URL pogrupowanymi według dorka, który je znalazł. Dla skryptu pobierającego dorki, ghdb_scraper.py, kluczowe są trzy flagi: -s zapisuje wszystkie dorki do all_google_dorks.txt, -j pełną odpowiedź JSON, a -i rozbija dorki na osobne pliki według kategorii.

sitedorks - gdzie cel pojawia się na setkach platform

sitedorks podchodzi do tematu zupełnie inaczej. Bierze jedną frazę (np. nazwę firmy, nick, adres e-mail lub domenę) i buduje zapytania site: dla każdej z ponad 600 platform z wbudowanej listy (15 kategorii: serwisy społecznościowe, komunikatory, repozytoria kodu, pastebiny, fora i inne). Jednym poleceniem sprawdzasz więc, gdzie dany podmiot zostawił ślad w sieci. Wyniki domyślnie otwiera w kartach przeglądarki, a z flagą -echo po prostu wypisuje gotowe adresy zapytań na ekran.

# instalacja (dziala na domyslnym Kali / Python 3)
git clone https://github.com/Zarcolio/sitedorks
cd sitedorks && bash install.sh

# sprawdz, gdzie fraza pojawia sie na ponad 600 platformach (domyslnie Google)
python3 sitedorks.py -query "przyklad.pl"

# tylko serwisy spolecznosciowe; wypisz adresy zamiast otwierac w przegladarce
python3 sitedorks.py -cat social -query "Jan Kowalski" -echo

Najważniejsze flagi sitedorks:

  • -query - szukana fraza (wymagana)
  • -engine - wyszukiwarka: google (domyślna), bing, duckduckgo, yandex, baidu, yahoo
  • -cat - ogranicz do wybranych kategorii platform (np. social, comm)
  • -site on|off|inurl - steruje operatorem site: lub zamienia go na inurl: (dla Google i DuckDuckGo)
  • -count - ile platform mieści się w jednym zapytaniu (obejście limitu długości zapytania)
  • -wait - odstęp między otwieraniem kart, żeby ograniczyć CAPTCHA
  • -echo - wypisz adresy zapytań zamiast otwierać je w przeglądarce

Które wybrać i jak nie oberwać blokadą

Sięgnij po pagodo, gdy chcesz systematycznie i okresowo przeskanować własną domenę pełną listą GHDB i dostać raport z trafień. Wybierz sitedorks, gdy szukasz, gdzie konkretny podmiot (firma, osoba, nick) figuruje na wielu platformach naraz, czyli przy klasycznym rozpoznaniu OSINT. W obu wypadkach obowiązuje ta sama zasada: masowe, szybkie zapytania błyskawicznie wywołują CAPTCHA (test odróżniający człowieka od bota) i czasową blokadę IP, a automatyczne odpytywanie strony wyników łamie regulamin Google. Dlatego działaj z opóźnieniami i wyłącznie na zasobach, na które masz zgodę. Skalowo i bez ryzyka blokady zrobisz to przez oficjalne API: Google Programmable Search (Custom Search JSON API) albo komercyjne SerpAPI, bo pytasz wtedy interfejs przeznaczony do maszynowego odpytywania, a nie stronę wyników.

Granica prawna: gdzie kończy się legalny rekonesans

To najważniejsza sekcja tego artykułu. Budowanie zapytań i przeglądanie wyników Google jest legalne, bo korzystasz z publicznego indeksu wyszukiwarki. Przekroczenie granicy następuje w momencie, w którym łączysz się z cudzym systemem bez zgody jego właściciela.

Jak się bronić: zamknij to u siebie

Dobra wiadomość jest taka, że obrona przed Google Hacking jest w dużej mierze higieną konfiguracji. Oto co realnie działa.

1. Wyłącz wyświetlanie katalogów i wymuś uwierzytelnianie

Na serwerze WWW wyłącz directory listing (w Apache: Options -Indexes) i postaw uwierzytelnianie przed każdym panelem administracyjnym. Panele zarządzania nie powinny być w ogóle dostępne z publicznego internetu, a jedynie z sieci wewnętrznej lub przez VPN (szyfrowany tunel do sieci firmowej).

2. Trzymaj sekrety poza katalogiem publicznym i poza repozytorium

Pliki .env, klucze i konfiguracje muszą leżeć poza katalogiem dostępnym z sieci. Do repozytorium dodaj wpis w .gitignore, a w organizacji włącz skanowanie sekretów (secret scanning), które wychwytuje przypadkowo zacommitowane klucze. Jeśli sekret raz wyciekł, trzeba go unieważnić i wygenerować nowy, bo usunięcie pliku nie cofa wycieku.

# .gitignore - nie wpuszczaj sekretow do repozytorium
.env
*.sql
*.log
*.pem

3. robots.txt nie chroni, tylko prosi

Częsty błąd: wpisanie wrażliwego katalogu do robots.txt w przekonaniu, że to go ukryje. Przeciwnie. robots.txt to tylko prośba do robotów o nieindeksowanie, której treść jest publiczna i sama wskazuje atakującemu, gdzie szukać. Ochroną jest usunięcie lub zabezpieczenie zasobu, a nie wpis w pliku.

4. Usuń to, co już wyciekło

Jeśli wrażliwa strona jest już w indeksie: najpierw zabezpiecz albo usuń sam zasób, potem dodaj nagłówek lub metatag noindex i skorzystaj z narzędzia Usuwanie adresów URL w Google Search Console. Kolejność jest istotna, bo samo noindex bez zabezpieczenia zasobu zostawia treść dostępną pod bezpośrednim adresem.

5. Zmień domyślne hasła i odetnij urządzenia IoT

Kamery, drukarki i inne urządzenia internetu rzeczy konfiguruj z nowym, silnym hasłem i nie wystawiaj ich bezpośrednio do internetu. Jeśli zdalny dostęp jest konieczny, prowadź go przez VPN, a nie przez przekierowanie portu na publiczny adres.

6. Audytuj się sam, regularnie

Najlepsza obrona to spojrzenie na siebie oczami atakującego. Uruchamiaj dorki ograniczone do własnej domeny operatorem site:, przeglądaj swoje adresy w Shodan i ustaw monitoring, który zaalarmuje, gdy w sieci pojawi się nowa, niezamierzona usługa. To audyt własnego zasobu, więc jest w pełni legalny i powinien wejść do stałego rytmu pracy zespołu.

site:twojafirma.pl filetype:env
site:twojafirma.pl intitle:"index of"
site:twojafirma.pl inurl:admin
site:twojafirma.pl filetype:sql OR filetype:bak OR filetype:log

Podsumowanie

Google Hacking nie jest magią ani exploitem. To umiejętność precyzyjnego pytania, połączona ze świadomością, jak wiele danych organizacje zostawiają w zasięgu zwykłej wyszukiwarki. Dla analityka OSINT i pentestera to pierwszy, najtańszy krok rekonesansu. Dla administratora to lista kontrolna rzeczy, które trzeba zamknąć, zanim zrobi to ktoś inny. Granica między jednym a drugim jest prosta: legalnie analizujesz dane publiczne i własne zasoby, ale nie wchodzisz do cudzych systemów bez zgody.

Najczęstsze pytania

Czy Google Hacking jest legalny?

Samo budowanie zapytań i przeglądanie wyników jest legalne, bo korzystasz z publicznego indeksu Google. Nielegalne staje się dopiero połączenie z cudzym systemem bez zgody właściciela, nawet jeśli nie ma on hasła. W Polsce reguluje to art. 267 Kodeksu karnego.

Czym różni się Google Dork od zwykłego wyszukiwania?

Google Dork używa operatorów zaawansowanych (site:, inurl:, intitle:, filetype:, intext:), które zawężają wyniki do konkretnych fragmentów adresu, tytułu, treści lub typu pliku. Dzięki temu odnajdujesz strony, których właściciele nie chcieli upubliczniać, a które i tak trafiły do indeksu.

Czy samo wyświetlenie wystawionej kamery to przestępstwo?

Wejście na panel cudzej kamery lub urządzenia bez zgody właściciela to uzyskanie dostępu do informacji bez uprawnienia. Odpowiada za to art. 267 Kodeksu karnego, niezależnie od tego, że urządzenie nie miało hasła. Świadomość zagrożenia i obrona są legalne, podgląd cudzych systemów nie.

Jak sprawdzić, czy moja firma jest narażona?

Uruchom dorki ograniczone operatorem site: do własnej domeny (site:twojafirma.pl filetype:env, intitle:"index of", inurl:admin), przeskanuj swoje adresy IP w Shodan i ustaw monitoring. To audyt własnego zasobu, więc jest w pełni legalny.

Jak usunąć wrażliwą stronę z wyników Google?

Najpierw usuń lub zabezpiecz sam zasób, bo blokada w robots.txt nie chroni treści. Następnie użyj narzędzia Usuwanie adresów URL w Google Search Console oraz nagłówka lub metatagu noindex, żeby wypchnąć stronę z indeksu.

Cyberbezpieczeństwo i OSINT JSystems © 2026

Najczęściej zadawane pytania

Czy Google Hacking jest legalny?
Samo budowanie zapytań i przeglądanie wyników wyszukiwarki jest legalne - to publiczne dane indeksu Google. Nielegalne staje się dopiero połączenie się z cudzym systemem bez zgody właściciela, nawet jeśli nie ma on hasła. W Polsce reguluje to art. 267 Kodeksu karnego.
Czym różni się Google Dork od zwykłego wyszukiwania?
Google Dork to zapytanie wykorzystujące operatory zaawansowane (site:, inurl:, intitle:, filetype:, intext:), które zawężają wyniki do konkretnych fragmentów adresu, tytułu, treści lub typu pliku. Pozwala to odnaleźć strony, których właściciele nie chcieli upubliczniać, a które mimo to trafiły do indeksu.
Czy samo wyświetlenie wystawionej kamery to przestępstwo?
Wejście na panel cudzej kamery lub urządzenia bez zgody właściciela to uzyskanie dostępu do informacji bez uprawnienia. W polskim prawie odpowiada za to art. 267 Kodeksu karnego, niezależnie od tego, że urządzenie nie miało hasła. Awareness i obrona są legalne, podgląd cudzych systemów nie.
Jak sprawdzić, czy moja firma jest narażona na Google Hacking?
Uruchom dorki ograniczone operatorem site: do własnej domeny: site:twojafirma.pl filetype:env, site:twojafirma.pl intitle:index of, site:twojafirma.pl inurl:admin. Dodatkowo przeskanuj swoje adresy IP w Shodan i ustaw monitoring. To audyt własnego zasobu, więc jest w pełni legalny.
Jak usunąć wrażliwą stronę z wyników Google?
Najpierw usuń lub zabezpiecz sam zasób (hasło, ograniczenie dostępu, usunięcie pliku), bo blokada w robots.txt nie chroni treści, a jedynie prosi o nieindeksowanie. Następnie użyj narzędzia Usuwanie adresów URL w Google Search Console oraz nagłówka lub metatagu noindex, aby wypchnąć stronę z indeksu.

Komentarze (0)

Musisz być zalogowany by móc dodać komentarz. Zaloguj się przez Google

Brak komentarzy...