Metasploit - szybki przewodnik
Metasploit to jedno z najpotężniejszych narzędzi używanych do testów penetracyjnych. Większość jego zasobów można znaleźć pod adresem - www.metasploit.com . Występuje w dwóch wersjach: komercyjnej i bezpłatnej. Nie ma większych różnic między tymi dwiema wersjami, więc w tym samouczku będziemy głównie używać wersji Community (bezpłatnej) Metasploit.
Jako etyczny haker będziesz korzystać z „Kali Distribution”, w której jest osadzona wersja społecznościowa Metasploit, a także inne etyczne narzędzia hakerskie. Ale jeśli chcesz zainstalować Metasploit jako oddzielne narzędzie, możesz to łatwo zrobić w systemach działających w systemie Linux, Windows lub Mac OS X.
Wymagania sprzętowe do zainstalowania Metasploit to -
- Procesor 2 GHz +
- Dostępna 1 GB pamięci RAM
- 1 GB + wolnego miejsca na dysku
Matasploit można używać za pomocą wiersza poleceń lub interfejsu WWW.
Zalecane wersje systemu operacyjnego dla Metasploit to -
- Kali Linux 2.0 lub wyższe wersje
- Backtrack 3 i Upper Versions
- Red Hat Enterprise Linux Server 5.10+
- Red Hat Enterprise Linux Server 6.5+
- Red Hat Enterprise Linux Server 7.1+
- Ubuntu Linux 10.04 LTS
- Ubuntu Linux 12.04 LTS
- Ubuntu Linux 14.04 LTS
- Windows Server 2008 R2
- Windows Server 2012 R2
- System Windows 7
- Windows 8.1
Podejmiemy następujące działania, aby skonfigurować nasze środowisko testowe -
Ściągniemy Virtual Box i zainstalujemy go.
Ściągnij i zainstaluj Kali dystrybucja.
Ściągnij i zainstaluj Metasploitable która będzie naszą maszyną do hakowania.
Pobierz i zainstaluj system Windows XP, który będzie kolejną maszyną do hakowania.
W sumie będziemy mieli 3 maszyny, które będą logicznie połączone w tej samej sieci.
Zainstaluj Virtual Box
Aby pobrać Virtual Box, przejdź do www.virtualbox.org/wiki/Downloads
Wybierz odpowiednią wersję w zależności od systemu operacyjnego i konfiguracji sprzętowej systemu.
Po wybraniu odpowiedniej wersji Virtual Box pojawi się następujący ekran. KliknijNext.
Na następnym ekranie ustaw lokalizację, w której chcesz zainstalować aplikację.
Otrzymasz komunikat ostrzegawczy przed kontynuowaniem instalacji.
Kliknij Tak na powyższym ekranie, co spowoduje wyświetlenie następującego ekranu. KliknijInstall aby rozpocząć instalację.
Po zakończeniu instalacji pojawi się następujący ekran. Kliknij przycisk Zakończ, aby wyjść z kreatora konfiguracji.
Teraz zostaniesz powitany ekranem otwierającym VirtualBox.
Teraz jesteśmy gotowi do zainstalowania pozostałych hostów na potrzeby tego samouczka.
Zainstaluj Kali Linux
Możesz pobrać Kali Linux z jego oficjalnej strony internetowej - www.kali.org/downloads/
Przejdź do oficjalnej strony internetowej i pobierz gotowe obrazy Kali Linux VirtualBox.
Następnie otwórz VirtualBox Manager i przejdź do Maszyna → Nowy.
Przejdź do lokalizacji, do której został pobrany Kali Linux i wybierz plik wirtualnego dysku twardego.
Na następnym ekranie pojawi się monit o utworzenie maszyny wirtualnej. KliknijCreate przycisk, jak pokazano na poniższym zrzucie ekranu.
Teraz możesz uruchomić Kali OS. Twoja domyślna nazwa użytkownika toroot a twoje hasło będzie toor.
W tym rozdziale omówimy kilka podstawowych poleceń, które są często używane w Metasploit.
Przede wszystkim otwórz konsolę Metasploit w Kali. Możesz to zrobić, podążając ścieżką: Aplikacje → Narzędzia do wykorzystywania luk → Metasploit.
Po otwarciu konsoli Metasploit zobaczysz następujący ekran. Wersja Metasploit została podświetlona na czerwono.
Pomoc Polecenie
Jeśli wpiszesz help polecenie na konsoli, wyświetli listę podstawowych poleceń w Metasploit wraz z ich opisem.
msfupdate Command
msfupdateto ważne polecenie administracyjne. Służy do aktualizacji Metasploit o najnowsze exploity luk w zabezpieczeniach. Po uruchomieniu tego polecenia będziesz musiał poczekać kilka minut, aż aktualizacja się zakończy.
Wyszukaj polecenie
Searchto potężne polecenie w Metasploit, którego możesz użyć do znalezienia tego, co chcesz zlokalizować. Na przykład, jeśli chcesz znaleźć exploity związane z Microsoftem, polecenie będzie brzmiało -
msf >search name:Microsoft type:exploit
Tutaj, search jest rozkazem, name to nazwa obiektu, którego szukasz, a type to rodzaj skryptu, którego szukasz.
Polecenie informacyjne
Plik info Polecenie zawiera informacje dotyczące modułu lub platformy, takie jak miejsce ich użycia, kto jest autorem, odniesienie do luki w zabezpieczeniach i ograniczenie jej ładunku.
W tym rozdziale zobaczymy, jak używać ArmitageGUI dla Metasploit. Armitage jest narzędziem uzupełniającym do Metasploit. Wizualizuje cele, zaleca exploity i ujawnia zaawansowane funkcje poeksploatacyjne. Armitage jest częścią dystrybucji Kali. Jeśli musisz wykonać testy penetracyjne, będziesz musiał użyć obu narzędzi razem.
Nauczmy się, jak pracować z GUI Armitage. Najpierw otwórz konsolę Metasploit i przejdź do Applications → Exploit Tools → Armitage.
Wprowadź wymagane dane na następnym ekranie i kliknij Connect.
Następnie zobaczysz następujący ekran.
Armitage jest bardzo przyjazny dla użytkownika. Jego GUI ma trzy różne obszary:Targets, Console, i Modules.
Strefa Targetszawiera listę wszystkich odkrytych maszyn i tych, z którymi pracujesz. Zhakowane cele mają czerwony kolor z burzą. Po zhakowaniu celu możesz kliknąć go prawym przyciskiem myszy i kontynuować eksplorację tego, co musisz zrobić, na przykład eksplorować (przeglądać) foldery.
Strefa Consolezapewnia widok folderów. Wystarczy kliknąć, aby przejść bezpośrednio do folderów bez użycia jakichkolwiek poleceń Metasploit.
Strefa Modules to sekcja zawierająca moduł luk w zabezpieczeniach.
Pro Console to komercyjna wersja Metasploit na konsole. Jest dostępny dla systemów Linux, Microsoft OS i OSX. Metasploit Pro może pomóc testerom penetracji w -
Wykorzystaj projekt open source Metasploit i jego wiodącą bibliotekę exploitów
Zarządzaj danymi w dużych ocenach
Kontroluj zainfekowane maszyny i przejmij kontrolę nad siecią
Automatycznie generuj raporty zawierające kluczowe ustalenia
Popraw bezpieczeństwo, nadając priorytet podatnościom, które można wykorzystać
Udowodnić audytorom skuteczność środków zaradczych lub kontroli kompensacyjnych
Uzyskaj kompleksowy wgląd w ryzyko użytkowników, integrując się z Rapid7 UserInsight
Przetestuj skuteczność kontroli bezpieczeństwa
Symuluj kampanie phishingowe dla tysięcy użytkowników
Metasploit Pro oferuje wiersz poleceń i interfejs WWW.
Aby korzystać z Metasploit Pro, musisz go kupić od Rapid7 i zainstalować w swoim systemie. W środowisku Windows, aby uruchomić Metasploit Pro, przejdź do: Start → Wszystkie programy → Metasploit → Konsola Metasploit.
Jeśli pracujesz w środowisku Linux, otwórz terminal wiersza poleceń i wpisz sudo msfpro.
Wrażliwy cel to maszyna lub urządzenie z niezałataną luką w zabezpieczeniach. Czyni to hosta podatnym na ataki, co w tym przypadku jest celem.
Do celów testowych Rapid7 stworzył maszynę wirtualną z wieloma lukami w zabezpieczeniach. Pamiętaj, że nie możesz penetrować żadnego urządzenia bez pozwolenia. Dlatego musisz pobraćmetasploitable który jest maszyną z Linuksem.
Metasploitable można pobrać ze strony - www.information.rapid7.com/
Wypełnij formularz, aby się zarejestrować. Następnie pojawi się następujący ekran z bezpośrednim łączem do pobrania Metasploitable.
Następnie otwórz VirtualBox Manager i przejdź do Maszyna → Nowy.
Kliknij „Użyj istniejącego pliku wirtualnego dysku twardego” i przejdź do lokalizacji, do której pobrałeś Metasploitable Open.
Na następnym ekranie kliknij Create.
Teraz możesz zalogować się do Metasploitable przy użyciu domyślnych ustawień username: msfadmin i hasło: msfadmin.
Pierwsza faza penetracji obejmuje skanowanie sieci lub hosta w celu zebrania informacji i stworzenia przeglądu maszyny docelowej.
Discovery Scanto po prostu tworzenie listy adresów IP w sieci docelowej, znajdowanie usług działających na komputerach. Aby to zrobić w Metasploit, użyjemy polecenia promp, które jest poleceniami NMAP zawartymi w Metasploit. Aby uzyskać więcej informacji na temat NMAP i jego poleceń, przejdź dohttps://nmap.org/
Zobaczmy teraz w praktyce, jak to dokładnie działa. Uruchomiliśmy maszynę docelową (Metasploitable) i maszynę Windows Server 2003 z adresem IP192.168.1.101.
Następnie uruchomimy Metasploit. Tutaj używamy Kali Linux. Dlatego polecenia zawsze zaczynają się odnmap.
Zacznijmy przeskanować sieć z zakresu 192.168.0.0/24 i odkryć maszyny.
Jak widać na powyższym zrzucie ekranu, w sieci jest 5 hostów ze szczegółami. Teraz, gdy znaleźliśmy hosty, które żyją, spróbujemy znaleźć system operacyjny, na którym działają, i ich usługi w tle.
Spróbujemy zaatakować podatną maszynę za pomocą adresu IP 192.168.1.101. Aby to zrobić, uruchomimy następujące polecenie -
Nmap –sV-O –T4 192.168.1.101
Tutaj,
-sV parametr wykryje usługi wraz ze szczegółami ich wersji.
-O polega na wykryciu wersji systemu operacyjnego, którym w naszym przypadku jest Linux 2.6.X
-T4 to czas, w którym pozwalamy na zakończenie skanowania
Otrzymasz następujący ekran jako wynik użycia powyższego polecenia.
Łańcuchy zadań to funkcja dostępna w wersji Metasploit Pro, która pomaga nam planować zadania i je wykonywać. Zwykle jest używany w procesach uruchamianych okresowo, na przykład przy skanowaniu sieci.
Aby skonfigurować zadanie, przejdźmy do Zadania → Łańcuchy → Nowy łańcuch zadań.
Podaj nazwę łańcucha zadań.
Następnie kliknij znak „+”, jak pokazano na poniższym zrzucie ekranu.
Wybierz z listy zadanie, które chcesz wybrać. Wybierzmy SKANUJ.
Następnie configuration task setting pojawi się, jak pokazano poniżej.
Dodajmy zadanie do Łańcucha Zadań, czyli funkcję, którą ma wykonać serwer po wykonaniu pierwszego zadania. Aby zaplanować zadanie, kliknij ikonę „Zaplanuj teraz”.
Zostanie wyświetlona poniższa tabela, w której możesz wybrać, jak często chcesz uruchamiać zadanie.
Na koniec kliknij przycisk Zapisz, aby zaplanować łańcuch zadań.
Metasploit to potężna platforma bezpieczeństwa, która umożliwia importowanie wyników skanowania z innych narzędzi innych firm. Wyniki skanowania NMAP można importować w formacie XML, który mógł zostać utworzony wcześniej. Metasploit umożliwia również importowanie wyników skanowania z plikówNessus, który jest skanerem podatności.
Zobaczmy, jak to działa. Najpierw wykonaj skanowanie NMAP i zapisz wynik w formacie XML na pulpicie, jak pokazano na poniższym zrzucie ekranu.
Następnie otwórz Metasploit lub Armitage, aby zaimportować wyniki skanowania. Następnie użyj następującego polecenia, aby zaimportować cały host.
Msf > db_import "path of xml file"
Poniższy zrzut ekranu pokazuje, jak będzie wyglądać dane wyjściowe.
Aby sprawdzić, czy plik importu był poprawny, czy nie, możemy uruchomić określone polecenia na tych dwóch hostach i zobaczyć, jak reagują. Na przykład w naszym przypadku wymieniliśmy wszystkie hosty, na których działa port 445.
Luka to system holektóre można wykorzystać do uzyskania nieautoryzowanego dostępu do wrażliwych danych lub wstrzyknięcia złośliwego kodu. Metasploit, podobnie jak wszystkie inne aplikacje zabezpieczające, ma rozszerzenievulnerability scanner który jest dostępny w wersji komercyjnej.
Z pomocą skanera luk w zabezpieczeniach możesz wykonać prawie wszystkie zadania za pomocą jednej aplikacji. Tej funkcji nie ma w bezpłatnej wersji Metasploit. Jeśli korzystasz z bezpłatnej wersji Metasploit, będziesz musiał użyć narzędzia Nessus Vulnerability Scanner, a następnie zaimportować stamtąd wyniki. Metasploit używaNexpose zrobić skanowanie.
Zobaczmy, jak skanować za pomocą Nexpose w wersji Pro Metasploit.
Najpierw dodaj konsolę Nexpose do interfejsu internetowego Metasploit. Aby to zrobić, przejdź do: Administracja → Ustawienia globalne → Konsola Nexpose → Konfiguruj konsolę Nexpose.
Wprowadź adres IP serwera z zainstalowanym Nexpose. Następnie wprowadź numer portu, nazwę użytkownika i hasło. Wybierzenable.
Następnie kliknij przycisk Netexpose → dodaj adres IP hosta lub sieci do przeskanowania → wybierz szablon skanowania. Zainicjuje proces skanowania.
Aby wyświetlić wynik skanowania, przejdź do Analiza → Host.
W tym rozdziale dowiemy się, jak zweryfikować luki, które znaleźliśmy w skanerach luk, takich jak Nexpose. Ten proces jest również znany jakovulnerability analysis.
Jak pokazano na poniższym zrzucie ekranu, skaner luk w zabezpieczeniach może czasami ujawnić setki luk. W takim przypadku weryfikacja każdej luki w zabezpieczeniach może być dość czasochłonna.
Metasploit Pro ma funkcję o nazwie Vulnerability Validationaby pomóc Ci zaoszczędzić czas, automatycznie weryfikując luki w zabezpieczeniach i dać przegląd najważniejszych luk, które mogą być bardzo szkodliwe dla Twojego systemu. Ma również opcję klasyfikowania luk w zależności od ich wagi.
Zobaczmy, jak możesz skorzystać z tej opcji. Otwórz konsolę internetową Metasploit Pro → Projekt → Walidacja luk.
Następnie wprowadź nazwę projektu i podaj łatwy opis projektu. Następnie kliknijStart przycisk.
Kliknij „Pobierz z Nexpose”. Wybierz „Importuj istniejące dane dotyczące luk w zabezpieczeniach Nexpose”, jak pokazano na poniższym zrzucie ekranu.
Kliknij opcję Tag → Automatically Tag by OS. Oddzieli za ciebie luki.
Następnie przejdź do Exploit → Sessionsi zaznacz opcję „Wyczyść sesje po zakończeniu”. Oznacza to, że kiedy luka zostanie sprawdzona, nastąpi interakcja między maszyną Metasploit a maszyną podatną na atak.
Kliknij Generate Report → Start.
Następnie zobaczysz Kreatora walidacji. Tutaj musisz kliknąćPush validations przycisk.
Po przetestowaniu całej listy luk pojawi się następujący ekran.
Aby zobaczyć wyniki testowanych luk, przejdź do Strona główna → Nazwa projektu → Luki.
Po skanowaniu podatności i walidacji podatności musimy uruchomić i przetestować kilka skryptów (tzw exploits) w celu uzyskania dostępu do maszyny i zrobienia tego, co planujemy.
Exploit przy użyciu interfejsu GUI Armitage
Mamy kilka metod wykorzystywania exploitów. Pierwszą i najważniejszą metodą jest użycie interfejsu GUI Armitage, który połączy się z Metasploit w celu przeprowadzenia zautomatyzowanego testowania exploitów o nazwie HAIL MARY. Zobaczmy, jak to działa.
Otwórz dystrybucję Kali → Aplikacja → Narzędzia Exploit → Armitage.
Następnie przejdź do Attacks → Hail Mary i kliknij Tak.
Zobaczysz następujący ekran, który pokaże wszystkie testowane exploity.
Następnie zobaczysz ikonę systemu, który można wykorzystać (tj. Systemu, na którym działał exploit), zmieniając kolor na czerwony z nadrukiem burzy. Na konsoli zobaczysz, który exploit się powiódł, wraz z odpowiednim identyfikatorem sesji.
Możesz teraz wejść w interakcję z maszyną.
Wykorzystaj za pomocą wiersza polecenia
Drugi sposób (i prawdopodobnie trochę profesjonalny) na użycie exploita to wiersz polecenia.
Z Vulnerability Scanner ustaliliśmy, że maszyna z Linuksem, którą mamy do testów, jest podatna na działanie usługi FTP. Teraz użyjemy plikuexploitto może dla nas zadziałać. Polecenie to -
msf > use “exploit path”
Następnie użyj następującego polecenia, aby zobaczyć, jakie parametry musisz ustawić, aby działało.
msf > show options
Ten exploit pokazuje, że musimy ustawić RHOST „docelowy adres IP”
Następnie użyj poleceń -
msf > set RHOST 192.168.1.101
msf > set RPORT 21
Następnie użyj polecenia -
msf > run
Jeśli exploit się powiedzie, zostanie otwarta jedna sesja, jak pokazano na poniższym zrzucie ekranu.
Teraz możesz wchodzić w interakcje z tym systemem.
Mówiąc prościej, ładunek to proste skrypty, których hakerzy używają do interakcji z zhakowanym systemem. Korzystając z ładunków, mogą przesyłać dane do systemu ofiary.
Ładunki Metasploit mogą być trzech typów -
Singles- Single są bardzo małe i zaprojektowane tak, aby stworzyć jakiś rodzaj komunikacji, a następnie przejść do następnego etapu. Na przykład po prostu utworzenie użytkownika.
Staged - Jest to ładunek, którego atakujący może użyć do przesłania większego pliku do systemu ofiary.
Stages- Etapy to komponenty ładunku, które są pobierane przez moduły Stagerów. Różne stopnie obciążenia zapewniają zaawansowane funkcje bez ograniczeń rozmiaru, takie jak Meterpreter i VNC Injection.
Przykład
Weźmy przykład, aby zrozumieć użycie ładunków Metasploit. Załóżmy, że mamy komputer z systemem Windows Server 2003, który jest podatny na DCOM MS03-026.
Najpierw będziemy szukać pliku exploitktóre mogą działać z tą luką. Exploit wykorzystamy z najlepszymiRANK.
Następnie użyjemy następującego polecenia, aby zobaczyć, jakiego ładunku możemy użyć w tym exploicie.
msf > show payloads
i widzę, że mogę użyć ładunków, które pomogą mi przesyłać / wykonywać pliki, aby ofiara jako serwer VNC miała wgląd.
Powyższe polecenie pokaże ładunki, które pomogą nam przesłać / wykonać pliki do systemu ofiary.
Aby ustawić żądany ładunek, użyjemy następującego polecenia -
set PAYLOAD payload/path
Ustaw hosta nasłuchiwania i port nasłuchiwania (LHOST, LPORT), które są plikami attacker IP i port. Następnie ustaw zdalny host i port (RPORT, LHOST), które sąvictim IP i port.
Wpisz „exploit”. Utworzy sesję, jak pokazano poniżej -
Teraz możemy bawić się maszyną zgodnie z ustawieniami, które oferuje ten ładunek.
Po uzyskaniu dostępu do komputera ważne jest, aby zabrać wszystkie poufne informacje, takie jak nazwy użytkowników i hasła. Możesz wykonać tę operację również w celu audytu, aby przeanalizować, czy systemy w Twojej organizacji używają silnych haseł, czy nie.
W systemie Windows hasła są przechowywane w postaci zaszyfrowanej o nazwie NTLM hash. W systemie operacyjnym Windows należy zawsze szukać użytkownika o numerze 500, co oznacza, że użytkownik jestsuperuser.
W bezpłatnej wersji Metasploit poświadczenia skrótu muszą być zapisane w pliku tekstowym lub w bazie danych Metasploit.
Przykład
Skorzystajmy ze scenariusza, z którego korzystaliśmy w poprzednim rozdziale. Załóżmy, że mamy komputer z systemem Windows Server 2003, który jest podatny na DCOM MS03-026. Uzyskaliśmy dostęp do tego systemu i wstawiliśmy plikmeterpreter ładowność.
Polecenie ogólnie używane w meterpreter to hashdump która wyświetli listę wszystkich nazw użytkowników i haseł.
Możesz także użyć Armitage aby pobrać te informacje, jak pokazano na poniższym zrzucie ekranu.
Wersja komercyjna Metasploit ma oddzielną sesję o nazwie Credentialktóry umożliwia zbieranie, przechowywanie i ponowne wykorzystywanie danych uwierzytelniających. Zobaczmy, jak się do tego zabrać.
Aby zebrać dane wrażliwe, najpierw przejdź do: Strona główna → Nazwa projektu → Sesje.
Kliknij aktywną sesję.
Następnie kliknij Collect System Data. Zbierze wszystkie skróty i hasła.
Pojawi się następujący ekran -
Aby zobaczyć zebrane poświadczenia, przejdź do Strona główna → Nazwa projektu → Poświadczenia → Zarządzaj.
Jak pokazano na poniższym zrzucie ekranu, zobaczysz wszystkie zdobyte hasła i te, które można złamać.
W ataku brute-force haker wykorzystuje wszystkie możliwe kombinacje liter, cyfr, znaków specjalnych oraz małych i wielkich liter w sposób automatyczny, aby uzyskać dostęp do hosta lub usługi. Ten typ ataku ma duże prawdopodobieństwo sukcesu, ale przetworzenie wszystkich kombinacji wymaga ogromnej ilości czasu.
Atak siłowy jest powolny, a haker może wymagać systemu o dużej mocy obliczeniowej, aby szybciej wykonać wszystkie te permutacje i kombinacje. W tym rozdziale omówimy, jak przeprowadzić atak siłowy przy użyciu Metasploit.
Po przeskanowaniu maszyny Metasploitable za pomocą NMAP wiemy, jakie usługi są na niej uruchomione. Usługi to FTP, SSH, mysql, http i Telnet.
Aby przeprowadzić brutalny atak na te usługi, użyjemy auxiliarieskażdej usługi. Pomocnicze to małe skrypty używane w Metasploit, które nie tworzą powłoki na zaatakowanej maszynie; po prostu zapewniają dostęp do maszyny, jeśli atak siłowy się powiedzie. Zobaczmy, jak korzystać z urządzeń pomocniczych.
Tutaj utworzyliśmy listę słowników w katalogu głównym maszyny dystrybucyjnej Kali.
Zaatakuj usługę FTP
Otwórz Metasploit. Pierwszą usługą, którą spróbujemy zaatakować, jest FTP, a pomocniczą, która pomaga nam w tym celuauxiliary/scanner/ftp/ftp_login.
Wpisz następujące polecenie, aby użyć tego pomocniczego -
msf > use auxiliary/scanner/ftp/ftp_login
Ustaw ścieżkę do pliku zawierającego nasz słownik.
Ustaw adres IP ofiary i uruchom.
Wytworzy następujący wynik -
Jak widać, zakończyło się, ale nie utworzono żadnej sesji. Oznacza to, że nie udało nam się odzyskać żadnej użytecznej nazwy użytkownika i hasła.
Zaatakuj usługę SSH
Do ataku na usługę SSH możemy wykorzystać pomocniczy: auxiliary/scanner/ssh/ssh_login
Jak widać na poniższym zrzucie ekranu, ustawiliśmy RHOSTS na 192.168.1.101 (czyli adres IP ofiary) oraz listę nazw użytkowników i hasło (czyli userpass.txt). Następnie stosujemyrun Komenda.
Jak widać na powyższym zrzucie ekranu, stworzono trzy sesje. Oznacza to, że trzy kombinacje zakończyły się sukcesem. Podkreśliliśmy nazwy użytkowników.
Aby wejść w interakcję z jedną z trzech sesji, używamy polecenia msf > sessions –i 3 co oznacza, że połączymy się z sesją numer 3.
Zaatakuj usługę Telnet
Aby zastosować atak siłowy na usługę Telnet, weźmiemy dostarczony zestaw poświadczeń i zakres adresów IP i spróbujemy zalogować się do dowolnego serwera Telnet. W tym celu użyjemy pomocniczego:auxiliary/scanner/telnet/telnet_login.
Proces korzystania z pomocnika jest taki sam, jak w przypadku ataku na usługę FTP lub usługę SSH. Musimy skorzystać z pomocniczego, ustawić RHOST, a następnie ustawić listę haseł i ją uruchomić.
Spójrz na poniższy zrzut ekranu. Niebieską strzałką wyróżniono nieprawidłowe próby, które wykonał pomocnik. Czerwone strzałki pokazują pomyślne logowania, które spowodowały utworzenie sesji.
Niektóre inne środki pomocnicze, które możesz zastosować w ataku brutalnej siły, to -
SMB service - pomocniczy / scanner / smb / smb_login
SNMP service - pomocniczy / skaner / snmp / snmp_login
Pivoting to technika używana przez Metasploit do kierowania ruchu z zhakowanego komputera do innych sieci, do których maszyna hakera nie ma dostępu.
Weźmy scenariusz, aby zrozumieć, jak działa przestawianie. Załóżmy, że mamy dwie sieci -
Sieć z zakresu 192.168.1.0/24, do której maszyna hakera ma dostęp, oraz
Kolejna sieć z zakresu 10.10.10.0/24. Jest to sieć wewnętrzna i haker nie ma do niej dostępu.
Haker będzie próbował włamać się do drugiej sieci tej maszyny, która ma dostęp do obu sieci, aby wykorzystać i zhakować inne wewnętrzne maszyny.
W tym scenariuszu haker najpierw włamie się do pierwszej sieci, a następnie wykorzysta ją jako punkt pomostowy do wykorzystania i zhakowania wewnętrznych maszyn drugiej sieci. Ten proces jest znany jakopivoting ponieważ haker używa pierwszej sieci jako punktu odniesienia, aby uzyskać dostęp do drugiej sieci.
Spróbujmy zrozumieć, jak to działa. Skorzystamy z systemu Windows Server 2003 z luką DCOM i wykorzystamy tę lukę do zhakowania tego systemu.
Będzie to exploit ms03_026_dcom i użyjemy meterpreter ładowność.
Teraz, gdy uzyskaliśmy dostęp do tego systemu, wejdźmy w interakcję z sesją za pomocą polecenia session -i 1 gdzie „1” to numer sesji, która została utworzona.
Teraz użyjmy polecenia ipconfigaby dowiedzieć się, czy ten host ma dostęp do innych sieci. Poniższy zrzut ekranu przedstawia dane wyjściowe. Możesz zauważyć, że ten host jest połączony z dwiema innymi sieciami -
- jeden to sieć sprzężenia zwrotnego, która jest bezużyteczna, i
- druga sieć to 10.10.10.0/24, którą zbadamy.
Metasploit posiada skrypt licznika AutoRoute, który pozwoli nam zaatakować tę drugą sieć za pośrednictwem naszej pierwszej zhakowanej maszyny, ale najpierw musimy background sesja.
Dodanie trasy do sieci wewnętrznej z zakresem 10.10.10.0/24
Teraz, gdy mamy trasę ruchu (Pivot), możemy spróbować przeskanować hosta znalezionego w tej sieci.
Zrobiliśmy skanowanie portów na hoście 10.10.10.102. Poniższy zrzut ekranu przedstawia wynik.
Teraz uzyskaliśmy dostęp do sieci wewnętrznej. Jeśli jednak stracisz sesję zhakowanej maszyny, utracisz również dostęp do sieci wewnętrznej.
W tym rozdziale omówimy, jak zachować dostęp w systemie, do którego uzyskaliśmy dostęp. Jest to ważne, ponieważ jeśli nie utrzymamy dostępu, będziemy musieli od początku spróbować go wykorzystać w przypadku, gdy zhakowany system zostanie zamknięty lub załatany.
Najlepszym sposobem jest zainstalowanie pliku backdoor. Dla zhakowanej maszyny Windows Server 2003, którą wykorzystaliśmy w poprzednim rozdziale, ustawiliśmy ładunekmeterpreter a ten ładunek ma opcję backdoora o nazwie metsvc. Możemy użyć tej opcji backdoora, aby uzyskać dostęp do zaatakowanej maszyny, kiedy tylko chcemy, ale ten backdoor wiąże się z ryzykiem, że każdy może połączyć się z tą sesją bez uwierzytelniania.
Rozumiemy szczegółowo, jak to działa w praktyce. Jesteśmy na etapie, na którym wykorzystaliśmy maszynę z systemem Windows Server 2003 i ustawiliśmymeterpreterładowność. Teraz chcemy zobaczyć procesy działające na tym komputerze i ukryć nasz proces za prawdziwym procesem.
Wpisz „ps” w sesji meterpreter, aby zobaczyć procesy ofiary.
Lubimy ukrywać nasz proces za sobą explorer.exeponieważ jest to proces, który działa podczas uruchamiania i jest zawsze obecny. Aby to zrobić, użyj polecenia: „migracja numeru PID”, jak pokazano na poniższym zrzucie ekranu.
Aby zainstalować backdoor, wpisz run metsvc. Podczas pracy zobaczysz utworzony port i katalog, do którego przesyłane są pliki.
Aby połączyć się z tym backdoor'em, potrzebujemy multi/handler z ładunkiem windows/metsvc_bind_tcp.
Metasploit - eskalacja uprawnień
Po wykorzystaniu i uzyskaniu dostępu do systemu ofiary, następnym krokiem jest uzyskanie praw administratora lub uprawnień roota. Gdy uzyskamy ten przywilej, bardzo łatwo będzie zainstalować, usunąć lub edytować dowolny plik lub proces.
Kontynuujmy ten sam scenariusz, w którym zhakowaliśmy system Windows Server 2003 i umieściliśmy ładunek meterpreter.
Meterpreter używa polecenia „getsystem” do eskalacji uprawnień. Ale najpierw musimy użyć polecenia „priv”, aby przygotować zhakowany system na eskalację uprawnień.
Następnie uruchom polecenie „getsystem”.
Jak widać, faktycznie zalogowaliśmy się jako administrator.
MetaModules to złożone i zautomatyzowane zadania związane z bezpieczeństwem, zaprojektowane, aby pomóc działom bezpieczeństwa w wydajniejszym wykonywaniu ich pracy, takich jak testowanie portów zapory, które są otwarte i zamknięte, testowanie domyślnych poświadczeń itp.
MetaModules to nowe funkcje wprowadzone w Metasploit Pro (wersja komercyjna). Należy pamiętać, że MetaModules z najlepszą oceną gwiazdek zapewnią najlepsze wyniki.
Aby otworzyć MetaModules, przejdź do Home → Project Name → Modules → MetaModules.
Jak widać, mamy sześć metamodułów spełniających różne wymagania.
Testowanie segmentacji i zapory
Ten MetaModule uruchamia pełne skanowanie Nmap SYN na zewnętrznym serwerze hostowanym przez Rapid7, który działa jako cel skanowania wyjścia. Użyj tego modułu MetaModule, aby wykryć porty wychodzące na zaporze, których osoba atakująca może użyć do filtrowania informacji. Będziesz musiał określić porty i protokoły, które chcesz poddać audytowi.
Aby uruchomić ten MetaModule, kliknij plik Launchi postępuj zgodnie z wyświetlanymi instrukcjami. Pokaże Ci raport otwartych, zamkniętych i filtrowanych portów, tak jak pokazano na poniższym zrzucie ekranu.
Poświadczenia Domino
Ten MetaModule używa prawidłowego loginu lub aktywnej sesji do wykonania iteracyjnego ataku poświadczeń, który zbiera dane uwierzytelniające z zainfekowanych hostów. Ponownie wykorzystuje zebrane dane uwierzytelniające, aby zidentyfikować inne możliwe trasy ataku. Ten MetaModule działa do momentu wypróbowania wszystkich poświadczeń lub osiągnięcia warunku zakończenia.
Aby uruchomić ten MetaModule, kliknij plik Launchna ekranie głównym. Spowoduje to wyświetlenie poniższego zrzutu ekranu, w którym musisz wybrać adres IP HOSTA i dane logowania do przetestowania.
Jeśli wprowadzone poświadczenia są poprawne, to da następujący wynik.
Testowanie klucza SSH
Ten MetaModule próbuje zalogować się do systemów przy użyciu odzyskanego klucza SSH. Zapisuje wyniki sukcesów i niepowodzeń dla każdej usługi. Będziesz musiał określić nazwę użytkownika, nazwę pliku klucza SSH i zakres żądanych hostów.
Aby uruchomić ten MetaModule, kliknij Launchna ekranie głównym. Wyświetli następujący ekran.
Wchodzić Credentials i kliknij Launch przycisk.
Pasywne wykrywanie sieci
Ten MetaModule został zaprojektowany do wykrywania ruchu w celu wykrywania hostów i usług w sieci lokalnej. Ponieważ nie wysyła żadnych pakietów, możesz uruchomić tę aplikację, aby przeprowadzić potajemne skanowanie w poszukiwaniu sieci i zidentyfikować wszystkie hosty, usługi i poświadczenia w postaci zwykłego tekstu.
Aby uruchomić ten MetaModule, kliknij plik Launchna ekranie głównym. Wyświetli następujący ekran.
Wybierz Network interface(Na ogół są wykrywane automatycznie). KliknijFilters. Następnie sprawdź wszystkie protokoły, które chcesz monitorować. W tym przypadku sprawdziliśmy tylko HTTP.
Pojawi się następujący ekran z przechwyconymi danymi i pakietami. Jeśli zostanie znaleziony dowolny adres IP lub poświadczenie, zostaną one również wyświetlone.
Inżynierię społeczną można ogólnie zdefiniować jako proces wydobywania poufnych informacji (takich jak nazwy użytkowników i hasła) przy użyciu sztuczek. Hakerzy czasami wykorzystują w tym celu fałszywe strony internetowe i ataki phishingowe. Spróbujmy zrozumieć koncepcję ataków socjotechnicznych na kilku przykładach.
Przykład 1
Musiałeś zauważyć stare dokumenty firmy wyrzucane do śmietników jako śmieci. Dokumenty te mogą zawierać poufne informacje, takie jak imiona i nazwiska, numery telefonów, numery kont, numery ubezpieczenia społecznego, adresy itp. Wiele firm nadal używa kalki w swoich faksach, a gdy rolka się skończy, jej węgiel trafia do kosza na śmieci, na którym mogą znajdować się ślady wrażliwych danych. Chociaż brzmi to nieprawdopodobnie, napastnicy mogą łatwo odzyskać informacje z firmowych śmietników, okradając śmieci.
Przykład 2
Atakujący może zaprzyjaźnić się z personelem firmy i nawiązać z nim dobre relacje przez pewien czas. Relację tę można nawiązać online za pośrednictwem sieci społecznościowych, pokojów rozmów lub offline przy stoliku do kawy, na placu zabaw lub w jakikolwiek inny sposób. Atakujący traktuje pracowników biura w tajemnicy i ostatecznie wykopuje wymagane poufne informacje bez podawania wskazówek.
Przykład 3
Inżynier społeczny może udawać pracownika, ważnego użytkownika lub VIP-a, sfałszując dowód osobisty lub po prostu przekonując pracowników o swoim stanowisku w firmie. Taka osoba atakująca może uzyskać fizyczny dostęp do obszarów o ograniczonym dostępie, zapewniając w ten sposób dalsze możliwości ataków.
Przykład 4
W większości przypadków zdarza się, że osoba atakująca może znajdować się w pobliżu Ciebie i może to zrobić shoulder surfing podczas wpisywania poufnych informacji, takich jak identyfikator użytkownika i hasło, kod PIN do konta itp.
Atak socjotechniczny w Metasploit
W tej sekcji omówimy, w jaki sposób można zainicjować atak inżynierii społecznej za pomocą Metasploit.
Przede wszystkim przejdź do strony głównej Metasploit i kliknij Phishing Campaign, jak pokazano na poniższym zrzucie ekranu.
Wpisz nazwę projektu i kliknij Dalej.
Wpisz nazwę kampanii. W naszym przypadku tak jestLab. Następnie kliknijE-mail ikona pod Campaign Components.
Na następnym ekranie musisz podać żądane dane zgodnie z kampanią.
Następnie kliknij Contentikona (numer 2), jeśli chcesz zmienić cokolwiek w treści wiadomości e-mail. Po zmianie treści kliknijSave.
Następnie kliknij Landing Page ikona, aby ustawić adresy URL, pod które chcesz przekierować oszukanych użytkowników.
Jak pokazano na poniższym zrzucie ekranu, wprowadź adres URL pod adresem Path i kliknij Next.
Na następnym ekranie kliknij przycisk Clone Websiteco otworzy kolejne okno. Tutaj musisz wprowadzić witrynę, którą chcesz sklonować. Jak widać na poniższym zrzucie ekranu, weszliśmytutorialpoint.comw tej dziedzinie. Następnie kliknijClone i zapisz zmiany.
Następnie kliknij Redirect Page przycisk.
Kliknij Next a zobaczysz następujący ekran.
Możesz kliknąć Clone Website przycisk, aby ponownie sklonować przekierowaną witrynę.
Następnie w Server Configuration kliknij plik E-mail Server przycisk.
Na następnym ekranie wprowadź mailserver settingsktóry będzie używany jako przekaźnik do wysyłania tej wiadomości phishingowej. Następnie kliknijSave.
w Notifications sekcja, istnieje opcja Notify others before launching the campaign. Możesz skorzystać z tej opcji, aby powiadomić innych. Następnie kliknijSave.
Następnie zobaczysz nowe okno. Tutaj musisz kliknąćStart przycisk, aby zainicjować proces wysyłania wiadomości phishingowych.
Metasploit oferuje opcje generowania raportów statystycznych dotyczących kampanii phishingowej. Pojawi się tak, jak pokazano na poniższym zrzucie ekranu.
W tym rozdziale zobaczymy, jak wyeksportować dane, które w pewnym sensie są kopią zapasową Twoich projektów. Później możesz zaimportować tę kopię zapasową do innego projektu Metasploit.
Ta funkcja „Eksportuj dane” jest dostępna zarówno w wersji bezpłatnej, jak iw wersji komercyjnej Metasploit.
Jeśli chcesz wyeksportować dane z Metasploit Pro, zapisze kopię pliku w lokalizacji „/ ścieżka / do / Metasploit / apps / pro / export”.
Pliki przechowywane w tym katalogu będą zgodne z listą eksportów wyświetlaną w interfejsie internetowym. Dziennik eksportu można znaleźć i wyświetlić w następującym katalogu: „/ path / to / Metasploit / apps / pro / ui / log”. Dziennik eksportu nosi nazwę „exports.log”.
Aby wyczyścić dziennik eksportu, musisz usunąć go z katalogu dziennika, który znajduje się w „/ path / to / Metasploit / apps / pro / ui / log”.
Eksportowanie danych w Metasploit Pro
Aby wyeksportować dane, go to Home → Project Name → Exports → Export Data.
Na następnym ekranie możesz wybrać plik file format w którym chcesz przechowywać dane eksportu.
PWDump- Plik tekstowy zawierający wszystkie poświadczenia projektu, w tym hasła w postaci zwykłego tekstu, skróty SMB i klucze SSH. Poświadczenia można zamaskować, aby wyliczyć tylko nazwy użytkowników.
Replay script- Plik wsadowy, który ponownie uruchamia zadania, które otwierały sesje na hostach docelowych. Skrypt odtwarzania składa się z wielu plików zasobów (.rc).
XML - Plik XML zawierający atrybuty większości obiektów w projekcie, który można zaimportować do innego projektu.
ZIP Workplace - Plik ZIP zawierający eksport XML i wszelkie pliki łupów, pliki raportów i dzienniki zadań.
W Export Typewprowadź nazwę pliku dla danych eksportu. Następnie o godzAddress Settingswprowadź adresy IP hostów.
Następnie w Options możesz ukryć swoje poświadczenia, klikając pole wyboru Mask Credentials. Następnie kliknij przyciskExport Data.
Zostanie wyświetlony następujący ekran, na którym można zobaczyć wyeksportowany plik.
Kliknij Download aby pobrać wyeksportowany plik.
Metasploit ma wbudowane opcje, których możesz użyć do generowania raportów podsumowujących wszystkie działania i wyniki. W tym rozdziale omówimy sposób generowania raportów w Metasploit.
Aby utworzyć raporty w Metasploit, wykonaj kroki podane poniżej -
Step 1 - Przejdź do strony głównej → Raporty → Nowy raport.
Step 2- Wybierz typ raportu zgodnie ze swoimi potrzebami. Jeśli klikniesz „?” ikona, pokaże Ci informacje o każdym typie raportu.
Step 3 - W Name podaj nazwę pliku.
Step 4 - W Sections Sprawdź opcje zgodnie z wymaganiami.
Step 5 - Podobnie w polu Opcje zaznacz opcje zgodnie z wymaganiami.
Step 6 - W Email Report możesz wprowadzić identyfikatory e-mail odbiorców, do których chcesz wysłać raport bezpośrednio.
Step 7 - Następnie kliknij Generate Report przycisk.
Twój raport został wygenerowany. Następnie, do nas wszystkich Twoich raportów, przejdź doReports → Show Reports.
Możesz wyświetlić swoje raporty, klikając View pod Actions.