Kali Linux jest fabrycznie wyposażony we wszystkie narzędzia niezbędne do testów penetracyjnych. Jednym z takich narzędzi jest platforma Metasploit, która umożliwia czerwonym teamom przeprowadzanie rekonesansu, skanowanie, wyliczanie, i wykorzystywać luki w zabezpieczeniach wszystkich typów aplikacji, sieci, serwerów, systemów operacyjnych i platformy.

Mimo że główna funkcjonalność Metasploit skupia się na zadaniach penetracyjnych przed i po eksploatacji, jest ona również pomocna w opracowywaniu exploitów i badaniu podatności.

W tym artykule przedstawiono główne składniki platformy Metasploit. Pokazuje, jak używać modułów Metasploit do skanowania, wyliczania i wykorzystywania luki w bazie danych MySQL hostowanej na komputerze znanym jako Metasploitable 2.

Metasploit to najczęściej używane narzędzie do testów penetracyjnych, które jest preinstalowane w systemie Kali Linux. Głównymi składnikami Metasploit są: msfconsole i oferowane moduły.

Co to jest msfconsole?

msfconsole jest najczęściej używanym interfejsem typu „wszystko w jednym”, który umożliwia dostęp do wszystkich funkcji Metasploit. Posiada wsparcie wiersza poleceń podobne do Linuksa, ponieważ oferuje automatyczne uzupełnianie poleceń, tabulatory i inne skróty bash.

instagram viewer

Jest to główny interfejs, który umożliwia pracę z modułami Metasploit w celu skanowania i przeprowadzania ataku na maszynę docelową.

Metasploit zawiera małe fragmenty kodu, które umożliwiają jego główną funkcjonalność. Jednak przed wyjaśnieniem modułów należy jasno określić następujące powtarzające się pojęcia:

  • Słaby punkt: Jest to wada w projekcie lub kodzie celu, która sprawia, że ​​jest on podatny na eksploatację prowadzącą do ujawnienia poufnych informacji.
  • Wykorzystać: kod, który wykorzystuje znalezioną lukę.
  • Ładunek: Jest to kod, który pomaga osiągnąć cel polegający na wykorzystaniu luki w zabezpieczeniach. Działa wewnątrz systemu docelowego, aby uzyskać dostęp do danych docelowych, na przykład utrzymywanie dostępu za pośrednictwem Meterpretera lub odwróconej powłoki.

Przejdźmy teraz do pięciu głównych modułów Metasploit:

  • Pomocniczy: Moduł pomocniczy zawiera zestaw programów, takich jak fuzzery, skanery i narzędzia do wstrzykiwania SQL do zbierania informacji i głębszego zrozumienia systemu docelowego.
  • Kodery: Kodery szyfrują ładunki/exploity, aby chronić je przed rozwiązaniami antywirusowymi opartymi na sygnaturach. Ponieważ ładunki lub exploity zawierają puste lub złe znaki, istnieje duże prawdopodobieństwo ich wykrycia przez rozwiązanie antywirusowe.
  • Wykorzystać: Jak wspomniano wcześniej, exploit to kod, który wykorzystuje docelowe luki w zabezpieczeniach, aby zapewnić dostęp do systemu za pośrednictwem ładunków.
  • Ładunek: Jak wspomniano wcześniej, ładunki pomagają osiągnąć pożądany cel, jakim jest atakowanie systemu docelowego. Oznacza to, że pomogą one uzyskać interaktywną powłokę lub pomóc w utrzymaniu backdoora, uruchomieniu polecenia lub załadowaniu złośliwego oprogramowania itp. Metasploit oferuje dwa typy ładunków: ładunki bezetapowe i ładunki etapowe.
  • Poczta: Moduł poeksploatacyjny pomoże Ci zebrać dalsze informacje o systemie. Na przykład może pomóc w zrzuceniu skrótów haseł i wyszukaniu poświadczeń użytkownika w celu przesunięcia bocznego lub eskalacji uprawnień.

Możesz użyć następujących poleceń, aby wyświetlić każdy moduł i jego kategorie:

cd /usr/share/metasploit-framework/modules
ls
drzewo -L 1 nazwa-modułu/

Aby rozpocząć korzystanie z interfejsu Metasploit, otwórz terminal Kali Linux i wpisz: msfconsole.

Domyślnie msfconsole otwiera się z banerem; aby to usunąć i uruchomić interfejs w trybie cichym, użyj msfconsole polecenie z -Q flaga.

Interfejs wygląda jak powłoka wiersza poleceń Linuksa. Niektóre obsługiwane polecenia Linux Bash to ls, clear, grep, history, jobs, kill, cd, exit itp.

Rodzaj Wsparcie lub znak zapytania "?", aby zobaczyć listę wszystkich dostępnych poleceń, których możesz użyć w msfconsole. Niektóre z najważniejszych, których użyjemy w tym artykule to:

Komenda Opis
Szukaj Umożliwia wyszukiwanie w bazie danych Metasploit na podstawie podanego protokołu/aplikacji/parametru
posługiwać się Pozwala wybrać konkretny moduł i zmienić kontekst na polecenia specyficzne dla modułu
informacje Zawiera informacje o wybranym module
pokazać Wyświetla informacje o podanej nazwie modułu i opcjach dla bieżącego modułu
sprawdzać Sprawdza, czy system docelowy ma lukę
ustawić Jest to zmienna zależna od kontekstu, która konfiguruje opcje dla bieżącego modułu
nieoprawny Usuwa wcześniej ustawione parametry
uruchomić Wykonuje bieżący moduł

Przed rozpoczęciem skonfiguruj bazę danych Metasploit przez uruchomienie serwera PostgreSQL i zainicjuj bazę danych msfconsole w następujący sposób:

systemctl start postgresql
msfdb init

Teraz sprawdź stan bazy danych, inicjując msfconsole i uruchamiając stan_bazy Komenda.

W celach demonstracyjnych skonfiguruj podatną na ataki maszynę z systemem Linux Metasploitable2.

Rekonesans MySQL z msfconsole

Znaleźć Adres IP maszyny Metasploitable pierwszy. Następnie użyj db_nmap polecenie w msfconsole z flagami Nmap do skanowania bazy danych MySQL w 3306 Port.

db_nmap -sV -sC -p 3306 

Możesz uruchomić zwykły nmap -p- polecenie, aby potwierdzić numer portu bazy danych MySQL.

Związane z: Nmap dla początkujących: zdobądź praktyczne doświadczenie ze skanowaniem portów

Użyj Szukaj możliwość wyszukania modułu pomocniczego do skanowania i enumeracji bazy danych MySQL.

typ wyszukiwania: pomocniczy mysql

Z powyższej listy możesz użyć pomocniczy/skaner/mysql/mysql_version modułu, wpisując nazwę modułu lub powiązany numer, aby przeskanować szczegóły wersji MySQL.

użyj 11

Lub:

użyj pomocniczego/skanera/mysql/mysql_version

Teraz użyj pokaż opcje polecenie do wyświetlenia niezbędnych parametrów wymaganych do wykonania bieżącego modułu:

Dane wyjściowe pokazują, że jedyną wymaganą i nieustawioną opcją jest RHOSTS, która jest adresem IP maszyny docelowej. Użyj ustaw rhosty polecenie, aby ustawić parametr i uruchomić moduł w następujący sposób:

Dane wyjściowe wyświetlają podobne szczegóły wersji MySQL, jak db_nmap funkcjonować.

Bruteforce MySQL Root Account z msfconsole

Po zeskanowaniu możesz również użyć brute force na konto root MySQL za pośrednictwem Metasploit pomocnicze (skaner/mysql/mysql_login) moduł.

Musisz ustawić PASS_FILE parametr do ścieżki listy słów dostępnych w środku /usr/share/wordlists:

ustaw PASS_FILE /usr/share/wordlistss/rockyou.txt

Następnie podaj adres IP komputera docelowego za pomocą polecenia RHOSTS.

ustaw RHOSTS 

Ustawić BLANK_PASSWORDS na true w przypadku, gdy nie ma ustawionego hasła dla konta root.

ustaw BLANK_PASSWORDS na prawdę

Na koniec uruchom moduł, wpisując uruchomić w terminalu.

Wyliczanie MySQL z msfconsole

msfconsole pozwala również na wyliczenie bazy danych za pomocą pomocnicze (admin/mysql/mysql_enum) moduł. Zwraca wszystkie konta ze szczegółami, takimi jak powiązane uprawnienia i skróty haseł.

Aby to zrobić, musisz podać hasło, nazwę użytkownika i zmienną rhosts.

Ustaw hasło ""
ustaw nazwę użytkownika root
ustaw rhosty

Na koniec uruchom moduł, wpisując:

uruchomić

Wykorzystanie MySQL z msfconsole

Z fazy wyliczania jasne jest, że konto root ma uprawnienia do plików, które umożliwiają atakującemu wykonanie Załaduj plik() funkcjonować. Funkcja pozwala na wykorzystanie bazy danych MySQL poprzez wczytanie wszystkich danych z plik /etc/hasło za pośrednictwem pomocniczy(/admin/mysql/mysql_sql) moduł:

Ponownie ustaw nazwę użytkownika, hasło i zmienną rhosts. Następnie wykonaj zapytanie, które wywołuje funkcję load_file() i ładuje /etc/passwd plik.

ustaw sql select load_file(\"/etc/password\")

Moduły Metasploit pomagają we wszystkich fazach testów penetracyjnych. Metasploit umożliwia również użytkownikom tworzenie własnych modułów.

W tym artykule podsumowano niektóre główne moduły platformy Metasploit i pokazano, jak skanować, wyliczać i wykorzystywać bazę danych MySQL na komputerze Metasploitable 2.

Metasploit nie jest jedynym narzędziem do testowania penetracji, którego będziesz używać jako profesjonalista ds. cyberbezpieczeństwa. Istnieje kilka innych narzędzi, z którymi musisz się zapoznać, jeśli chcesz zostać ekspertem ds. bezpieczeństwa.

10 najlepszych narzędzi do testowania penetracji dla specjalistów ds. bezpieczeństwa

Jeśli zastanawiasz się, jak profesjonaliści testują penetrację, ten przewodnik pomoże ci.

Czytaj dalej

UdziałĆwierkaćE-mail
Powiązane tematy
  • Linux
  • Etyczne hakowanie
  • Hakerstwo
  • Aplikacje na Linuksa
O autorze
Rumaisa Niazi (11 opublikowanych artykułów)

Rumaisa jest niezależnym pisarzem w MUO. Nosiła wiele kapeluszy, od matematyka po entuzjastę bezpieczeństwa informacji, a teraz pracuje jako analityk SOC. Jej zainteresowania obejmują czytanie i pisanie o nowych technologiach, dystrybucjach Linuksa i wszystkim, co dotyczy bezpieczeństwa informacji.

Więcej od Rumaisy Niazi

Zapisz się do naszego newslettera

Dołącz do naszego newslettera, aby otrzymywać porady techniczne, recenzje, bezpłatne e-booki i ekskluzywne oferty!

Kliknij tutaj, aby zasubskrybować