Passive Google Dorks
Napisał: Patryk Krawaczyński
01/01/2019 w Pen Test 1 komentarz. (artykuł nr 673, ilość słów: 383)
O
d czasu do czasu ktoś wrzuca na Twittera link do hostowanego przez NF.sec zbioru Google Dorks. Problem w tym, że dokument pochodzi z 2013 roku – dlatego widząc jaką cieszy się popularnością wykonałem jego aktualizację. Przy okazji udało się wpaść na narzędzie o nazwie pagodo (Passive Google Dorks). Służy ono nie tylko ściągania i zapisywania do plików .txt i .json wszystkich wpisów z Google Hacking Database, ale także umożliwia uruchomienia tych Google Dorks przeciwko konkretnej domenie.
Skrypty napisane są w Pythonie 3.6+, a ich uruchomienie ogranicza się do stworzenia wirtualnego środowiska i uruchomieniu odpowiednich poleceń:
agresor@stardust:~$ git clone https://github.com/opsdisk/pagodo.git Cloning into 'pagodo'... remote: Enumerating objects: 6, done. remote: Counting objects: 100% (6/6), done. remote: Compressing objects: 100% (5/5), done. remote: Total 134 (delta 0), reused 4 (delta 0), pack-reused 128 Receiving objects: 100% (134/134), 411.15 KiB | 1.02 MiB/s, done. Resolving deltas: 100% (60/60), done. agresor@stardust:~$ cd pagodo agresor@stardust:~/pagodo$ sudo apt-get install -y virtualenv agresor@stardust:~/pagodo$ virtualenv -p python3 .venv Already using interpreter /usr/bin/python3 Using base prefix '/usr' New python executable in /home/agresor/pagodo/.venv/bin/python3 Also creating executable in /home/agresor/pagodo/.venv/bin/python Installing setuptools, pkg_resources, pip, wheel...done. agresor@stardust:~/pagodo$ source .venv/bin/activate (.venv) agresor@stardust:~/pagodo$ pip3 install -r requirements.txt
Po przygotowaniu środowiska możemy odpalić skrobaczkę do strony GHD:
python3 ghdb_scraper.py -j -s
[*] Initiation timestamp: 20190101_201941 [*] Total Google dorks retrieved: 4566 [*] Completion timestamp: 20190101_201945 [+] Done!
Posiadając świeży zbiór danych możemy uruchomić odpytywanie Google o konkretną domenę:
python3 pagodo.py -d nfsec.pl -g google_dorks_20190101_201945.txt \ -l 50 -s -e 35.0 -j 1.1
Należy mieć na uwadze, że wykonywanie ~4.600 zapytań do Google tak szybko, jak to możliwe po prostu nie zadziała. Google słusznie wykryje nas jako bota i zablokuje adres IP (na określony czas), z którego wykonujemy zapytania. W celu wykonywania bardziej “ludzkich” zapytań skrypt posiada kilka trików. Pierwszym z nich jest losowość nagłówka User-Agent – umożliwia stosowanie różnych agentów klienta używanych przy każdym zapytaniu do wyszukiwania. Drugi koncentruje się na losowości czasu pomiędzy zapytaniami. Minimalne opóźnienie jest określane za pomocą opcji -e
, a współczynnik jitter służy do dodawania czasu do minimalnego opóźnienia. Parametr -l
powoduje utworzenie listy o wielkości 50 jitter’ów dołączanych losowo do minimalnego czasu opóźnienia dla każdego wyszukiwania Google Dork.
Więcej informacji: pagodo (Passive Google Dork) – Automate Google Hacking Database scraping
Pod tym linkiem znajdziemy zbiór 4500 Google Dorków.