Wyliczanie zasobów sieciowych z GoScan
Proces wyliczania jest fundamentalnym etapem w testach penetracyjnych systemów sieciowych. Przyjrzyjmy się, jak można go zrealizować, wykorzystując narzędzie GoScan.
Skanowanie sieci za pomocą popularnych narzędzi, takich jak Nmap czy zmap, może być czasochłonne i wymagać sporo wysiłku, szczególnie w przypadku rozległych sieci. Mimo że są to narzędzia skuteczne, korzystanie z nich wymaga pewnej wiedzy i praktyki.
GoScan, interaktywny skaner sieci, oferuje automatyzację wielu zadań, umożliwiając szybkie i efektywne wyliczanie sieci i dostępnych usług.
Czym jest GoScan?
GoScan to narzędzie do skanowania sieci z interfejsem interaktywnym, które automatyzuje szereg funkcji wyliczania dostępnych w Nmapie. Posiada funkcję inteligentnego uzupełniania poleceń za pomocą tabulatora oraz bazę danych SQLite, zapewniającą stabilność połączeń i trwałość danych nawet w trudnych warunkach.
Nie jest to typowy skaner sieciowy. To rozbudowane środowisko oparte na różnych warstwach abstrakcji, które automatyzuje wiele zadań. GoScan opiera się głównie na możliwościach skanowania portów i wyliczania usług, które oferuje Nmap, ale wykorzystuje też inne skanery portów, jak Nikto.
GoScan jest zdolny do przeprowadzenia wszystkich kluczowych etapów skanowania sieci:
- Wykrywanie aktywnych hostów (za pomocą ARP i ping sweep)
- Wyliczanie DNS
- Wyliczanie dostępnych usług
- Skanowanie portów
- Wyliczanie informacji o domenie
Proces instalacji
Kompilacja ze źródeł
Pobierz repozytorium projektu:
$ git clone https://github.com/marco-lancini/goscan.git
Przejdź do katalogu GoScan i przygotuj środowisko oraz zbuduj program:
$ cd goscan/goscan
$ make setup
$ make build
Aby stworzyć plik binarny kompatybilny z różnymi platformami, użyj polecenia:
$ make cross
Instalacja z wykorzystaniem Dockera
$ git clone https://github.com/marco-lancini/goscan.git
$ cd goscan/
$ docker-compose up --build
Instalacja z pliku binarnego
Jest to zalecana metoda instalacji. Pobierz odpowiedni plik binarny:
# Linux (64bit)
$ wget https://github.com/marco-lancini/goscan/releases/download/v2.4/goscan_2.4_linux_amd64.zip
$ unzip goscan_2.4_linux_amd64.zip
# Linux (32bit)
$ wget https://github.com/marco-lancini/goscan/releases/download/v2.4/goscan_2.4_linux_386.zip
$ unzip goscan_2.4_linux_386.zip
# Następnie umieść plik wykonywalny w ścieżce systemowej
$ chmod +x goscan
$ sudo mv ./goscan /usr/local/bin/goscan
Praktyczne wykorzystanie GoScan
Skanowanie za pomocą ping
GoScan jest łatwy w użyciu, dzięki funkcji automatycznego podpowiadania i uzupełniania poleceń. Zacznij wpisywać polecenie, a pojawi się podpowiedź wraz z opisem.
Na początku należy załadować cel. Możemy załadować kilka adresów IP, ale w naszym przypadku będzie to pojedynczy adres IP maszyny docelowej:
[goscan] > load target SINGLE 10.0.1.24
[*] Imported target: 10.0.1.24
Teraz wykonajmy skanowanie ping:
GoScan najpierw tworzy katalog, w którym będą przechowywane wyniki. Można go zmienić, ale domyślne ustawienie jest wystarczające. Widzimy, jakie polecenie Nmap zostało użyte oraz czas jego wykonania. Wyniki możemy zobaczyć w różnych formatach w katalogu, gdzie są zapisywane.
Skanowanie portów
Skanowanie portów to jedna z najmocniejszych funkcji GoScan. Po wpisaniu polecenia „portscan” możemy zobaczyć różne typy skanów, które można wykonać:
Wszystkie informacje zebrane przez GoScan można wyświetlić za pomocą polecenia „show”. Możemy na przykład zobaczyć załadowane cele:
[goscan] > show targets
+------------+---------+
| ADDRESS | STEP |
+------------+---------+
| 10.0.1.24 | SWEEPED |
+------------+---------+
Wyliczanie usług
Oprócz skanowania portów, GoScan umożliwia również wyliczanie usług działających na celu. Dostępne moduły można wyświetlić wpisując „enumerate”, a wśród nich znajdują się FINGER, FTP, HTTP, RDP i SMB.
Każda usługa oferuje alternatywne tryby działania, takie jak DRY (próbne uruchomienie), POLITE (działanie unikające intensywnych ataków) i BRUTEFORCE (wykorzystujące brutalną siłę).
Skanowania specjalne
W GoScan dostępne są specjalne skany, które mogą być pomocne w procesie rozpoznania. Aby zobaczyć dostępne opcje, wpisz „special”:
[goscan] > special
eyewitness Takes screenshots of websites and open VNC servers
domain Extracts domain information from enumerated data
dns Performs DNS enumeration
Funkcja EyeWitness pozwala na wykonanie zrzutów ekranu stron internetowych i otwartych serwerów VNC. Warunkiem jej działania jest zainstalowanie EyeWitness w ścieżce systemowej PATH. Skany domeny umożliwiają wyliczanie informacji, takich jak użytkownicy, hosty i serwery.
Podsumowanie
GoScan jest przydatnym narzędziem do szybkiego wykrywania sieci i usług, ale w pewnych aspektach można je jeszcze udoskonalić. Brakuje mu na przykład modułów do wyliczania usług takich jak SNMP i SMTP. Mimo to, GoScan jest doskonałym narzędziem, które upraszcza pewne zadania związane z wyliczaniem dostępnymi w Nmap.