Wyszukiwanie w witrynie

Praktyczny przewodnik po Nmap (sieciowym skanerze bezpieczeństwa) w Kali Linux


W drugim artykule Kali Linux omówione zostanie narzędzie sieciowe znane jako „nmap”. Chociaż nmap nie jest narzędziem przeznaczonym wyłącznie dla Kali, jest jednym z najbardziej przydatnych narzędzi do mapowania sieci w Kali.

  1. Przewodnik instalacji Kali Linux dla początkujących – część 1

Nmap, skrót od Network Mapper, jest prowadzony przez Gordona Lyona (więcej o panu Lyonie tutaj: http://insecure.org/fyodor /) i jest używany przez wielu specjalistów ds. bezpieczeństwa na całym świecie.

Narzędzie działa zarówno w systemie Linux, jak i Windows i obsługuje wiersz poleceń (CLI). Jednakże dla tych, którzy boją się linii poleceń, istnieje wspaniały graficzny interfejs nmap o nazwie zenmap.

Zdecydowanie zaleca się, aby poszczególni użytkownicy zapoznali się z wersją nmap z interfejsem CLI, ponieważ zapewnia ona znacznie większą elastyczność w porównaniu z graficzną edycją zenmap.

Jakiemu celowi służy nmap? Świetne pytanie. Nmap pozwala administratorowi szybko i dokładnie poznać systemy w sieci, stąd nazwa Network MAPper lub nmap.

Nmap ma możliwość szybkiego zlokalizowania aktywnych hostów, a także usług powiązanych z tym hostem. Funkcjonalność Nmapa można jeszcze bardziej rozszerzyć za pomocą silnika skryptowego Nmap, często określanego w skrócie NSE.

Ten silnik skryptowy umożliwia administratorom szybkie utworzenie skryptu, którego można użyć do ustalenia, czy w ich sieci istnieje nowo odkryta luka. Opracowano wiele skryptów, które są dołączone do większości instalacji nmap.

Jedna uwaga – nmap jest powszechnie używany przez osoby mające zarówno dobre, jak i złe intencje. Należy zachować szczególną ostrożność, aby upewnić się, że nie używasz nmap przeciwko systemom, które nie otrzymały wyraźnego pozwolenia w pisemnej/prawnej umowie. Zachowaj ostrożność podczas korzystania z narzędzia nmap.

wymagania systemowe

  1. Kali Linux (nmap jest dostępny w innych systemach operacyjnych i ma funkcje podobne do tego przewodnika).
  2. Inny komputer i pozwolenie na przeskanowanie tego komputera za pomocą nmap – często można to łatwo zrobić za pomocą oprogramowania takiego jak VirtualBox i utworzenia maszyny wirtualnej.

    1. Aby poznać dobrą maszynę do ćwiczeń, przeczytaj o Metasploitable 2
    2. Pobierz dla MS2 Metasploitable2
  3. Prawidłowe, działające połączenie z siecią lub, w przypadku korzystania z maszyn wirtualnych, ważne wewnętrzne połączenie sieciowe dla obu maszyn.

Kali Linux – Praca z Nmapem

Pierwszym krokiem do pracy z nmap jest zalogowanie się na maszynę Kali Linux i, jeśli to konieczne, rozpoczęcie sesji graficznej (w pierwszym artykule z tej serii zainstalowano Kali Linux ze środowiskiem graficznym XFCE).

Podczas instalacji instalator poprosi użytkownika o podanie hasła użytkownika „root”, które będzie potrzebne do zalogowania. Po zalogowaniu się do komputera Kali Linux za pomocą polecenia „startx” ' można uruchomić środowisko graficzne XFCE – warto zaznaczyć, że nmap nie wymaga do działania środowiska graficznego.

startx

Po zalogowaniu się do XFCE konieczne będzie otwarcie okna terminala. Po kliknięciu tła pulpitu pojawi się menu. Nawigację do terminala można wykonać w następujący sposób: Aplikacje -> System -> 'Xterm<” lub „UXterm” lub „Terminal główny”.

Autor jest fanem programu powłoki o nazwie „Terminator”, ale może on nie pojawiać się w domyślnej instalacji Kali Linux. Wszystkie wymienione programy powłoki będą działać na potrzeby nmap.

Po uruchomieniu terminala można rozpocząć zabawę z nmapem. Na potrzeby tego konkretnego samouczka utworzono sieć prywatną z maszyną Kali i maszyną Metasploitable.

Dzięki temu wszystko stało się łatwiejsze i bezpieczniejsze, ponieważ zasięg sieci prywatnej zapewniał, że skany pozostaną na bezpiecznych komputerach i zapobiegał przejęciu podatnej na ataki maszyny Metasploitable przez kogoś innego.

Jak znaleźć hosty na żywo w mojej sieci?

W tym przykładzie oba komputery znajdują się w prywatnej sieci 192.168.56.0 /24. Maszyna Kali ma adres IP 192.168.56.101, a maszyna Metasploitable do przeskanowania ma adres IP 192.168.56.102.

Załóżmy jednak, że informacja o adresie IP była niedostępna. Szybkie skanowanie nmap może pomóc w określeniu, co jest aktywne w konkretnej sieci. To skanowanie jest znane jako skanowanie „prostej listy”, stąd argumenty -sL przekazywane do polecenia nmap.

nmap -sL 192.168.56.0/24

Niestety, to wstępne skanowanie nie zwróciło żadnych aktywnych hostów. Czasami jest to czynnik wpływający na sposób, w jaki niektóre systemy operacyjne obsługują ruch sieciowy związany ze skanowaniem portów.

Znajdź i pinguj wszystkie hosty na żywo w mojej sieci

Nie martw się jednak, istnieje kilka sztuczek, które nmap udostępnia, aby spróbować znaleźć te maszyny. Następna sztuczka powie nmapowi, aby po prostu spróbował pingować wszystkie adresy w sieci 192.168.56.0/24.

nmap -sn 192.168.56.0/24

Tym razem nmap zwraca kilka potencjalnych hostów do skanowania! W tym poleceniu -sn wyłącza domyślne zachowanie nmap polegające na próbie skanowania portów hosta i po prostu powoduje, że nmap próbuje pingować hosta.

Znajdź otwarte porty na hostach

Spróbujmy pozwolić portowi nmap przeskanować te konkretne hosty i zobaczyć, co się pojawi.

nmap 192.168.56.1,100-102

Wow! Tym razem nmap trafił na kopalnię złota. Ten konkretny host ma sporo otwartych portów sieciowych.

Wszystkie te porty wskazują jakiś rodzaj usługi nasłuchiwania na tym konkretnym komputerze. Przypominając sobie wcześniej, adres IP 192.168.56.102 jest przypisany do podatnej na metasploitację maszyny, dlatego na tym hoście jest tak wiele otwartych portów.

Otwarcie tak wielu portów na większości komputerów jest wysoce nienormalne, dlatego mądrym pomysłem może być przyjrzenie się bliżej tej maszynie. Administratorzy mogliby wyśledzić fizyczną maszynę w sieci i przyjrzeć się jej lokalnie, ale nie byłoby to zbyt zabawne, zwłaszcza gdy nmap mógłby zrobić to za nas znacznie szybciej!

Znajdź usługi nasłuchujące na portach hostów

Następne skanowanie jest skanowaniem usług i często służy do ustalenia, która usługa może nasłuchiwać na określonym porcie komputera.

Nmap sprawdzi wszystkie otwarte porty i spróbuje przechwycić informacje z usług działających na każdym porcie.

nmap -sV 192.168.56.102

Zauważ, że tym razem nmap dostarczył kilka sugestii na temat tego, co według nmap może działać na tym konkretnym porcie (zaznaczone w białym polu). Ponadto nmap próbował również ustalić informacje o systemie operacyjnym działającym na tym komputerze, a także jego nazwę hosta (również z wielkim sukcesem!).

Przeglądanie tych wyników powinno wzbudzić sporo obaw administratora sieci. Już pierwsza linia mówi, że na tym komputerze działa VSftpd wersja 2.3.4! To NAPRAWDĘ stara wersja VSftpd.

Przeszukując ExploitDB, w 2011 roku znaleziono poważną lukę w zabezpieczeniach tej konkretnej wersji (Identyfikator ExploitDB – 17491).

Znajdź anonimowe loginy FTP na hostach

Niech nmap przyjrzy się bliżej temu konkretnemu portowi i zobaczy, co można ustalić.

nmap -sC 192.168.56.102 -p 21

Za pomocą tego polecenia nmap otrzymał polecenie uruchomienia domyślnego skryptu (-sC) na porcie FTP (-p 21) na hoście. Chociaż może to stanowić problem, ale nie musi, nmap odkrył, że na tym konkretnym serwerze dozwolone jest anonimowe logowanie FTP.

Sprawdź luki w zabezpieczeniach hostów

To w połączeniu z wcześniejszą wiedzą o starej luce w zabezpieczeniach VSftd powinno jednak budzić pewne obawy. Zobaczmy, czy nmap ma jakieś skrypty, które próbują sprawdzić podatność VSftpd.

locate .nse | grep ftp

Zauważ, że nmap ma już zbudowany skrypt NSE dla problemu backdoora VSftpd! Spróbujmy uruchomić ten skrypt na tym hoście i zobaczmy, co się stanie, ale najpierw może być ważna wiedza, jak używać tego skryptu.

nmap --script-help=ftp-vsftd-backdoor.nse

Czytając ten opis, staje się jasne, że tego skryptu można użyć do sprawdzenia, czy dana maszyna jest podatna na zidentyfikowany wcześniej problem ExploitDB.

Uruchommy skrypt i zobaczmy, co się stanie.

nmap --script=ftp-vsftpd-backdoor.nse 192.168.56.102 -p 21

Tak! Skrypt Nmapa zwrócił niebezpieczne wieści. Ta maszyna jest prawdopodobnie dobrym kandydatem do poważnego śledztwa. Nie oznacza to, że maszyna została naruszona i używana do okropnych/strasznych rzeczy, ale powinno wzbudzić pewne obawy w zespołach ds. sieci/bezpieczeństwa.

Nmap może być niezwykle selektywny i niezwykle cichy. Większość tego, co zostało dotychczas zrobione, miała na celu utrzymanie umiarkowanie cichego ruchu sieciowego nmap, jednak skanowanie sieci prywatnej w ten sposób może być niezwykle czasochłonne.

Nmap ma możliwość przeprowadzenia znacznie bardziej agresywnego skanowania, które często daje większość tych samych informacji, ale w jednym poleceniu, a nie w kilku. Przyjrzyjmy się wynikom agresywnego skanowania (Uwaga – agresywne skanowanie może uruchomić systemy wykrywania/zapobiegania włamaniom!).

nmap -A 192.168.56.102

Zauważ, że tym razem za pomocą jednego polecenia nmap zwrócił wiele informacji, które zwrócił wcześniej, na temat otwartych portów, usług i konfiguracji działających na tej konkretnej maszynie. Wiele z tych informacji można wykorzystać do określenia sposobu ochrony tego komputera, a także do oceny, jakie oprogramowanie może znajdować się w sieci.

To była tylko krótka, krótka lista wielu przydatnych rzeczy, które nmap może wykorzystać do znalezienia na hoście lub segmencie sieci. Zdecydowanie zaleca się, aby poszczególne osoby kontynuowały eksperymenty z nmap w kontrolowany sposób w sieci, która jest ich własnością (Nie ćwicz poprzez skanowanie innych obiektów!).

Istnieje oficjalny przewodnik na temat skanowania sieci Nmap autorstwa Gordona Lyona, dostępny na Amazon.