Metasploit – podstawy – czym jest i jak z niego korzystać. cz. 1
Spis treści
W mojej książce „Etyczny hacking i testy penetracyjne. Zadbaj o bezpieczeństwo sieci LAN i WLAN” poznałeś sposoby łamania haseł w sieciach bezprzewodowych, dowiedziałeś się jak zdobyć dane, które użytkownik wprowadził do przeglądarki. Man in the Middle jest dość ciekawym sposobem uzyskania informacji, ale aby cokolwiek zrobić, musiałeś być w tej samej sieci. Nawet jak w niej byłeś, to jedyne co mogłeś przechwycić, to dane z przeglądarek. Oczywiście są to ważne informacje, ale czy nie da się więcej? Jeżeli interesuje/ zainteresował Cię ten temat, to nie masz już wyjścia, musisz czytać dalej. W tej serii artykułów pokażę program, dzięki możemy przetestować urządzenie, pod względem zainstalowanego na nim urządzenia.
W materiałach dotyczących narzędzia Metasploit będę wykorzystywał dwie maszyny wirtualne w VirtualBox. Pierwsza z nich to Kali Linux, natomiast druga Metasplitable2. Obie maszyny znajdują się w tej samej sieci nat. Jeśli chcesz wykonać wszystkie poniższe czynności skonfiguruj takie środowisko testowe. Ważne jest aby przed pierwszym uruchomieniem Metasplitable2 dodać ją do sieci NAT. Jest to obraz specjalnie przygotowany do ćwiczeń związanych z łamaniem zabezpieczeń. Nie może być uruchomiony w sieci, z której korzysta się na co dzień.
Czym jest oprogramowanie Metasploit?
Metasploit jest udostępniony całkowicie za darmo i posiada bardzo duży zakres możliwości. Sam w sobie zawiera ogromną bazę exploitów, które w łatwy sposób jesteśmy w stanie wykorzystać do testów. Jednak nie jesteś jedynie ograniczony do zaimplementowanych sposobów. Możesz sam tworzyć własne i dzięki temu narzędziu je wykorzystać.
Jego funkcjonalność nie zamyka się na samych exploitach. Dzięki niemu jesteś w stanie gromadzić dane, szukać luk w sieci. Wielu doświadczonych osób zajmujących się na co dzień bezpieczeństwem uważa ten program za najlepsze narzędzie do tego celu, szczególnie podczas nauki.
Dla mnie jest czymś, co bardzo dobrze wspominam z początku swojej nauki. Do dnia dzisiejszego pamiętam, jak pierwszy raz udało mi się zrobić to, co za chwilę Ci pokażę. Mile wspominam ten dreszczyk emocji, zadowolenia z tego, że się udało.
„KURDE! Ja mam pełny dostęp do tego systemu”, mniej więcej tak było. Natomiast dzisiaj, może już nie tak samo reaguję ponieważ trochę czasu używam Metasploita, ale nadal ta radość z powodzenia jest obecna. Mam nadzieję, że dalszy materiał napełni Cię taką samą pozytywną energią, jaką wywołał we mnie po raz pierwszy i nabierzesz jeszcze większych chęci do nauki.
Jednak jeżeli poczujesz jakiś niedosyt, bo dostępny materiał nie jest dla Ciebie wystarczający, to mogę Ci polecić kurs samych autorów znajdujący się pod adresem: https://www.offensive-security.com/metasploit-unleashed/
Pierwsze uruchomienie
Opisywane oprogramowanie pod względem uruchomienia niczym się nie różni od klasycznego oprogramowania uruchamianego w dystrybucjach Linux. Jak z każdym nowym programem w dystrybucji Linux powinniśmy na początku zapoznać się z jego dziennikiem pomocy, wpisując:
msfconsole --help
Usage: msfconsole [options]
Common options:
-E, --environment ENVIRONMENT Set Rails environment, defaults to RAIL_ENV environment variable or 'production'
Database options:
-M, --migration-path DIRECTORY Specify a directory containing additional DB migrations
-n, --no-database Disable database support
-y, --yaml PATH Specify a YAML file containing database settings
Framework options:
-c FILE Load the specified configuration file
-v, -V, --version Show version
Module options:
--[no-]defer-module-loads Defer module loading unless explicitly asked
-m, --module-path DIRECTORY Load an additional module path
Console options:
-a, --ask Ask before exiting Metasploit or accept 'exit -y'
-H, --history-file FILE Save command history to the specified file
-l, --logger STRING Specify a logger to use (StdoutWithoutTimestamps, TimestampColorlessFlatfile, Flatfile, Stderr, Stdout)
--[no-]readline
-L, --real-readline Use the system Readline library instead of RbReadline
-o, --output FILE Output to the specified file
-p, --plugin PLUGIN Load a plugin on startup
-q, --quiet Do not print the banner on startup
-r, --resource FILE Execute the specified resource file (- for stdin)
-x, --execute-command COMMAND Execute the specified console commands (use ; for multiples)
-h, --help Show this message
Poczytaj trochę na temat opcji, jakie możesz wykorzystać przy uruchomieniu programu. Niektórymi z nich zajmiemy się w kolejnych częściach. Dlaczego nie teraz? Ponieważ Metasploit na samym początku należy poznać od środka. Możliwe, że zastanawiasz się po co kazałem spojrzeć na opcje przy uruchomieniu tego programu? Odpowiedź na to pytanie jest dość prosta. Zawsze powinieneś tak robić korzystając z nowego programu! Dzięki temu bardzo często poznasz, w jaki sposób ułatwić sobie życie na samym początku.
Uruchommy teraz metasplit jako użytkownik konta root:
sudo su
msfconsole
Powinieneś otrzymać informacje tak jak poniżej:

Na samym wstępie jesteś w stanie wyczytać, ile program posiada wbudowanych exploitów oraz payloadów. Wiem… Możesz mieć pewien mętlik w głowie, bo nie wspomniałem jeszcze o tych dwóch pojęciach. Jednak nie martw się, różnice poznasz przy omawianiu poszczególnych luk w późniejszym czasie. Teraz widzisz, jak ogromne możliwości stwarza sam program. Szczególnie, że istnieje jeszcze możliwość tworzenia własnych exploitów i wykorzystania ich za pomocą tego narzędzia. Tworząc własne rozwiązania jesteś w stanie zająć się samą implementacją, a nie myśleć dodatkowo nad stworzeniem narzędzia, które to zautomatyzuje. Niestety w ramach tych kilku artykułów zajmiemy się tylko tymi wbudowanymi exploitami. Myślę, że na sam początek będzie to dla Ciebie również spora dawka wiedzy.
Wyświetlamy wszystkie możliwości konfiguracji programu
Metasploit posiada wbudowane polecenie help, za pomocą którego poznasz wszystkie dostępne w nim możliwości konfiguracji. Wystarczy, że w uruchomionym programie wpiszesz:
help
Pojawi się imponująca lista możliwości tego programu. Niektóre z wymienionych opcji posłużą ustawieniom, niektóre nadają dodatkowe możliwości, a na samym dolne znajdują się przykłady wykorzystania niektórych z poleceń. Szczególnie warto zapoznać się z przykładami. Pomogą lepiej zrozumieć normę korzystania z narzędzia jaką autorzy kierowali się podczas jego tworzenia.

