Przygotowanie spisu zasobów (subdomeny, podstrony, grafiki itp.) z dowolnego serwisu to zajęcie na długie godziny ⏳
Istnieje metoda używana przez pentesterów, która... skraca ten proces do kilkunastu sekund.
Zobacz, jak to zrobić 🧵 ↓
Jeśli tworzysz scrappera, budujesz własną mini wyszukiwarkę internetową lub jesteś gościem od cybersecurity, to wcześniej, czy później konieczne będzie przejście przez proces tworzenia sitemapy dla Twojego "celu".
Klasyczna metoda jest prosta:
1. Wejdź na adres URL, który Cię interesuje
2. Spisz wszystkie linki wychodzące w ramach tej samej domeny
3. Zapisz te linki do bazy
4. Weź każdy ze znalezionych adresów i wróć do pkt. 1
Akcję taką wykonuje każdy scrapper/spider i już po kilku godzinach/dniach masz dane, których potrzebujesz, a autorzy stron, które "przeglądasz" w ten sposób są bardzo wdzięczni za wygenerowanie im dodatkowych kilkudziesięciu tysięcy zapytań do serwisu 😕
Zrób to mądrzej.
Dane, których potrzebujesz, zebrał już ktoś inny. Mają je Google, Bing, DuckDuckGo i wiele innych platform. Problem w tym, że prawie nikt się tymi danymi nie chce z Tobą podzielić.
Prawie?!
No tak, bo jest jeszcze Web Archive rozdające swoje dane na prawo i lewo ❤️
Z zakamarków wspomnianego serwisu możęsz bez problemu wygrzebać wszystkie potrzebne Ci dane.
Tylko tym razem potrzebujemy pobrać nie treść stron, a jedynie adresy URL i do tego nie ręcznie przez interfejs webowy, a w sposób w pełni zautomatyzowany.
Z pomocą przychodzi narzędzie "waybackurls".
Jest ono domyślnie zainstalowane w dystrybucji Kali Linux, ale możesz je też zainstalować w innym środowisku:
1. Zainstaluj najnowszą wersję golang
2. go install github.com/tomnomnom/waybackurls@latest
3. Masz waybackurls 😎
Obsługa narzędzia jest dziecinnie prosta i ogranicza się do jednego polecenia:
waybackurls tutaj_domena
Niestety, na tym prostota narzędzia się kończy i zaczyna się znajomość poleceń Linuksowych, ponieważ dane trzeba jakoś odfiltrować, a będzie ich DUŻO!
Przykładowo, chciałbym pobrać wszystkie adresy URL prowadzące do plików .HTML na mojej stronie domowej. Można wykorzystać tutaj narzędzie 'grep'.
waybackurls -no-subs mrugalski.pl | grep .html
Przełącznik "-no-subs" pomija sprawdzanie subdomen.
To narzędzie NIE wykonuje zapytań do stron, które sprawdzasz. Jest to aplikacja do przeglądania cache po stronie Web Archive.
Jako pentester lubiłem łączyć waybackurl z:
grep -Ei '[?&][a-z]+='
To wyszukuje parametry w adresie URL, które mogą być podatne na różne ataki.
Pamiętaj, że archiwum sieciowe domyślnie zwraca dane od wielkiego wybuchu do dziś, więc może ich być skrajnie dużo i mogą być mało świeże. Otrzymasz np. podstrony zaindeksowane w 2003 roku 🤷♂️
Aby to odsiać, przydaje się parametr "-dates" połączony z negacją w GREP.
Niestety, bez sprawnego przetwarzania danych w terminalu możesz mieć problem.
Jeśli chcesz podszlifować swoje umiejętności pracy na danych tekstowych, to rzuć okiem tutaj 👇
dane.mikr.us/